diff --git a/extensions/dacpac/images/folder.svg b/extensions/dacpac/images/folder.svg
new file mode 100644
index 0000000000..62d542038f
--- /dev/null
+++ b/extensions/dacpac/images/folder.svg
@@ -0,0 +1,3 @@
+
diff --git a/extensions/dacpac/src/extension.ts b/extensions/dacpac/src/extension.ts
index a50d81cb63..c66cffec83 100644
--- a/extensions/dacpac/src/extension.ts
+++ b/extensions/dacpac/src/extension.ts
@@ -8,7 +8,7 @@ import * as vscode from 'vscode';
import { DataTierApplicationWizard } from './wizard/dataTierApplicationWizard';
export async function activate(context: vscode.ExtensionContext) {
- vscode.commands.registerCommand('dacFx.start', (profile: azdata.IConnectionProfile, ...args: any[]) => new DataTierApplicationWizard().start(profile, args));
+ vscode.commands.registerCommand('dacFx.start', (profile: azdata.IConnectionProfile) => new DataTierApplicationWizard(undefined, context).start(profile));
}
export function deactivate(): void {
diff --git a/extensions/dacpac/src/test/testContext.ts b/extensions/dacpac/src/test/testContext.ts
index 1dbe2e0b56..635ec4f793 100644
--- a/extensions/dacpac/src/test/testContext.ts
+++ b/extensions/dacpac/src/test/testContext.ts
@@ -118,15 +118,13 @@ export function createViewContext(): ViewTestContext {
let buttonBuilder: azdata.ComponentBuilder = {
component: () => button,
withProperties: (properties: any) => {
- if ((properties as any).label === '•••') {
- button.label = '•••';
+ if ((properties as any).title === loc.selectFile) {
button.onDidClick = fileButtonOnClick.event;
}
return buttonBuilder;
},
withProps: (properties) => {
- if ((properties as any).label === '•••') {
- button.label = '•••';
+ if ((properties as any).title === loc.selectFile) {
button.onDidClick = fileButtonOnClick.event;
}
return buttonBuilder;
diff --git a/extensions/dacpac/src/wizard/api/dacFxConfigPage.ts b/extensions/dacpac/src/wizard/api/dacFxConfigPage.ts
index f9e0f45ee3..5c11e34f9c 100644
--- a/extensions/dacpac/src/wizard/api/dacFxConfigPage.ts
+++ b/extensions/dacpac/src/wizard/api/dacFxConfigPage.ts
@@ -182,10 +182,9 @@ export abstract class DacFxConfigPage extends BasePage {
this.fileTextBox.ariaLabel = loc.fileLocation;
this.fileButton = this.view.modelBuilder.button().withProps({
- label: '•••',
title: loc.selectFile,
ariaLabel: loc.selectFile,
- secondary: true
+ iconPath: path.join(this.instance.extensionContextExtensionPath, 'images', 'folder.svg'),
}).component();
}
diff --git a/extensions/dacpac/src/wizard/dataTierApplicationWizard.ts b/extensions/dacpac/src/wizard/dataTierApplicationWizard.ts
index 3413ebdb1a..c341e8b96d 100644
--- a/extensions/dacpac/src/wizard/dataTierApplicationWizard.ts
+++ b/extensions/dacpac/src/wizard/dataTierApplicationWizard.ts
@@ -85,13 +85,15 @@ export class DataTierApplicationWizard {
public model: DacFxDataModel;
public pages: Map = new Map();
public selectedOperation: Operation;
+ public extensionContextExtensionPath: string;
- constructor(dacfxInputService?: mssql.IDacFxService) {
+ constructor(dacfxInputService?: mssql.IDacFxService, extensionContext?: vscode.ExtensionContext) {
this.wizard = azdata.window.createWizard(loc.wizardTitle, 'Data Tier Application Wizard');
this.dacfxService = dacfxInputService;
+ this.extensionContextExtensionPath = extensionContext?.extensionPath ?? '';
}
- public async start(p: any, ...args: any[]): Promise {
+ public async start(p: any): Promise {
this.model = {};
let profile = p ? p.connectionProfile : undefined;