From 8faa2ffcf8d65a5372baf5a877a02a6cff2223ec Mon Sep 17 00:00:00 2001 From: adamelmore <2363879+adamdottv@users.noreply.github.com> Date: Tue, 27 Jan 2026 11:15:03 -0600 Subject: [PATCH] chore: cleanup --- .../src/components/dialog-custom-provider.tsx | 270 +++++++++--------- 1 file changed, 129 insertions(+), 141 deletions(-) diff --git a/packages/app/src/components/dialog-custom-provider.tsx b/packages/app/src/components/dialog-custom-provider.tsx index 6a6a697348..d5ffb68a84 100644 --- a/packages/app/src/components/dialog-custom-provider.tsx +++ b/packages/app/src/components/dialog-custom-provider.tsx @@ -221,14 +221,8 @@ export function DialogCustomProvider(props: Props) { setForm("saving", true) - const beforeProvider = globalSync.data.config.provider - const beforeDisabled = globalSync.data.config.disabled_providers - - const nextProvider = { ...(beforeProvider ?? {}), [result.providerID]: result.config } - const nextDisabled = (beforeDisabled ?? []).filter((id) => id !== result.providerID) - - globalSync.set("config", "provider", nextProvider) - globalSync.set("config", "disabled_providers", nextDisabled) + const disabledProviders = globalSync.data.config.disabled_providers ?? [] + const nextDisabled = disabledProviders.filter((id) => id !== result.providerID) globalSync .updateConfig({ provider: { [result.providerID]: result.config }, disabled_providers: nextDisabled }) @@ -242,8 +236,6 @@ export function DialogCustomProvider(props: Props) { }) }) .catch((err: unknown) => { - globalSync.set("config", "provider", beforeProvider) - globalSync.set("config", "disabled_providers", beforeDisabled) const message = err instanceof Error ? err.message : String(err) showToast({ title: language.t("common.requestFailed"), description: message }) }) @@ -265,153 +257,149 @@ export function DialogCustomProvider(props: Props) { } transition > -
+
Custom provider
-
-
- Configure an OpenAI-compatible provider. Fields map to the +
+

+ Configure an OpenAI-compatible provider. See the{" "} provider config docs . +

+ +
+ + + +
- -
- - - - -
- -
-
Models
- - {(m, i) => ( -
-
- setForm("models", i(), "id", v)} - validationState={errors.models[i()]?.id ? "invalid" : undefined} - error={errors.models[i()]?.id} - /> - setForm("models", i(), "name", v)} - validationState={errors.models[i()]?.name ? "invalid" : undefined} - error={errors.models[i()]?.name} - /> -
- removeModel(i())} - aria-label="Remove model" +
+ + + {(m, i) => ( +
+
+ setForm("models", i(), "id", v)} + validationState={errors.models[i()]?.id ? "invalid" : undefined} + error={errors.models[i()]?.id} />
- )} - - -
- -
-
Headers (optional)
- - {(h, i) => ( -
-
- setForm("headers", i(), "key", v)} - validationState={errors.headers[i()]?.key ? "invalid" : undefined} - error={errors.headers[i()]?.key} - /> - setForm("headers", i(), "value", v)} - validationState={errors.headers[i()]?.value ? "invalid" : undefined} - error={errors.headers[i()]?.value} - /> -
- removeHeader(i())} - aria-label="Remove header" +
+ setForm("models", i(), "name", v)} + validationState={errors.models[i()]?.name ? "invalid" : undefined} + error={errors.models[i()]?.name} />
- )} - - -
+ removeModel(i())} + disabled={form.models.length <= 1} + aria-label="Remove model" + /> +
+ )} +
+ +
-
- - -
- -
+
+ + + {(h, i) => ( +
+
+ setForm("headers", i(), "key", v)} + validationState={errors.headers[i()]?.key ? "invalid" : undefined} + error={errors.headers[i()]?.key} + /> +
+
+ setForm("headers", i(), "value", v)} + validationState={errors.headers[i()]?.value ? "invalid" : undefined} + error={errors.headers[i()]?.value} + /> +
+ removeHeader(i())} + disabled={form.headers.length <= 1} + aria-label="Remove header" + /> +
+ )} +
+ +
+ + +
)