'use client'; import { useActionState } from 'react'; import { cancelChangeEmailAction, confirmChangeEmailAction, startChangeEmailAction, updateProfileAction } from '@/lib/auth/account-actions'; import { idle } from '@/lib/auth/state'; import { CodeInput, Field, FormMessage, Select, SubmitButton, TextArea, TextInput } from '@/components/account/form'; export function ProfileForm({ user }: { user: { name: string | null; handle: string | null; bio: string | null; displayCurrency: string } }) { const [state, action] = useActionState(updateProfileAction, idle); return (
); } export function ChangeEmailForm({ pendingEmail }: { pendingEmail: string | null }) { const [start, startAction] = useActionState(startChangeEmailAction, idle); const [confirm, confirmAction] = useActionState(confirmChangeEmailAction, idle); const pending = (start.data?.pendingEmail as string | undefined) ?? pendingEmail; if (pending && !confirm.ok) { return (Enter the code we sent to {pending}.