useForm
Creates the form API, default values, validation mode, and state object that everything else reads from.
Creates the form API, default values, validation mode, and state object that everything else reads from.
Connects native inputs to the form and attaches rules without extra wrappers.
Bridges controlled components into the same form state when direct registration is not possible.
Restores defaults, clears errors, and can optionally keep parts of the current state.
Required: Rules are registered, but untouched fields usually do not show errors yet.
Dirty: `isDirty` is false because current values still match defaults.
Validity: `isValid` depends on the chosen validation mode.
Reset: `reset()` returns to this clean baseline.
Required: The required rule is now satisfied.
Dirty: Dirty state becomes true because the value diverged from the default.
Validity: Validity turns true once validation runs and no other errors remain.
Reset: `reset()` restores the original value and clears dirty state.
Required: The field fails the required rule again.
Dirty: The field stays dirty until it matches the default exactly.
Validity: `isValid` becomes false after validation runs.
Reset: `reset()` clears the error when defaults are valid.
Required: Rules stay attached to the field definitions.
Dirty: Dirty tracking is re-based against the new defaults.
Validity: Validity is recalculated from the new reset state.
Reset: Those new values become the fresh clean snapshot.