import { useForm, Controller } from 'react-hook-form' import { zodResolver } from '@hookform/resolvers/zod' import { ErrorMessage } from '@hookform/error-message' import z from 'zod' import { ArrowRightIcon } from 'lucide-react' import { Button } from '@repo/ui/components/ui/button' import { Label } from '@repo/ui/components/ui/label' import { RadioGroup, RadioGroupItem } from '@repo/ui/components/ui/radio-group' import { Separator } from '@repo/ui/components/ui/separator' import { useWizard } from '@/components/wizard' const formSchema = z.object({ payment_method: z.enum(['PIX', 'BANK_SLIP', 'CREDIT_CARD'], { error: 'Escolha uma forma de pagamento' }) }) type Schema = z.infer type PaymentProps = { onSubmit: (value: any) => void | Promise defaultValues?: object } export function Payment({ onSubmit, defaultValues }: PaymentProps) { const wizard = useWizard() const { control, handleSubmit } = useForm({ defaultValues: { payment_method: '' as any, ...defaultValues }, resolver: zodResolver(formSchema) }) const onSubmit_ = async (data: Schema) => { await onSubmit(data) wizard('review') } return (
(
(

{message}

)} />
)} />
) }