Update title in Data extensions editor tab (#2625)
This commit is contained in:
@@ -9,6 +9,29 @@ export enum QueryLanguage {
|
||||
Swift = "swift",
|
||||
}
|
||||
|
||||
export function getLanguageDisplayName(language: string): string {
|
||||
switch (language) {
|
||||
case QueryLanguage.CSharp:
|
||||
return "C#";
|
||||
case QueryLanguage.Cpp:
|
||||
return "C / C++";
|
||||
case QueryLanguage.Go:
|
||||
return "Go";
|
||||
case QueryLanguage.Java:
|
||||
return "Java";
|
||||
case QueryLanguage.Javascript:
|
||||
return "JavaScript";
|
||||
case QueryLanguage.Python:
|
||||
return "Python";
|
||||
case QueryLanguage.Ruby:
|
||||
return "Ruby";
|
||||
case QueryLanguage.Swift:
|
||||
return "Swift";
|
||||
default:
|
||||
return language;
|
||||
}
|
||||
}
|
||||
|
||||
export const PACKS_BY_QUERY_LANGUAGE = {
|
||||
[QueryLanguage.Cpp]: ["codeql/cpp-queries"],
|
||||
[QueryLanguage.CSharp]: [
|
||||
|
||||
@@ -49,6 +49,7 @@ import { Mode } from "./shared/mode";
|
||||
import { loadModeledMethods, saveModeledMethods } from "./modeled-method-fs";
|
||||
import { join } from "path";
|
||||
import { pickExtensionPack } from "./extension-pack-picker";
|
||||
import { getLanguageDisplayName } from "../common/query-language";
|
||||
|
||||
export class DataExtensionsEditorView extends AbstractWebview<
|
||||
ToDataExtensionsEditorMessage,
|
||||
@@ -78,7 +79,9 @@ export class DataExtensionsEditorView extends AbstractWebview<
|
||||
protected async getPanelConfig(): Promise<WebviewPanelConfig> {
|
||||
return {
|
||||
viewId: "data-extensions-editor",
|
||||
title: "Data Extensions Editor",
|
||||
title: `Modeling ${getLanguageDisplayName(
|
||||
this.extensionPack.language,
|
||||
)} (${this.extensionPack.name})`,
|
||||
viewColumn: ViewColumn.Active,
|
||||
preserveFocus: true,
|
||||
view: "data-extensions-editor",
|
||||
|
||||
@@ -88,7 +88,7 @@ export async function pickExtensionPack(
|
||||
|
||||
let extensionPack: ExtensionPack;
|
||||
try {
|
||||
extensionPack = await readExtensionPack(path);
|
||||
extensionPack = await readExtensionPack(path, databaseItem.language);
|
||||
} catch (e: unknown) {
|
||||
void showAndLogErrorMessage(
|
||||
logger,
|
||||
@@ -253,7 +253,10 @@ async function autoCreateExtensionPack(
|
||||
if (existingExtensionPackPaths?.length === 1) {
|
||||
let extensionPack: ExtensionPack;
|
||||
try {
|
||||
extensionPack = await readExtensionPack(existingExtensionPackPaths[0]);
|
||||
extensionPack = await readExtensionPack(
|
||||
existingExtensionPackPaths[0],
|
||||
language,
|
||||
);
|
||||
} catch (e: unknown) {
|
||||
void showAndLogErrorMessage(
|
||||
logger,
|
||||
@@ -317,6 +320,7 @@ async function writeExtensionPack(
|
||||
yamlPath: packYamlPath,
|
||||
name: formatPackName(packName),
|
||||
version: "0.0.0",
|
||||
language,
|
||||
extensionTargets: {
|
||||
[`codeql/${language}-all`]: "*",
|
||||
},
|
||||
@@ -337,7 +341,10 @@ async function writeExtensionPack(
|
||||
return extensionPack;
|
||||
}
|
||||
|
||||
async function readExtensionPack(path: string): Promise<ExtensionPack> {
|
||||
async function readExtensionPack(
|
||||
path: string,
|
||||
language: string,
|
||||
): Promise<ExtensionPack> {
|
||||
const qlpackPath = await getQlPackPath(path);
|
||||
if (!qlpackPath) {
|
||||
throw new Error(
|
||||
@@ -374,6 +381,7 @@ async function readExtensionPack(path: string): Promise<ExtensionPack> {
|
||||
yamlPath: qlpackPath,
|
||||
name: qlpack.name,
|
||||
version: qlpack.version,
|
||||
language,
|
||||
extensionTargets: qlpack.extensionTargets,
|
||||
dataExtensions,
|
||||
};
|
||||
|
||||
@@ -4,6 +4,7 @@ export interface ExtensionPack {
|
||||
|
||||
name: string;
|
||||
version: string;
|
||||
language: string;
|
||||
|
||||
extensionTargets: Record<string, string>;
|
||||
dataExtensions: string[];
|
||||
|
||||
@@ -24,6 +24,7 @@ DataExtensionsEditor.args = {
|
||||
"/home/user/vscode-codeql-starter/codeql-custom-queries-java/sql2o/codeql-pack.yml",
|
||||
name: "codeql/sql2o-models",
|
||||
version: "0.0.0",
|
||||
language: "java",
|
||||
extensionTargets: {},
|
||||
dataExtensions: [],
|
||||
},
|
||||
|
||||
@@ -17,6 +17,7 @@ import { DataExtensionEditorViewState } from "../../data-extensions-editor/share
|
||||
import { ModeledMethodsList } from "./ModeledMethodsList";
|
||||
import { percentFormatter } from "./formatters";
|
||||
import { Mode } from "../../data-extensions-editor/shared/mode";
|
||||
import { getLanguageDisplayName } from "../../common/query-language";
|
||||
|
||||
const LoadingContainer = styled.div`
|
||||
text-align: center;
|
||||
@@ -266,7 +267,9 @@ export function DataExtensionsEditor({
|
||||
|
||||
{externalApiUsages.length > 0 && (
|
||||
<>
|
||||
<ViewTitle>Data extensions editor</ViewTitle>
|
||||
<ViewTitle>
|
||||
{getLanguageDisplayName(viewState.extensionPack.language)}
|
||||
</ViewTitle>
|
||||
<DetailsContainer>
|
||||
<LinkIconButton onClick={onOpenExtensionPackClick}>
|
||||
<span slot="start" className="codicon codicon-package"></span>
|
||||
|
||||
@@ -112,6 +112,7 @@ describe("modeled-method-fs", () => {
|
||||
yamlPath: path,
|
||||
name: "dummy/pack",
|
||||
version: "0.0.1",
|
||||
language: "java",
|
||||
extensionTargets: {},
|
||||
dataExtensions: [],
|
||||
};
|
||||
|
||||
@@ -268,6 +268,7 @@ describe("pickExtensionPack", () => {
|
||||
yamlPath: join(newPackDir, "codeql-pack.yml"),
|
||||
name: "github/vscode-codeql-java",
|
||||
version: "0.0.0",
|
||||
language: "java",
|
||||
extensionTargets: {
|
||||
"codeql/java-all": "*",
|
||||
},
|
||||
@@ -339,6 +340,7 @@ describe("pickExtensionPack", () => {
|
||||
yamlPath: join(newPackDir, "codeql-pack.yml"),
|
||||
name: "github/vscode-codeql-java",
|
||||
version: "0.0.0",
|
||||
language: "java",
|
||||
extensionTargets: {
|
||||
"codeql/java-all": "*",
|
||||
},
|
||||
@@ -399,6 +401,7 @@ describe("pickExtensionPack", () => {
|
||||
yamlPath: join(newPackDir, "codeql-pack.yml"),
|
||||
name: "pack/new-extension-pack",
|
||||
version: "0.0.0",
|
||||
language: "java",
|
||||
extensionTargets: {
|
||||
"codeql/java-all": "*",
|
||||
},
|
||||
@@ -466,6 +469,7 @@ describe("pickExtensionPack", () => {
|
||||
yamlPath: join(newPackDir, "codeql-pack.yml"),
|
||||
name: "pack/new-extension-pack",
|
||||
version: "0.0.0",
|
||||
language: "csharp",
|
||||
extensionTargets: {
|
||||
"codeql/csharp-all": "*",
|
||||
},
|
||||
@@ -815,6 +819,7 @@ describe("pickExtensionPack", () => {
|
||||
yamlPath: qlpackPath,
|
||||
name: "new-extension-pack",
|
||||
version: "0.0.0",
|
||||
language: "java",
|
||||
extensionTargets: {
|
||||
"codeql/java-all": "*",
|
||||
},
|
||||
@@ -838,6 +843,7 @@ describe("pickExtensionPack", () => {
|
||||
"csharp-extension-pack",
|
||||
{
|
||||
version: "0.5.3",
|
||||
language: "csharp",
|
||||
extensionTargets: {
|
||||
"codeql/csharp-all": "*",
|
||||
},
|
||||
@@ -906,6 +912,7 @@ async function createMockExtensionPack(
|
||||
yamlPath: join(path, "codeql-pack.yml"),
|
||||
name,
|
||||
version: "0.0.0",
|
||||
language: "java",
|
||||
extensionTargets: {
|
||||
"codeql/java-all": "*",
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user