23 Commits

Author SHA1 Message Date
eb922a225e Change provider_name_strip_pattern to default wiht Notifier$ (#4237)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- Refactor
- Generated provider names were simplified: symbols now end with
"Provider" instead of "NotifierProvider". Update any app references and
samples.
- Documentation
- README and docs clarify the default strip pattern and examples now use
the new ...Provider names.
- Tests
  - Updated and added tests to assert the new default naming behavior.
- Chores
- Configuration parsing tightened to always supply default naming
values.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-14 20:03:17 +02:00
bbe36ab06c Handle (T,) records in generated code (#4226) 2025-08-11 22:16:34 +02:00
bd9521f214 Generate 2025-08-10 22:36:15 +02:00
4dfb429172 Generate 2025-08-10 20:40:36 +02:00
01ed6911a4 Rework mutations (#4170)
## Related Issues

Mutations are reworked to be independent from notifiers and do not
require code-gen.

## Checklist

Before you create this PR confirm that it meets all requirements listed
below by checking the relevant checkboxes (`[x]`).

- [x] I have updated the `CHANGELOG.md` of the relevant packages.
      Changelog files must be edited under the form:

  ```md
  ## Unreleased fix/major/minor

  - Description of your change. (thanks to @yourGithubId)
  ```

- [x] If this contains new features or behavior changes,
      I have updated the documentation to match those changes.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced a new mutation system that no longer requires code
generation, enabling UI to react to side-effects with loading, success,
and error states.
- Added experimental mutation APIs to Riverpod, Flutter Riverpod, and
Hooks Riverpod packages for enhanced state management.
- Included new mixins and interfaces to simplify creating custom
provider listenables.
- Added widget test helpers and improved mutation state matchers for
testing.

- **Bug Fixes**
- Enhanced error handling and reporting during mutation lifecycle
events.
- Fixed issues with Notifier lifecycle and provider observer context
related to mutations.

- **Refactor**
- Removed legacy mutation annotation logic and related code from
analyzer, generator, and annotation packages.
- Simplified generated provider classes by removing explicit element
creation overrides.
- Updated internal APIs to replace `MutationContext` with direct
`Mutation` usage and adjusted related observer interfaces.

- **Documentation**
- Revised mutation feature documentation to reflect new API design
without code generation.
- Corrected migration guide links and updated changelogs to reflect
annotation and mutation system changes.

- **Tests**
- Added extensive mutation tests covering state transitions,
concurrency, reset behavior, and observer notifications.
- Improved test utilities with new matchers for mutation states and
context.

- **Chores**
- Removed obsolete mutation-related test files, templates, and internal
annotation handling to maintain codebase clarity.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-06-20 01:23:40 +02:00
5bf55e19a4 Use AsyncValue as internal state for everything (#4141) 2025-06-03 12:23:38 +02:00
4eecf80511 Add Type Arg to ProviderBase/ProviderElement (#4140) 2025-06-02 20:32:45 +02:00
1566bd03fd Simplify Persist (#4131)
This changes the Persist syntax a bit to simplify its usage.

This removes the `with Persistable`

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
- Introduced a new `persistJson` method for JSON-based state
persistence, simplifying how persistence is integrated and allowing for
custom encoding/decoding.
- Added a `key` getter to provide default storage keys for persisted
providers.
- Exposed `NotifierPersistX` and related persistence utilities for
broader use in persistence scenarios.

- **Refactor**
- Unified and updated type signatures for notifiers and persistence
methods, improving type safety and consistency across providers.
- Simplified persistence API usage by removing the need for mixins and
named parameters, favoring direct method calls with positional
arguments.

- **Documentation**
- Updated documentation and code examples to reflect the new persistence
API and usage patterns.

- **Tests**
- Enhanced test coverage to validate the new persistence approach and
updated type signatures.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-31 20:47:38 +02:00
f5f2fd3aa8 Generated 2025-04-30 20:41:52 +02:00
2eca60ca40 Farious refactors (#4081) 2025-04-24 21:34:15 +02:00
e7cbef0d9f NotifierBase => AnyNotifier 2025-04-23 19:00:36 +02:00
54f3d9a561 Simplify override logic (#4070) 2025-04-21 11:04:07 +02:00
2c09a1a4f7 Sync dev with master (#4068) 2025-04-20 17:58:08 +02:00
4c0b722c5d Update generated code 2024-10-18 19:05:25 +02:00
e789011954 Rename Refs in docs 2024-10-18 18:53:24 +02:00
aab54f72a9 Update generated code 2024-10-18 18:38:37 +02:00
02b86a2bd6 Translation [KO]: Comments in code (#3514)
This PR adds "{@template}" to the source code of the documentation, 
and provides the latest Korean translation (include comments in code) of
the following pages.

- introduction: 2 pages
- essentials: 11 pages
- from_provider: 2 pages
- advanced: 1 page

Thanks

---------

Co-authored-by: Remi Rousselet <darky12s@gmail.com>
2024-05-07 08:51:59 +02:00
e81f93c34a Revert "Revert e0360815e8b28b2e2e9cd9e18fa4f291493acef9 (#3052)"
This reverts commit e89ab7de07625d5975abeb593a0e1a73a94bbcad.
2023-10-29 02:21:35 +01:00
e89ab7de07 Revert e0360815e8b28b2e2e9cd9e18fa4f291493acef9 (#3052) 2023-10-28 22:40:35 +02:00
e0360815e8 Use stable version of riverpod_generator in master branch (#3049) 2023-10-28 16:43:09 +02:00
d359f2f7c1 Update raw.dart (#2976)
Another in raw.dart :D
2023-10-12 12:26:09 +02:00
97c48cff89 Update codegen.dart (#2975) 2023-10-12 11:05:32 +02:00
dbf47a3953 Documentation update (#1618) (#1728) 2023-10-11 15:18:35 +02:00