diff --git a/CHANGELOG.md b/CHANGELOG.md index c386961c..ea314403 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -## Unreleased +## 0.3.0 * Validation modes are now yours to write. `ValidationMode` is a sealed class, and a rule none of the four modes states is a class that extends `CustomValidationMode` and overrides `decide`. * The rule gets a `ValidationContext`: which event is happening (`valueChanged`, `unfocus` or `dependencyChanged`), whether the user has ever left the field after editing it, whether `validate()` has ever run on it, and how the last finished check ended. @@ -10,7 +10,10 @@ * The docs have a page for it with a live demo and examples such as "live while invalid" and "live after the first submit"; the README and the skill cover it too. * New built-in mode `ValidationMode.afterFirstUnfocus`: quiet while the user types, validates when the field is first left, and from then on validates every edit, so an error disappears the moment the value is fixed. * The mode pickers in the docs demos are pills that wrap, so every mode name is readable on a phone. -* Breaking: `ValidationMode` is no longer an enum. The constants `ValidationMode.manual` and the rest still work; `ValidationMode.values` and `.name` are gone, and a `switch` over the modes matches on the classes behind the constants (`ManualValidationMode()` and so on) with `CustomValidationMode()` as the last case. + +Breaking changes: + +* `ValidationMode` is no longer an enum. The constants `ValidationMode.manual` and the rest still work; `ValidationMode.values` and `.name` are gone, and a `switch` over the modes matches on the classes behind the constants (`ManualValidationMode()` and so on) with `CustomValidationMode()` as the last case. * Removed the deprecated `AdvancedFieldController.stream` extension, as announced; listen with `addListener`, `subscribeToFields` or the builder widgets, and wrap a listener in a `StreamController` where a pipeline needs a stream. ## 0.2.4 diff --git a/example/pubspec.lock b/example/pubspec.lock index 804346c8..1c63da7e 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -15,7 +15,7 @@ packages: path: ".." relative: true source: path - version: "0.2.4" + version: "0.3.0" analyzer: dependency: transitive description: diff --git a/example/pubspec.yaml b/example/pubspec.yaml index b7451697..0a029780 100644 --- a/example/pubspec.yaml +++ b/example/pubspec.yaml @@ -1,7 +1,7 @@ name: advanced_forms_example description: Gallery app for advanced_forms — one screen per documented form pattern. publish_to: "none" -version: 0.2.4 +version: 0.3.0 environment: sdk: ">=3.3.0 <4.0.0" diff --git a/pubspec.yaml b/pubspec.yaml index 1c92f6c6..96b7ef0f 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: advanced_forms description: Flutter form validation and state management — typed controllers for text, checkbox, dropdown and multi-select fields, async and cross-field validators, and subforms. -version: 0.2.4 +version: 0.3.0 homepage: https://github.com/leancodepl/advanced_forms repository: https://github.com/leancodepl/advanced_forms issue_tracker: https://github.com/leancodepl/advanced_forms/issues