/** * Source code string shown in the Storybook Docs tab for the RegistrationForm story. * * Highlights cross-field Zod `.refine()` and file input wired through ``. */ declare const registrationFormSource = "\nimport {\n Form,\n Field,\n FieldLabel,\n FieldControl,\n useZodForm,\n SimpleInput,\n Button,\n Box,\n Text\n} from '@jtl-software/platform-ui-react';\nimport { z } from 'zod';\n\nconst registrationFormSchema = z\n .object({\n username: z.string().min(3, { message: 'Username must be at least 3 characters' }),\n email: z.string().email({ message: 'Please enter a valid email address' }),\n password: z.string().min(8, { message: 'Password must be at least 8 characters' }),\n confirmPassword: z.string(),\n avatar: z.instanceof(File).optional(),\n })\n .refine(data => data.password === data.confirmPassword, {\n message: 'Passwords do not match',\n path: ['confirmPassword'],\n });\n\nconst RegistrationForm: React.FC = () => {\n const form = useZodForm({\n schema: registrationFormSchema,\n defaultValues: { username: '', email: '', password: '', confirmPassword: '' },\n });\n\n const onSubmit = (data: z.infer) => {\n console.log(data);\n };\n\n return (\n
\n \n \n Username\n \n \n \n \n\n \n Email\n \n \n \n \n\n \n Password\n \n \n \n \n\n \n Confirm Password\n \n \n \n \n\n \n Avatar\n \n \n \n \n\n