chore: spotify home feed recommendations now showing up

This commit is contained in:
Kingkor Roy Tirtho 2025-03-15 17:00:57 +06:00
parent c59b5c651e
commit 290affd435
3 changed files with 4 additions and 22 deletions

View File

@ -1,5 +1,4 @@
import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:spotube/provider/authentication/authentication.dart';
import 'package:spotube/provider/custom_spotify_endpoint_provider.dart'; import 'package:spotube/provider/custom_spotify_endpoint_provider.dart';
import 'package:spotube/provider/user_preferences/user_preferences_provider.dart'; import 'package:spotube/provider/user_preferences/user_preferences_provider.dart';
@ -7,16 +6,8 @@ final homeViewProvider = FutureProvider((ref) async {
final country = ref.watch( final country = ref.watch(
userPreferencesProvider.select((s) => s.market), userPreferencesProvider.select((s) => s.market),
); );
final spTCookie = ref.watch(
authenticationProvider.select((s) => s.asData?.value?.getCookie("sp_t")),
);
if (spTCookie == null) return null;
final spotify = ref.watch(customSpotifyEndpointProvider); final spotify = ref.watch(customSpotifyEndpointProvider);
return spotify.getHomeFeed( return spotify.getHomeFeed(country: country);
country: country,
spTCookie: spTCookie,
);
}); });

View File

@ -1,26 +1,19 @@
import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:spotube/models/spotify/home_feed.dart'; import 'package:spotube/models/spotify/home_feed.dart';
import 'package:spotube/provider/authentication/authentication.dart';
import 'package:spotube/provider/custom_spotify_endpoint_provider.dart'; import 'package:spotube/provider/custom_spotify_endpoint_provider.dart';
import 'package:spotube/provider/user_preferences/user_preferences_provider.dart'; import 'package:spotube/provider/user_preferences/user_preferences_provider.dart';
final homeSectionViewProvider = final homeSectionViewProvider =
FutureProvider.family<SpotifyHomeFeedSection?, String>( FutureProvider.family<SpotifyHomeFeedSection, String>(
(ref, sectionUri) async { (ref, sectionUri) async {
final country = ref.watch( final country = ref.watch(
userPreferencesProvider.select((s) => s.market), userPreferencesProvider.select((s) => s.market),
); );
final spTCookie = ref.watch(
authenticationProvider.select((s) => s.asData?.value?.getCookie("sp_t")),
);
if (spTCookie == null) return null;
final spotify = ref.watch(customSpotifyEndpointProvider); final spotify = ref.watch(customSpotifyEndpointProvider);
return spotify.getHomeFeedSection( return spotify.getHomeFeedSection(
sectionUri, sectionUri,
country: country, country: country,
spTCookie: spTCookie,
); );
}); });

View File

@ -117,7 +117,6 @@ class CustomSpotifyEndpoints {
} }
Future<SpotifyHomeFeed> getHomeFeed({ Future<SpotifyHomeFeed> getHomeFeed({
required String spTCookie,
required Market country, required Market country,
}) async { }) async {
final headers = { final headers = {
@ -137,7 +136,7 @@ class CustomSpotifyEndpoints {
"operationName": "home", "operationName": "home",
"variables": jsonEncode({ "variables": jsonEncode({
"timeZone": tz.local.name, "timeZone": tz.local.name,
"sp_t": spTCookie, "sp_t": "",
"country": country.name, "country": country.name,
"facet": null, "facet": null,
"sectionItemsLimit": 10 "sectionItemsLimit": 10
@ -169,7 +168,6 @@ class CustomSpotifyEndpoints {
Future<SpotifyHomeFeedSection> getHomeFeedSection( Future<SpotifyHomeFeedSection> getHomeFeedSection(
String sectionUri, { String sectionUri, {
required String spTCookie,
required Market country, required Market country,
}) async { }) async {
final headers = { final headers = {
@ -189,7 +187,7 @@ class CustomSpotifyEndpoints {
"operationName": "homeSection", "operationName": "homeSection",
"variables": jsonEncode({ "variables": jsonEncode({
"timeZone": tz.local.name, "timeZone": tz.local.name,
"sp_t": spTCookie, "sp_t": "",
"country": country.name, "country": country.name,
"uri": sectionUri "uri": sectionUri
}), }),