Skip to content

Commit 16d5f0f

Browse files
Add DatabaseItem to model details panel state
1 parent 9466070 commit 16d5f0f

File tree

4 files changed

+21
-7
lines changed

4 files changed

+21
-7
lines changed

extensions/ql-vscode/src/data-extensions-editor/data-extensions-editor-module.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ export class DataExtensionsEditorModule extends DisposableObject {
147147
db,
148148
modelFile,
149149
Mode.Application,
150-
(usages) => this.modelDetailsPanel.setExternalApiUsages(usages),
150+
this.modelDetailsPanel.setState.bind(this.modelDetailsPanel),
151151
);
152152
await view.openView();
153153
},

extensions/ql-vscode/src/data-extensions-editor/data-extensions-editor-view.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,8 +77,9 @@ export class DataExtensionsEditorView extends AbstractWebview<
7777
private readonly databaseItem: DatabaseItem,
7878
private readonly extensionPack: ExtensionPack,
7979
private mode: Mode,
80-
private readonly onExternalApiUsagesChanged: (
80+
private readonly updateModelDetailsPanelState: (
8181
externalApiUsages: ExternalApiUsage[],
82+
databaseItem: DatabaseItem,
8283
) => void,
8384
) {
8485
super(ctx);
@@ -296,7 +297,10 @@ export class DataExtensionsEditorView extends AbstractWebview<
296297
t: "setExternalApiUsages",
297298
externalApiUsages,
298299
});
299-
this.onExternalApiUsagesChanged(externalApiUsages);
300+
this.updateModelDetailsPanelState(
301+
externalApiUsages,
302+
this.databaseItem,
303+
);
300304
} catch (err) {
301305
void showAndLogExceptionWithTelemetry(
302306
this.app.logger,
@@ -578,7 +582,7 @@ export class DataExtensionsEditorView extends AbstractWebview<
578582
addedDatabase,
579583
modelFile,
580584
Mode.Framework,
581-
this.onExternalApiUsagesChanged,
585+
this.updateModelDetailsPanelState,
582586
);
583587
await view.openView();
584588
});

extensions/ql-vscode/src/data-extensions-editor/model-details/model-details-data-provider.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,14 @@ import {
77
} from "vscode";
88
import { DisposableObject } from "../../common/disposable-object";
99
import { ExternalApiUsage, Usage } from "../external-api-usage";
10+
import { DatabaseItem } from "../../databases/local-databases";
1011

1112
export class ModelDetailsDataProvider
1213
extends DisposableObject
1314
implements TreeDataProvider<ModelDetailsTreeViewItem>
1415
{
1516
private externalApiUsages: ExternalApiUsage[] = [];
17+
private databaseItem: DatabaseItem | undefined = undefined;
1618

1719
private readonly onDidChangeTreeDataEmitter = this.push(
1820
new EventEmitter<void>(),
@@ -22,8 +24,12 @@ export class ModelDetailsDataProvider
2224
return this.onDidChangeTreeDataEmitter.event;
2325
}
2426

25-
public setExternalApiUsages(externalApiUsages: ExternalApiUsage[]): void {
27+
public setState(
28+
externalApiUsages: ExternalApiUsage[],
29+
databaseItem: DatabaseItem,
30+
): void {
2631
this.externalApiUsages = externalApiUsages;
32+
this.databaseItem = databaseItem;
2733
this.onDidChangeTreeDataEmitter.fire();
2834
}
2935

extensions/ql-vscode/src/data-extensions-editor/model-details/model-details-panel.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import { window } from "vscode";
22
import { DisposableObject } from "../../common/disposable-object";
33
import { ModelDetailsDataProvider } from "./model-details-data-provider";
44
import { ExternalApiUsage } from "../external-api-usage";
5+
import { DatabaseItem } from "../../databases/local-databases";
56

67
export class ModelDetailsPanel extends DisposableObject {
78
private readonly dataProvider: ModelDetailsDataProvider;
@@ -17,7 +18,10 @@ export class ModelDetailsPanel extends DisposableObject {
1718
this.push(treeView);
1819
}
1920

20-
public setExternalApiUsages(externalApiUsages: ExternalApiUsage[]): void {
21-
this.dataProvider.setExternalApiUsages(externalApiUsages);
21+
public setState(
22+
externalApiUsages: ExternalApiUsage[],
23+
databaseItem: DatabaseItem,
24+
): void {
25+
this.dataProvider.setState(externalApiUsages, databaseItem);
2226
}
2327
}

0 commit comments

Comments
 (0)