Untitled
unknown
plain_text
5 months ago
1.6 kB
4
Indexable
import { FieldValues, useForm } from 'react-hook-form'; //@ts-ignore import ProductInfoForm from '@/features/Products/addProductFields/ProductInfoForm'; import toast from 'react-hot-toast'; //@ts-ignore import ProductImagesForm from '@/features/Products/addProductFields/ProductImagesForm'; //@ts-ignore import ProductPriceForm from '@/features/Products/addProductFields/ProductPriceForm'; function AddProductForm({ clickedButton, addProduct }) { const form = useForm(); // Add product form submition function onSubmit(values: FieldValues) { if (!values.category.length) { form.setError('category', { message: 'select a category' }); toast.error('select a category'); return; } if (!values.images.length) { toast.error('please upload 1 image at least'); return; } if (clickedButton === 'add-product') { addProduct({ product: values, isPublished: 'false' }); } if (clickedButton === 'add-and-publish') { addProduct({ product: values, isPublished: 'true' }); } } return ( <form id='add-product' onSubmit={form.handleSubmit(onSubmit)}> <div className='grid grid-cols-[2fr_1fr] gap-5'> <ProductInfoForm register={form.register} errors={form.formState.errors} form={form} /> <div className='flex flex-col gap-5'> <ProductImagesForm register={form.register} form={form} /> <ProductPriceForm register={form.register} errors={form.formState.errors} form={form} /> </div> </div> </form> ); } export default AddProductForm;
Editor is loading...
Leave a Comment