From 3f9089fb3625d74843788aebcf869e6189d27f7b Mon Sep 17 00:00:00 2001 From: James Ritchie Date: Fri, 13 Feb 2026 16:16:52 +0000 Subject: [PATCH] Show an error to the user when their addon upgrade payment fails --- .../route.tsx | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.concurrency/route.tsx b/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.concurrency/route.tsx index f3773df765..1c96b8c642 100644 --- a/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.concurrency/route.tsx +++ b/apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.concurrency/route.tsx @@ -291,7 +291,7 @@ function Upgradable({ }: ConcurrencyResult) { const lastSubmission = useActionData(); const [form, { environments: formEnvironments }] = useForm({ - id: "purchase-concurrency", + id: "allocate-concurrency", // TODO: type this lastSubmission: lastSubmission as any, onValidate({ formData }) { @@ -446,7 +446,9 @@ function Upgradable({ - {formEnvironments.error} + + {formEnvironments.error ?? formEnvironments.initialError?.[""]?.[0]} +
@@ -664,7 +666,9 @@ function PurchaseConcurrencyModal({ onChange={(e) => setAmountValue(Number(e.target.value))} disabled={isLoading} /> - {amount.error} + + {amount.error ?? amount.initialError?.[""]?.[0]} + {form.error}