import { FC } from "react"; import { Controller, useForm } from "react-hook-form"; // components import { Button, Input, TextArea, CustomSelect } from "components/ui"; // types import type { ICycle } from "types"; const defaultValues: Partial = { name: "", description: "", status: "draft", start_date: new Date().toString(), end_date: new Date().toString(), }; export interface CycleFormProps { handleFormSubmit: (values: Partial) => void; handleFormCancel?: () => void; initialData?: Partial; } export const CycleForm: FC = (props) => { const { handleFormSubmit, handleFormCancel = () => {}, initialData = null } = props; // form handler const { register, formState: { errors, isSubmitting }, handleSubmit, control, } = useForm({ defaultValues: initialData || defaultValues, }); return (