import { FC, Suspense } from 'react';
import { Main } from '@/app/ui/Main';
import { AccountForm, AccountFormSkeleton } from '@/app/ui/AccountForm';
import { getUserProfile } from '@/app/lib/actions/userProfileActions';
import { useTranslations } from 'next-intl';
import { getTranslations } from 'next-intl/server';

const AccountPage: FC = async () => {
    const profile = await getUserProfile();
    const t = await getTranslations('account-page');

    return (
        <Main>
            <div className="flex flex-col items-center">
                <h1 className="text-2xl font-bold mb-4">{t('heading')}</h1>
                <AccountForm profile={profile} />
            </div>
        </Main>
    );
};

const Page: FC = () => {
    return (
        <Suspense fallback={
            <Main>
                <div className="flex flex-col items-center">
                    <div className="h-8 w-48 skeleton mb-4"></div>
                    <AccountFormSkeleton />
                </div>
            </Main>
        }>
            <AccountPage />
        </Suspense>
    );
};

export default Page;
