import 'package:fl_query/fl_query.dart'; import 'package:fl_query_hooks/fl_query_hooks.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:spotify/spotify.dart'; import 'package:spotube/provider/spotify_provider.dart'; Mutation useSpotifyMutation( String mutationKey, Future Function(VariablesType variables, SpotifyApi spotify) mutationFn, { required WidgetRef ref, RetryConfig? retryConfig, MutationOnDataFn? onData, MutationOnErrorFn? onError, MutationOnMutationFn? onMutate, List? refreshQueries, List? refreshInfiniteQueries, List? keys, }) { final spotify = ref.watch(spotifyProvider); final mutation = useMutation( mutationKey, (variables) => mutationFn(variables, spotify), retryConfig: retryConfig, onData: onData, onError: onError, onMutate: onMutate, refreshQueries: refreshQueries, refreshInfiniteQueries: refreshInfiniteQueries, keys: keys, ); return mutation; }