form_forge_generator 1.0.1
form_forge_generator: ^1.0.1 copied to clipboard
Code generator for form_forge. Processes @FormForge() annotations and generates FormController and FormWidget classes via build_runner.
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.0.0 - 2026-02-27 #
Added #
- Multi-step wizard forms: Generate
Stepper-based widgets for forms with@FormStepfields- Step navigation:
currentStep,nextStep(),previousStep(),canGoNext,canGoBack - Per-step validation:
validateCurrentStep() - Step titles from annotation
- Step navigation:
- Conditional field visibility: Generate
_shouldShowFieldName()helpers for@ShowWhenfields - Field grouping: Generate grouped layouts with section headers for
@FieldGroupfields - New field type widgets:
@PhoneNumber→TextFormFieldwith phone keyboard and validation@SearchableDropdown→Autocompletewidget for enums@DateRange→showDateRangePickerintegration@Slider→Sliderwidget with configurable range and divisions@RatingInput→ Star rating row withIconButtons@ChipsInput→WrapwithChipandActionChipfor adding tags@ColorPicker→ Color preview with dialog picker@RichText→TextFormFieldwithminLines/maxLines
- Serialization: Generate
toJson()andfromJson()methods on controllers - Data class enhancements: Generate
toJson(),fromJson(), andcopyWith()on data classes - Theme support: Generated widgets read
FormForgeTheme.of(context)for styling - Persistence: Generate
_loadPersistedData()and_persistData()forpersistKeyforms - Focus management: Generate
FocusNodeper field withfocusNextField()and proper disposal - Async loading indicator: Show
CircularProgressIndicatorsuffix during async validation - Enabled state: Generated validators check
isEnabledbefore validating copyWith()andpopulateFrom()methods on controllers
Changed #
- Updated to
form_forge: ^1.0.0 - Async validation now uses
field.isValidatinginstead of separate map
0.1.2 - 2026-02-24 #
Changed #
- Upgraded
source_gento^4.0.0,buildto^4.0.0,analyzerto>=10.0.0 <12.0.0,build_testto^3.0.0 - Bumped minimum Dart SDK to
^3.7.0(required by upgraded deps) - Replaced deprecated
isSyntheticwithisOriginDeclarationfor analyzer 10.x compatibility - Migrated tests to build_test 3.x API (
TestBuilderResult/TestReaderWriter)
0.1.1 - 2026-02-23 #
Fixed #
- Removed unused
_baseNamemethod that causeddart analyzewarning - Eliminated lint suppressions (
// ignore: unused_field,// ignore: unused_element) in generated async validation code by wiring_triggerAsyncValidationinto widgetonChangedhandlers
Changed #
- Widened
analyzerdependency to>=6.0.0 <8.0.0 - Loosened
build_runnerconstraint from>=2.4.0 <2.5.0to^2.4.0
0.1.0 - 2026-02-21 #
Added #
FormForgeGenerator— processes@FormForge()annotations viabuild_runner- Generates
FormControllerwith typed fields, sync validation, cross-field validation, async validation - Generates
FormWidgetwith type-to-widget mapping (String, int, bool, DateTime, enum) - Generates
FormDataclass for typed form submission FieldResolverfor annotation parsing- Three-phase validation pipeline: sync → cross-field → async