mirror of
https://github.com/KRTirtho/spotube.git
synced 2026-05-09 00:34:36 +00:00
feat: add view and spotify friends provider
This commit is contained in:
parent
29ffc280a5
commit
f8550ae3d6
@ -13,6 +13,7 @@ import 'package:riverpod/src/async_notifier.dart';
|
|||||||
import 'package:spotube/extensions/map.dart';
|
import 'package:spotube/extensions/map.dart';
|
||||||
import 'package:spotube/models/lyrics.dart';
|
import 'package:spotube/models/lyrics.dart';
|
||||||
import 'package:spotube/models/spotify/recommendation_seeds.dart';
|
import 'package:spotube/models/spotify/recommendation_seeds.dart';
|
||||||
|
import 'package:spotube/models/spotify_friends.dart';
|
||||||
import 'package:spotube/provider/custom_spotify_endpoint_provider.dart';
|
import 'package:spotube/provider/custom_spotify_endpoint_provider.dart';
|
||||||
import 'package:spotube/provider/spotify_provider.dart';
|
import 'package:spotube/provider/spotify_provider.dart';
|
||||||
import 'package:spotube/provider/user_preferences/user_preferences_provider.dart';
|
import 'package:spotube/provider/user_preferences/user_preferences_provider.dart';
|
||||||
@ -46,6 +47,11 @@ part 'playlist/generate.dart';
|
|||||||
part 'search/search.dart';
|
part 'search/search.dart';
|
||||||
|
|
||||||
part 'user/me.dart';
|
part 'user/me.dart';
|
||||||
|
part 'user/friends.dart';
|
||||||
|
|
||||||
|
part 'tracks/track.dart';
|
||||||
|
|
||||||
|
part 'views/view.dart';
|
||||||
|
|
||||||
part 'utils/mixin.dart';
|
part 'utils/mixin.dart';
|
||||||
part 'utils/state.dart';
|
part 'utils/state.dart';
|
||||||
|
|||||||
7
lib/provider/spotify/tracks/track.dart
Normal file
7
lib/provider/spotify/tracks/track.dart
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
part of '../spotify.dart';
|
||||||
|
|
||||||
|
final trackProvider = FutureProvider.family<Track, String>((ref, id) async {
|
||||||
|
final spotify = ref.watch(spotifyProvider);
|
||||||
|
|
||||||
|
return spotify.tracks.get(id);
|
||||||
|
});
|
||||||
7
lib/provider/spotify/user/friends.dart
Normal file
7
lib/provider/spotify/user/friends.dart
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
part of '../spotify.dart';
|
||||||
|
|
||||||
|
final friendsProvider = FutureProvider<SpotifyFriends>((ref) async {
|
||||||
|
final customSpotify = ref.watch(customSpotifyEndpointProvider);
|
||||||
|
|
||||||
|
return customSpotify.getFriendActivity();
|
||||||
|
});
|
||||||
19
lib/provider/spotify/views/view.dart
Normal file
19
lib/provider/spotify/views/view.dart
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
part of '../spotify.dart';
|
||||||
|
|
||||||
|
final viewProvider = FutureProvider.family<Map<String, dynamic>, String>(
|
||||||
|
(ref, viewName) async {
|
||||||
|
final customSpotify = ref.watch(customSpotifyEndpointProvider);
|
||||||
|
final market = ref.watch(
|
||||||
|
userPreferencesProvider.select((s) => s.recommendationMarket),
|
||||||
|
);
|
||||||
|
final locale = ref.watch(
|
||||||
|
userPreferencesProvider.select((s) => s.locale),
|
||||||
|
);
|
||||||
|
|
||||||
|
return customSpotify.getView(
|
||||||
|
viewName,
|
||||||
|
market: market,
|
||||||
|
locale: Intl.canonicalizedLocale(locale.toString()),
|
||||||
|
);
|
||||||
|
},
|
||||||
|
);
|
||||||
Loading…
Reference in New Issue
Block a user