+ );
+ }
+
return (
- {t( - "onboarding.freeTrial.body", - "You have full access to Stirling PDF Pro features during your trial. Enjoy unlimited conversions, larger file sizes, and priority processing.", - )} -
-{afterTrialMessage}
-diff --git a/frontend/editor/src/saas/components/shared/config/configSections/PaygFree.css b/frontend/editor/src/saas/components/shared/config/configSections/PaygFree.css index 20534849d..17ef96e8b 100644 --- a/frontend/editor/src/saas/components/shared/config/configSections/PaygFree.css +++ b/frontend/editor/src/saas/components/shared/config/configSections/PaygFree.css @@ -227,7 +227,9 @@ font-size: 0.95rem; font-family: inherit; cursor: pointer; - transition: transform 120ms ease, box-shadow 120ms ease; + transition: + transform 120ms ease, + box-shadow 120ms ease; white-space: nowrap; } .paygf-cta__button:hover { diff --git a/frontend/editor/src/saas/components/shared/config/configSections/PaygFree.tsx b/frontend/editor/src/saas/components/shared/config/configSections/PaygFree.tsx index 27d77be48..ced4f4c2b 100644 --- a/frontend/editor/src/saas/components/shared/config/configSections/PaygFree.tsx +++ b/frontend/editor/src/saas/components/shared/config/configSections/PaygFree.tsx @@ -43,7 +43,7 @@ import { DocHelp } from "./Payg"; // ─── Shared free-tier snapshot ──────────────────────────── -interface FreeSnapshot { +export interface FreeSnapshot { /** One-time free documents used so far (grant − remaining). */ billableUsed: number; /** @@ -61,7 +61,7 @@ interface FreeSnapshot { * numbers. Earlier versions returned a mock "62 of 500" sentinel which leaked * into the rendered UI and made the page look like nothing was wired up. */ -function useFreeSnapshot(): FreeSnapshot { +export function useFreeSnapshot(): FreeSnapshot { const { wallet } = useWallet(); return useMemo(() => { if (wallet) { @@ -80,7 +80,10 @@ function useFreeSnapshot(): FreeSnapshot { type MeterState = "FULL" | "WARNED" | "DEGRADED"; /** Warn/degrade band for the one-time grant meter (mirrors the BE thresholds). */ -function meterState(used: number, limit: number): { state: MeterState; pct: number } { +function meterState( + used: number, + limit: number, +): { state: MeterState; pct: number } { const pct = limit > 0 ? Math.min(100, (used / limit) * 100) : 100; const state: MeterState = pct >= 100 ? "DEGRADED" : pct >= 80 ? "WARNED" : "FULL"; @@ -113,7 +116,10 @@ function EditorPlanCard({ pill, leader }: EditorPlanCardProps) { /> {t("payg.free.editor.eyebrow", "Editor plan · Always free")} - + {pill}
{t( @@ -377,18 +374,12 @@ function CapStep({
{t( @@ -498,10 +482,7 @@ function ConfirmationStep({
{t( diff --git a/frontend/editor/src/saas/components/shared/config/saasConfigNavSections.tsx b/frontend/editor/src/saas/components/shared/config/saasConfigNavSections.tsx index 562c010ad..c0a451a69 100644 --- a/frontend/editor/src/saas/components/shared/config/saasConfigNavSections.tsx +++ b/frontend/editor/src/saas/components/shared/config/saasConfigNavSections.tsx @@ -151,11 +151,7 @@ function appendMcpSection( export function createSaasConfigNavSections( Overview: OverviewComponent, onLogoutClick: () => void, - { - isDev = false, - isAnonymous = false, - t, - }: CreateSaasConfigNavSectionsOptions, + { isDev = false, isAnonymous = false, t }: CreateSaasConfigNavSectionsOptions, ): ConfigNavSection[] { const baseSections = createCoreConfigNavSections(false, false, false); diff --git a/frontend/editor/src/saas/routes/authShared/saas-auth.css b/frontend/editor/src/saas/routes/authShared/saas-auth.css index 9a8943fc2..cfa8397d4 100644 --- a/frontend/editor/src/saas/routes/authShared/saas-auth.css +++ b/frontend/editor/src/saas/routes/authShared/saas-auth.css @@ -4,7 +4,6 @@ display: flex; flex-direction: column; gap: 0.75rem; /* 12px */ - margin-bottom: 0.625rem; /* 10px */ } .oauth-button-fullwidth { diff --git a/frontend/editor/src/saas/services/paygErrorInterceptor.test.ts b/frontend/editor/src/saas/services/paygErrorInterceptor.test.ts index 84be4ecc9..c4dfac1cd 100644 --- a/frontend/editor/src/saas/services/paygErrorInterceptor.test.ts +++ b/frontend/editor/src/saas/services/paygErrorInterceptor.test.ts @@ -112,9 +112,7 @@ describe("extractSignupCategory", () => { expect( extractSignupCategory({ response: { data: { category: 7 } } }), ).toBeNull(); - expect( - extractSignupCategory({ response: { data: {} } }), - ).toBeNull(); + expect(extractSignupCategory({ response: { data: {} } })).toBeNull(); }); });