mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-17 02:51:36 -05:00
Notebooks: Improvements to Connection Profile Passing (#8105)
* Fix relative images on notebook markdown pc * PR feedback around replace ordering * update databaseName when it's set to master * usinng query as example
This commit is contained in:
@@ -70,7 +70,7 @@ CommandsRegistry.registerCommand({
|
|||||||
handler: (accessor, args: TreeViewItemHandleArg) => {
|
handler: (accessor, args: TreeViewItemHandleArg) => {
|
||||||
const instantiationService = accessor.get(IInstantiationService);
|
const instantiationService = accessor.get(IInstantiationService);
|
||||||
const connectedContext: ConnectedContext = { connectionProfile: args.$treeItem.payload };
|
const connectedContext: ConnectedContext = { connectionProfile: args.$treeItem.payload };
|
||||||
return instantiationService.createInstance(NewNotebookAction, NewNotebookAction.ID, NewNotebookAction.LABEL).run(connectedContext);
|
return instantiationService.createInstance(NewNotebookAction, NewNotebookAction.ID, NewNotebookAction.LABEL).run({ connectionProfile: connectedContext.connectionProfile, isConnectionNode: false, nodeInfo: undefined });
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -91,10 +91,9 @@ const OE_NEW_NOTEBOOK_COMMAND_ID = 'objectExplorer.newNotebook';
|
|||||||
// New Notebook
|
// New Notebook
|
||||||
CommandsRegistry.registerCommand({
|
CommandsRegistry.registerCommand({
|
||||||
id: OE_NEW_NOTEBOOK_COMMAND_ID,
|
id: OE_NEW_NOTEBOOK_COMMAND_ID,
|
||||||
handler: (accessor, args: ObjectExplorerActionsContext) => {
|
handler: (accessor, actionContext: ObjectExplorerActionsContext) => {
|
||||||
const instantiationService = accessor.get(IInstantiationService);
|
const instantiationService = accessor.get(IInstantiationService);
|
||||||
const connectedContext: ConnectedContext = { connectionProfile: args.connectionProfile };
|
return instantiationService.createInstance(NewNotebookAction, NewNotebookAction.ID, NewNotebookAction.LABEL).run(actionContext);
|
||||||
return instantiationService.createInstance(NewNotebookAction, NewNotebookAction.ID, NewNotebookAction.LABEL).run(connectedContext);
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -112,7 +111,7 @@ const ExplorerNotebookActionID = 'explorer.notebook';
|
|||||||
CommandsRegistry.registerCommand(ExplorerNotebookActionID, (accessor, context: ManageActionContext) => {
|
CommandsRegistry.registerCommand(ExplorerNotebookActionID, (accessor, context: ManageActionContext) => {
|
||||||
const instantiationService = accessor.get(IInstantiationService);
|
const instantiationService = accessor.get(IInstantiationService);
|
||||||
const connectedContext: ConnectedContext = { connectionProfile: context.profile };
|
const connectedContext: ConnectedContext = { connectionProfile: context.profile };
|
||||||
instantiationService.createInstance(NewNotebookAction, NewNotebookAction.ID, NewNotebookAction.LABEL).run(connectedContext);
|
instantiationService.createInstance(NewNotebookAction, NewNotebookAction.ID, NewNotebookAction.LABEL).run({ connectionProfile: connectedContext.connectionProfile, isConnectionNode: false, nodeInfo: undefined });
|
||||||
});
|
});
|
||||||
|
|
||||||
MenuRegistry.appendMenuItem(MenuId.ExplorerWidgetContext, {
|
MenuRegistry.appendMenuItem(MenuId.ExplorerWidgetContext, {
|
||||||
|
|||||||
@@ -25,6 +25,8 @@ import { CellType } from 'sql/workbench/parts/notebook/common/models/contracts';
|
|||||||
import { NotebookComponent } from 'sql/workbench/parts/notebook/browser/notebook.component';
|
import { NotebookComponent } from 'sql/workbench/parts/notebook/browser/notebook.component';
|
||||||
import { getErrorMessage } from 'vs/base/common/errors';
|
import { getErrorMessage } from 'vs/base/common/errors';
|
||||||
import { INotebookModel } from 'sql/workbench/parts/notebook/browser/models/modelInterfaces';
|
import { INotebookModel } from 'sql/workbench/parts/notebook/browser/models/modelInterfaces';
|
||||||
|
import { IObjectExplorerService } from 'sql/workbench/services/objectExplorer/browser/objectExplorerService';
|
||||||
|
import { TreeUpdateUtils } from 'sql/workbench/parts/objectExplorer/browser/treeUpdateUtils';
|
||||||
|
|
||||||
const msgLoading = localize('loading', "Loading kernels...");
|
const msgLoading = localize('loading', "Loading kernels...");
|
||||||
const msgChanging = localize('changing', "Changing kernel...");
|
const msgChanging = localize('changing', "Changing kernel...");
|
||||||
@@ -591,14 +593,22 @@ export class NewNotebookAction extends Action {
|
|||||||
constructor(
|
constructor(
|
||||||
id: string,
|
id: string,
|
||||||
label: string,
|
label: string,
|
||||||
@ICommandService private commandService: ICommandService
|
@ICommandService private commandService: ICommandService,
|
||||||
|
@IObjectExplorerService private objectExplorerService: IObjectExplorerService
|
||||||
) {
|
) {
|
||||||
super(id, label);
|
super(id, label);
|
||||||
this.class = 'notebook-action new-notebook';
|
this.class = 'notebook-action new-notebook';
|
||||||
}
|
}
|
||||||
|
|
||||||
run(context?: azdata.ConnectedContext): Promise<void> {
|
async run(context?: azdata.ObjectExplorerContext): Promise<void> {
|
||||||
return this.commandService.executeCommand(NewNotebookAction.INTERNAL_NEW_NOTEBOOK_CMD_ID, context);
|
let connProfile: azdata.IConnectionProfile;
|
||||||
|
if (context && context.nodeInfo) {
|
||||||
|
let node = await this.objectExplorerService.getTreeNode(context.connectionProfile.id, context.nodeInfo.nodePath);
|
||||||
|
connProfile = TreeUpdateUtils.getConnectionProfile(node).toIConnectionProfile();
|
||||||
|
} else if (context && context.connectionProfile) {
|
||||||
|
connProfile = context.connectionProfile;
|
||||||
|
}
|
||||||
|
return this.commandService.executeCommand(NewNotebookAction.INTERNAL_NEW_NOTEBOOK_CMD_ID, { connectionProfile: connProfile });
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user