'use client'; import { DetailedHTMLProps, FC, forwardRef, SelectHTMLAttributes, useMemo } from 'react'; import { clsx } from 'clsx'; import { useFormContext } from 'react-hook-form'; import interClass from '../helpers/inter.font'; import { RegisterOptions } from 'react-hook-form/dist/types/validator'; export const Select: FC< DetailedHTMLProps< SelectHTMLAttributes, HTMLSelectElement > & { error?: any; extraForm?: RegisterOptions; disableForm?: boolean; label: string; name: string; hideErrors?: boolean; } > = forwardRef((props, ref) => { const { label, className, hideErrors, disableForm, error, extraForm, ...rest } = props; const form = useFormContext(); const err = useMemo(() => { if (error) return error; if (!form || !form.formState.errors[props?.name!]) return; return form?.formState?.errors?.[props?.name!]?.message! as string; }, [form?.formState?.errors?.[props?.name!]?.message, error]); return (
{label}