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 { 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 = {
cliServer: CodeQLCliServer;
queryRunner: QueryRunner;

View File

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