Skip to content

Commit 3823e1b

Browse files
committed
Update existing api key validations and add missing ones
Signed-off-by: Geoff Wilson <[email protected]>
1 parent 564cc9a commit 3823e1b

File tree

1 file changed

+47
-7
lines changed

1 file changed

+47
-7
lines changed

webview-ui/src/utils/validate.ts

Lines changed: 47 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ function validateModelsAndKeysProvided(apiConfiguration: ProviderSettings): stri
5959
}
6060
break
6161
case "deepinfra":
62-
if (!apiConfiguration.deepInfraApiKey) {
62+
if (!(apiConfiguration.deepInfraApiKey || apiConfiguration.deepInfraConfigUseEnvVars)) {
6363
return i18next.t("settings:validation.apiKey")
6464
}
6565
break
@@ -121,30 +121,30 @@ function validateModelsAndKeysProvided(apiConfiguration: ProviderSettings): stri
121121
}
122122
break
123123
case "huggingface":
124-
if (!apiConfiguration.huggingFaceApiKey) {
124+
if (!(apiConfiguration.huggingFaceApiKey || apiConfiguration.huggingFaceConfigUseEnvVars)) {
125125
return i18next.t("settings:validation.apiKey")
126126
}
127127
if (!apiConfiguration.huggingFaceModelId) {
128128
return i18next.t("settings:validation.modelId")
129129
}
130130
break
131131
case "cerebras":
132-
if (!apiConfiguration.cerebrasApiKey) {
132+
if (!(apiConfiguration.cerebrasApiKey || apiConfiguration.cerebrasConfigUseEnvVars)) {
133133
return i18next.t("settings:validation.apiKey")
134134
}
135135
break
136136
case "fireworks":
137-
if (!apiConfiguration.fireworksApiKey) {
137+
if (!(apiConfiguration.fireworksApiKey || apiConfiguration.fireworksConfigUseEnvVars)) {
138138
return i18next.t("settings:validation.apiKey")
139139
}
140140
break
141141
case "io-intelligence":
142-
if (!apiConfiguration.ioIntelligenceApiKey) {
142+
if (!(apiConfiguration.ioIntelligenceApiKey || apiConfiguration.ioIntelligenceConfigUseEnvVars)) {
143143
return i18next.t("settings:validation.apiKey")
144144
}
145145
break
146146
case "featherless":
147-
if (!apiConfiguration.featherlessApiKey) {
147+
if (!(apiConfiguration.featherlessApiKey || apiConfiguration.featherlessConfigUseEnvVars)) {
148148
return i18next.t("settings:validation.apiKey")
149149
}
150150
break
@@ -154,7 +154,47 @@ function validateModelsAndKeysProvided(apiConfiguration: ProviderSettings): stri
154154
}
155155
break
156156
case "vercel-ai-gateway":
157-
if (!apiConfiguration.vercelAiGatewayApiKey) {
157+
if (!(apiConfiguration.vercelAiGatewayApiKey || apiConfiguration.vercelConfigUseEnvVars)) {
158+
return i18next.t("settings:validation.apiKey")
159+
}
160+
break
161+
case "deepseek":
162+
if (!(apiConfiguration.deepSeekApiKey || apiConfiguration.deepSeekConfigUseEnvVars)) {
163+
return i18next.t("settings:validation.apiKey")
164+
}
165+
break
166+
case "doubao":
167+
if (!(apiConfiguration.doubaoApiKey || apiConfiguration.doubaoConfigUseEnvVars)) {
168+
return i18next.t("settings:validation.apiKey")
169+
}
170+
break
171+
case "moonshot":
172+
if (!(apiConfiguration.moonshotApiKey || apiConfiguration.moonshotConfigUseEnvVars)) {
173+
return i18next.t("settings:validation.apiKey")
174+
}
175+
break
176+
case "xai":
177+
if (!(apiConfiguration.xaiApiKey || apiConfiguration.xaiConfigUseEnvVars)) {
178+
return i18next.t("settings:validation.apiKey")
179+
}
180+
break
181+
case "groq":
182+
if (!(apiConfiguration.groqApiKey || apiConfiguration.groqConfigUseEnvVars)) {
183+
return i18next.t("settings:validation.apiKey")
184+
}
185+
break
186+
case "chutes":
187+
if (!(apiConfiguration.chutesApiKey || apiConfiguration.chutesConfigUseEnvVars)) {
188+
return i18next.t("settings:validation.apiKey")
189+
}
190+
break
191+
case "sambanova":
192+
if (!(apiConfiguration.sambaNovaApiKey || apiConfiguration.sambaNovaConfigUseEnvVars)) {
193+
return i18next.t("settings:validation.apiKey")
194+
}
195+
break
196+
case "zai":
197+
if (!(apiConfiguration.zaiApiKey || apiConfiguration.zaiConfigUseEnvVars)) {
158198
return i18next.t("settings:validation.apiKey")
159199
}
160200
break

0 commit comments

Comments
 (0)