Use strictly type choices for config setting

This commit is contained in:
Elena Tanasoiu
2023-05-03 07:57:55 +00:00
parent c8b0b1c769
commit 530ae689d3

View File

@@ -646,10 +646,14 @@ const AUTOGENERATE_QL_PACKS = new Setting(
CREATE_QUERY_COMMAND,
);
export function getAutogenerateQlPacks(): string | undefined {
return AUTOGENERATE_QL_PACKS.getValue<string>() || undefined;
const AutogenerateQLPacksValues = ["ask", "yes", "never"] as const;
type AutogenerateQLPacks = typeof AutogenerateQLPacksValues[number];
export function getAutogenerateQlPacks(): AutogenerateQLPacks {
const value = AUTOGENERATE_QL_PACKS.getValue<AutogenerateQLPacks>();
return AutogenerateQLPacksValues.includes(value) ? value : "ask";
}
export async function setAutogenerateQlPacks(choice: string | undefined) {
export async function setAutogenerateQlPacks(choice: AutogenerateQLPacks) {
await AUTOGENERATE_QL_PACKS.updateValue(choice, ConfigurationTarget.Global);
}