import React from "react"; import { useNavigate } from "react-router-dom"; import { useTranslation } from "react-i18next"; import { Sparkles, Users, Camera, CalendarDays, ChevronRight, CreditCard, UserPlus, Palette } from "lucide-react"; import { TenantWelcomeLayout, WelcomeHero, OnboardingHighlightsGrid, OnboardingCTAList, useOnboardingProgress, } from ".."; import { ADMIN_WELCOME_PACKAGES_PATH, ADMIN_EVENTS_PATH } from "../../constants"; import { ChecklistRow, FrostedSurface } from "../../components/tenant"; export default function WelcomeLandingPage() { const navigate = useNavigate(); const { markStep, progress } = useOnboardingProgress(); const { t } = useTranslation("onboarding"); React.useEffect(() => { markStep({ welcomeSeen: true, lastStep: "landing" }); }, [markStep]); const progressStatus = React.useMemo( () => ({ complete: t("landingProgress.status.complete"), pending: t("landingProgress.status.pending"), }), [t] ); const progressSteps = React.useMemo( () => [ { key: "package", icon: , label: t("landingProgress.steps.package.title"), hint: t("landingProgress.steps.package.hint"), completed: progress.packageSelected, }, { key: "invite", icon: , label: t("landingProgress.steps.invite.title"), hint: t("landingProgress.steps.invite.hint"), completed: progress.inviteCreated, }, { key: "branding", icon: , label: t("landingProgress.steps.branding.title"), hint: t("landingProgress.steps.branding.hint"), completed: progress.brandingConfigured, }, ], [progress.packageSelected, progress.inviteCreated, progress.brandingConfigured, t] ); return ( {t("layout.alreadyFamiliar")} } > navigate(ADMIN_WELCOME_PACKAGES_PATH), icon: Sparkles, }, { label: t("hero.secondary.label"), onClick: () => navigate(ADMIN_EVENTS_PATH), icon: CalendarDays, variant: "outline", }, ]} />

{t("landingProgress.eyebrow")}

{t("landingProgress.title")}

{t("landingProgress.description")}

{progressSteps.map((step) => ( ))}
navigate(ADMIN_WELCOME_PACKAGES_PATH), icon: Sparkles, buttonLabel: t("ctaList.choosePackage.button"), }, { id: "create-event", label: t("ctaList.createEvent.label"), description: t("ctaList.createEvent.description"), onClick: () => navigate(ADMIN_EVENTS_PATH), icon: CalendarDays, buttonLabel: t("ctaList.createEvent.button"), variant: "secondary", }, ]} />
); }