diff --git a/src/pages/onboarding/OnboardingProxy.tsx b/src/pages/onboarding/OnboardingProxy.tsx index ae76b9aa..e67c0769 100644 --- a/src/pages/onboarding/OnboardingProxy.tsx +++ b/src/pages/onboarding/OnboardingProxy.tsx @@ -2,6 +2,7 @@ import { useState } from "react"; import { useTranslation } from "react-i18next"; import { useAsyncFn } from "react-use"; +import { updateSettings } from "@/backend/accounts/settings"; import { singularProxiedFetch } from "@/backend/helpers/fetch"; import { Button } from "@/components/buttons/Button"; import { Stepper } from "@/components/layout/Stepper"; @@ -10,6 +11,7 @@ import { AuthInputBox } from "@/components/text-inputs/AuthInputBox"; import { Divider } from "@/components/utils/Divider"; import { ErrorLine } from "@/components/utils/ErrorLine"; import { Heading2, Paragraph } from "@/components/utils/Text"; +import { useBackendUrl } from "@/hooks/auth/useBackendUrl"; import { MinimalPageLayout } from "@/pages/layouts/MinimalPageLayout"; import { useNavigateOnboarding, @@ -29,6 +31,8 @@ export function OnboardingProxyPage() { const [url, setUrl] = useState(""); const setProxySet = useAuthStore((s) => s.setProxySet); const installLink = conf().ONBOARDING_PROXY_INSTALL_LINK; + const backendUrl = useBackendUrl(); + const account = useAuthStore((s) => s.account); const [{ loading, error }, test] = useAsyncFn(async () => { if (!url.startsWith("http")) @@ -38,6 +42,13 @@ export function OnboardingProxyPage() { if (res.url !== testUrl) throw new Error("onboarding.proxy.input.errorNotProxy"); setProxySet([url]); + + if (account) { + await updateSettings(backendUrl, account, { + proxyUrls: [url], + }); + } + completeAndRedirect(); } catch (e) { throw new Error("onboarding.proxy.input.errorConnection");