// AUTO-GENERATED by scripts/generate-wrappers.mjs — do not edit by hand. // Source: packages/core/manifest.json (component "form"). import type { ElementType, ReactNode } from 'react'; import { Form as FormController, type FormOptions } from '@42/core/form'; import { C42 } from '../C42'; const DEFAULT_HTML: string | null = "
\n \n \n \n
\n
\n \n \n \n
\n "; export interface FormProps extends Partial { /** Element/tag rendered as the controller root. Defaults to `"form"`. */ as?: ElementType; className?: string; children?: ReactNode; /** Fired on `form:submit` — detail: `{ values }` */ onSubmit?: (detail: unknown, event: CustomEvent) => void; /** Fired on `form:invalid` — detail: `{ errors }` */ onInvalid?: (detail: unknown, event: CustomEvent) => void; /** Fired on `form:change` — detail: `{ name, value, values }` */ onChange?: (detail: unknown, event: CustomEvent) => void; /** Fired on `form:reset` — detail: `(no detail)` */ onReset?: (detail: unknown, event: CustomEvent) => void; /** Extra props are forwarded to the rendered `
` element. */ [key: string]: unknown; } export function Form(props: FormProps) { const { as, className, children, onSubmit, onInvalid, onChange, onReset, mode, validators, messages, ...rest } = props; const options = { mode, validators, messages } as FormOptions; return ( {children as ReactNode} ); }