Only show flow generation button when supported

This commit is contained in:
Koen Vlaswinkel
2023-10-25 16:41:15 +02:00
parent 1404ab45fb
commit 05e3f2cba6
2 changed files with 20 additions and 2 deletions

View File

@@ -15,6 +15,17 @@ import { runQuery } from "../local-queries/run-query";
import { resolveQueries } from "../local-queries"; import { resolveQueries } from "../local-queries";
import { QueryLanguage } from "../common/query-language"; import { QueryLanguage } from "../common/query-language";
const FLOW_MODEL_SUPPORTED_LANGUAGES = [
QueryLanguage.CSharp,
QueryLanguage.Java,
];
export function isFlowModelGenerationSupported(
language: QueryLanguage,
): boolean {
return FLOW_MODEL_SUPPORTED_LANGUAGES.includes(language);
}
type FlowModelOptions = { type FlowModelOptions = {
cliServer: CodeQLCliServer; cliServer: CodeQLCliServer;
queryRunner: QueryRunner; queryRunner: QueryRunner;

View File

@@ -23,7 +23,10 @@ import {
import { DatabaseItem, DatabaseManager } from "../databases/local-databases"; import { DatabaseItem, DatabaseManager } from "../databases/local-databases";
import { CodeQLCliServer } from "../codeql-cli/cli"; import { CodeQLCliServer } from "../codeql-cli/cli";
import { asError, assertNever, getErrorMessage } from "../common/helpers-pure"; import { asError, assertNever, getErrorMessage } from "../common/helpers-pure";
import { runFlowModelQueries } from "./flow-model-queries"; import {
isFlowModelGenerationSupported,
runFlowModelQueries,
} from "./flow-model-queries";
import { promptImportGithubDatabase } from "../databases/database-fetcher"; import { promptImportGithubDatabase } from "../databases/database-fetcher";
import { App } from "../common/app"; import { App } from "../common/app";
import { redactableError } from "../common/errors"; import { redactableError } from "../common/errors";
@@ -363,6 +366,10 @@ export class ModelEditorView extends AbstractWebview<
} }
private async setViewState(): Promise<void> { private async setViewState(): Promise<void> {
const showFlowGeneration =
this.modelConfig.flowGeneration &&
isFlowModelGenerationSupported(this.language);
const showLlmButton = const showLlmButton =
this.databaseItem.language === "java" && this.modelConfig.llmGeneration; this.databaseItem.language === "java" && this.modelConfig.llmGeneration;
@@ -374,7 +381,7 @@ export class ModelEditorView extends AbstractWebview<
viewState: { viewState: {
extensionPack: this.extensionPack, extensionPack: this.extensionPack,
language: this.language, language: this.language,
showFlowGeneration: this.modelConfig.flowGeneration, showFlowGeneration,
showLlmButton, showLlmButton,
showMultipleModels: this.modelConfig.showMultipleModels, showMultipleModels: this.modelConfig.showMultipleModels,
mode: this.modelingStore.getMode(this.databaseItem), mode: this.modelingStore.getMode(this.databaseItem),