Build a Form Builder component that dynamically creates form fields and validates user input.
1. Dynamic Field Creation
Support multiple field types: text, email, number, textarea, select
Add/remove fields dynamically
Each field has: type, label, name, placeholder, required flag
2. Form Validation
Required field validation
Email format validation
Number range validation (min/max)
Show error messages below invalid fields
Prevent form submission if validation fails
3. Form Submission
Collect all field values
Validate all fields before submission
Display success message on valid submission
Reset form after successful submission
4. Data Structure
interfaceFormField{ id:string; type:"text"|"email"|"number"|"textarea"|"select"; label:string; name:string; placeholder?:string; required?:boolean; options?:string[];// For select fields min?:number;// For number fields max?:number;// For number fields}interfaceFormData{[fieldName:string]:string|number;}