Go back to a previous method with the hope it breaks less (as keeps happening immediately after publishing - of course - not before)
Don't break nullable parameters
Once more, let's not forget the other spot that needed the fix.
Turn the metaphorical wrench a few more times. (fix InvalidType
again)
Hopefully fix instances where the generator produces InvalidType
Fixed a couple bugs in generation
Support eager FutureOr
returns (ie. FutureOr<String> getValue() => 'Eager'
) which skips MutationLoading
Add result super-interfaces MutationResult<T>
and MutationSuccessResult<T>
(which implements MutationResult<T>
)
- This allows you to make extensions on mutations that have results, allowing you to do things like
bool get hasValue => value != null;
- Notice, this does not handle nullable return types.
Add super-interfaces to all mutation classes
AsyncMutation
:MutationIdle
,MutationSuccess
,MutationFailure
,MutationLoading
SyncMutation
:MutationIdle
,MutationSuccess
,MutationFailure
Fix a bug regarding .result
breaking classes
Support returned values from a notifier method with .result
Add dependencies to the mutation providers
Fixed an issue where a private notifier generated a private extension
Added super-interfaces for all mutation classes to inherit
Expand dependencies to allow greater compatibility with other packages
Fixed a bug where a @mutationKey
failed when the surrounding provider was not a family
Refactor to have less bad generator code.
Supports annotating methods on an @riverpod
class with @mutation
to generate a final yourMethod = ref.watch(yourProvider.yourMethod)
setup that allows you to track the state of a mutating method.
Supports annotating parameters on an @mutation
method with @mutationKey
to make those parameters act as family parameters for that method
- say,
final yourMethod = ref.watch(yourProvider.yourMethod(id: 2))
- where,
void yourMethod({required int id}) ()
- used as,
yourMethod();
- The family-ified method's parameter is removed from the caller, as it's already stored in the object in
yourMethod.params.id
- The family-ified method's parameter is removed from the caller, as it's already stored in the object in
Initial upload