'use client' import classNames from 'classnames' import { useContext } from 'react' import { Plain, Repeater, Text, types } from 'react-bricks/rsc' import { textColors } from '../../colors' import { FormBuilderContext } from './FormBuilderProvider' export interface FormRadiobuttonsProps { fieldName: string label: string isRequired: boolean requiredError?: string columns: '1' | '2' radioButtons: types.RepeaterItems } const FormRadiobuttonsClient: React.FC = ({ fieldName, label, isRequired, requiredError, columns, radioButtons, }) => { const { register, errors } = useContext(FormBuilderContext) if (!register || !errors) { return null } const labelTextContent = typeof label === 'string' ? label : Plain.serialize(label) return (
( {props.children} )} /> {isRequired && (labelTextContent === '' ? null : ( * ))}
{errors[fieldName] && (
{errors[fieldName]?.type === 'required' && requiredError} {errors[fieldName]?.message && `This field ${errors[fieldName]?.message}`}
)}
) } export default FormRadiobuttonsClient