Skip to content

Commit a0f37e6

Browse files
committed
Rename 'open database' button and only show if source available
1 parent bb88c14 commit a0f37e6

7 files changed

Lines changed: 18 additions & 4 deletions

File tree

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

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import {
55
Uri,
66
ViewColumn,
77
window,
8+
workspace,
89
} from "vscode";
910
import {
1011
AbstractWebview,
@@ -353,6 +354,11 @@ export class ModelEditorView extends AbstractWebview<
353354
const showLlmButton =
354355
this.databaseItem.language === "java" && this.modelConfig.llmGeneration;
355356

357+
const sourceArchiveAvailable = workspace.workspaceFolders?.some(
358+
(f) =>
359+
f.uri.fsPath === this.databaseItem.getSourceArchiveExplorerUri().fsPath,
360+
);
361+
356362
await this.postMessage({
357363
t: "setModelEditorViewState",
358364
viewState: {
@@ -361,6 +367,7 @@ export class ModelEditorView extends AbstractWebview<
361367
showLlmButton,
362368
showMultipleModels: this.modelConfig.showMultipleModels,
363369
mode: this.mode,
370+
sourceArchiveAvailable: !!sourceArchiveAvailable,
364371
},
365372
});
366373
}

extensions/ql-vscode/src/model-editor/shared/view-state.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ export interface ModelEditorViewState {
77
showLlmButton: boolean;
88
showMultipleModels: boolean;
99
mode: Mode;
10+
sourceArchiveAvailable: boolean;
1011
}
1112

1213
export interface MethodModelingPanelViewState {

extensions/ql-vscode/src/view/model-editor/ModelEditor.tsx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -282,10 +282,12 @@ export function ModelEditor({
282282
<>{viewState.extensionPack.name}</>
283283
</HeaderRow>
284284
<HeaderRow>
285-
<LinkIconButton onClick={onOpenDatabaseClick}>
286-
<span slot="start" className="codicon codicon-package"></span>
287-
Open database
288-
</LinkIconButton>
285+
{viewState.sourceArchiveAvailable && (
286+
<LinkIconButton onClick={onOpenDatabaseClick}>
287+
<span slot="start" className="codicon codicon-package"></span>
288+
Open source
289+
</LinkIconButton>
290+
)}
289291
<LinkIconButton onClick={onOpenExtensionPackClick}>
290292
<span slot="start" className="codicon codicon-package"></span>
291293
Open extension pack

extensions/ql-vscode/src/view/model-editor/__tests__/LibraryRow.spec.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ describe(LibraryRow.name, () => {
2222
showLlmButton: false,
2323
showMultipleModels: false,
2424
extensionPack: createMockExtensionPack(),
25+
sourceArchiveAvailable: true,
2526
};
2627

2728
const render = (props: Partial<LibraryRowProps> = {}) =>

extensions/ql-vscode/src/view/model-editor/__tests__/MethodRow.spec.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ describe(MethodRow.name, () => {
3939
showLlmButton: false,
4040
showMultipleModels: false,
4141
extensionPack: createMockExtensionPack(),
42+
sourceArchiveAvailable: true,
4243
};
4344

4445
const render = (props: Partial<MethodRowProps> = {}) =>

extensions/ql-vscode/src/view/model-editor/__tests__/ModeledMethodDataGrid.spec.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ describe(ModeledMethodDataGrid.name, () => {
4949
showLlmButton: false,
5050
showMultipleModels: false,
5151
extensionPack: createMockExtensionPack(),
52+
sourceArchiveAvailable: true,
5253
};
5354

5455
const render = (props: Partial<ModeledMethodDataGridProps> = {}) =>

extensions/ql-vscode/src/view/model-editor/__tests__/ModeledMethodsList.spec.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ describe(ModeledMethodsList.name, () => {
5050
showLlmButton: false,
5151
showMultipleModels: false,
5252
extensionPack: createMockExtensionPack(),
53+
sourceArchiveAvailable: true,
5354
};
5455

5556
const render = (props: Partial<ModeledMethodsListProps> = {}) =>

0 commit comments

Comments
 (0)