import type { SelectField } from '@payloadcms/plugin-form-builder/types' import type { Control, FieldErrorsImpl } from 'react-hook-form' import { Label } from '@/components/ui/label' import { Select as SelectComponent, SelectContent, SelectItem, SelectTrigger, SelectValue, } from '@/components/ui/select' import React from 'react' import { Controller } from 'react-hook-form' import { Error } from '../Error' import { Width } from '../Width' export const Select: React.FC< SelectField & { control: Control errors: Partial } > = ({ name, control, errors, label, options, required, width, defaultValue }) => { return ( { const controlledValue = options.find((t) => t.value === value) return ( onChange(val)} value={controlledValue?.value}> {options.map(({ label, value }) => { return ( {label} ) })} ) }} rules={{ required }} /> {errors[name] && } ) }