Validates the form and returns the form data if valid, or null if invalid.
Map<String, dynamic>? submit() { if (validate()) { return formData; } return null; }