data workspace extension batch 2 (#12208)

* work in progress

* load projects in view and test cases

* update scope

* make the sql proj menu available in workspace view

* add extension unit test

* address comments

* fix errors
This commit is contained in:
Alan Ren
2020-09-10 17:17:57 -07:00
committed by GitHub
parent cd8102535b
commit 7df132b307
20 changed files with 645 additions and 32 deletions

View File

@@ -16,7 +16,8 @@
"onCommand:sqlDatabaseProjects.new",
"onCommand:sqlDatabaseProjects.open",
"onCommand:sqlDatabaseProjects.importDatabase",
"workspaceContains:**/*.sqlproj"
"workspaceContains:**/*.sqlproj",
"onView:dataworkspace.views.main"
],
"main": "./out/extension",
"repository": {
@@ -25,9 +26,13 @@
},
"extensionDependencies": [
"Microsoft.mssql",
"Microsoft.schema-compare"
"Microsoft.schema-compare",
"Microsoft.data-workspace"
],
"contributes": {
"projects": [
"sqlproj"
],
"configuration": [
{
"title": "%sqlDatabaseProjects.Settings%",
@@ -138,7 +143,7 @@
"command": "sqlDatabaseProjects.importDatabase",
"title": "%sqlDatabaseProjects.importDatabase%",
"category": "%sqlDatabaseProjects.displayName%",
"icon": "images/databaseProjectToolbar.svg"
"icon": "images/databaseProjectToolbar.svg"
},
{
"command": "sqlDatabaseProjects.addDatabaseReference",
@@ -243,87 +248,87 @@
"view/item/context": [
{
"command": "sqlDatabaseProjects.build",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.project",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.project",
"group": "1_dbProjectsFirst@1"
},
{
"command": "sqlDatabaseProjects.publish",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.project",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.project",
"group": "1_dbProjectsFirst@2"
},
{
"command": "sqlDatabaseProjects.schemaCompare",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.project",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.project",
"group": "1_dbProjectsFirst@3"
},
{
"command": "sqlDatabaseProjects.newItem",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"group": "2_dbProjects_newMain@1"
},
{
"command": "sqlDatabaseProjects.newFolder",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"group": "2_dbProjects_newMain@2"
},
{
"command": "sqlDatabaseProjects.newTable",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"group": "3_dbProjects_newItem@1"
},
{
"command": "sqlDatabaseProjects.newView",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"group": "3_dbProjects_newItem@2"
},
{
"command": "sqlDatabaseProjects.newStoredProcedure",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"group": "3_dbProjects_newItem@3"
},
{
"command": "sqlDatabaseProjects.newScript",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"group": "3_dbProjects_newItem@7"
},
{
"command": "sqlDatabaseProjects.newPreDeploymentScript",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"group": "3_dbProjects_newItem@8"
},
{
"command": "sqlDatabaseProjects.newPostDeploymentScript",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.project || viewItem == databaseProject.itemType.folder",
"group": "3_dbProjects_newItem@9"
},
{
"command": "sqlDatabaseProjects.addDatabaseReference",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.referencesRoot",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.referencesRoot",
"group": "4_dbProjects_addDatabaseReference"
},
{
"command": "sqlDatabaseProjects.exclude",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.folder || viewItem == databaseProject.itemType.file",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.folder || viewItem == databaseProject.itemType.file",
"group": "9_dbProjectsLast@1"
},
{
"command": "sqlDatabaseProjects.delete",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.folder || viewItem == databaseProject.itemType.file",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.folder || viewItem == databaseProject.itemType.file",
"group": "9_dbProjectsLast@2"
},
{
"command": "sqlDatabaseProjects.editProjectFile",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.project",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.project",
"group": "9_dbProjectsLast@7"
},
{
"command": "sqlDatabaseProjects.openContainingFolder",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.project",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.project",
"group": "9_dbProjectsLast@8"
},
{
"command": "sqlDatabaseProjects.close",
"when": "view == sqlDatabaseProjectsView && viewItem == databaseProject.itemType.project",
"when": "view =~ /^(sqlDatabaseProjectsView|dataworkspace.views.main)$/ && viewItem == databaseProject.itemType.project",
"group": "9_dbProjectsLast@9"
}
],
@@ -339,7 +344,6 @@
"group": "export"
}
],
"dataExplorer/context": [
{
"command": "sqlDatabaseProjects.importDatabase",
@@ -354,8 +358,8 @@
],
"dashboard/toolbar": [
{
"command": "sqlDatabaseProjects.importDatabase",
"when": "connectionProvider == 'MSSQL' && mssql:engineedition != 11"
"command": "sqlDatabaseProjects.importDatabase",
"when": "connectionProvider == 'MSSQL' && mssql:engineedition != 11"
}
]
},