diff --git a/src/components/onboarding/OnboardingShell.tsx b/src/components/onboarding/OnboardingShell.tsx new file mode 100644 index 000000000..3a7138bbf --- /dev/null +++ b/src/components/onboarding/OnboardingShell.tsx @@ -0,0 +1,168 @@ +import Link from "next/link"; +import { cn } from "@/lib/utils"; +import { Logo } from "@/components/ui/logo"; +import { Button } from "@/components/ui/button"; +import { getServerTranslator } from "@/lib/i18n/server-translator"; +import { resolveServerLocale } from "@/lib/i18n/server-locale"; + +/** + * v1.4.25 W14b — onboarding wizard chrome. + * + * Renders the shared frame around every step in the rebuilt + * `/onboarding/[step]` flow: logo, "Step N of 4" label, four-dot + * progress strip, the step body slot, and the back / skip / next + * action row pinned to the bottom safe-area. + * + * Step encoding (mirrors `User.onboardingStep`): + * 0 = welcome (no progress dot; intro screen, primary action is "next") + * 1 = goals (dot 1 active) + * 2 = source (dot 2 active) + * 3 = baseline (dot 3 active) + * 4 = done (dot 4 active; "done" copy; primary CTA = return to dashboard) + * + * Server component — every step page is also a server component and + * the shell carries no client state. Back / skip / next are plain + * ``s wrapping ` + ) : ( +