import type { z } from "zod"; import { FormMessage } from "~/components/FormMessage"; import { FormField } from "../FormField"; import type { FormFieldProps } from "../types"; import { useTranslatedTexts } from "./FormFieldWrapper"; type FieldsetFormFieldProps = Omit< FormFieldProps<"fieldset">, "fields" > & { name: string; fields: z.ZodObject; }; export function FieldsetFormField({ label, name, bottomText, error, fields, }: FieldsetFormFieldProps) { const fieldNames = Object.keys(fields.shape); const { translatedLabel, translatedBottomText, translatedError } = useTranslatedTexts({ label, bottomText, error }); return (
{translatedLabel ? (
{translatedLabel}
) : null} {fieldNames.map((fieldName) => ( ))} {translatedError ? ( {translatedError} ) : null} {translatedBottomText && !translatedError ? ( {translatedBottomText} ) : null}
); }