{t('home.welcomeUser', { name: String(member.first_name) })}
{t('home.profile')}
{t('home.profileDesc')}
{t('home.documents')}
{t('home.documentsDesc')}
{t('home.memberCard')}
{t('home.memberCardDesc')}
import Link from 'next/link'; import { createClient } from '@supabase/supabase-js'; import { UserCircle, FileText, CreditCard, Shield } from 'lucide-react'; import { getTranslations } from 'next-intl/server'; import { PortalLoginForm } from '@kit/site-builder/components'; import { Button } from '@kit/ui/button'; import { Card, CardContent } from '@kit/ui/card'; interface Props { params: Promise<{ slug: string }>; } export default async function MemberPortalPage({ params }: Props) { const { slug } = await params; const t = await getTranslations('portal'); const supabase = createClient( process.env.NEXT_PUBLIC_SUPABASE_URL!, process.env.NEXT_PUBLIC_SUPABASE_PUBLIC_KEY!, ); const { data: account } = await supabase .from('accounts') .select('id, name') .eq('slug', slug) .single(); if (!account) return
{t('home.profileDesc')}
{t('home.documentsDesc')}
{t('home.memberCardDesc')}