fix: genre and sidebar user logo not loading

This commit is contained in:
Kingkor Roy Tirtho 2023-01-06 19:35:48 +06:00
parent d495709c99
commit 710f172dee
5 changed files with 47 additions and 20 deletions

View File

@ -1,5 +1,4 @@
import 'package:badges/badges.dart'; import 'package:badges/badges.dart';
import 'package:bitsdojo_window/bitsdojo_window.dart';
import 'package:fl_query_hooks/fl_query_hooks.dart'; import 'package:fl_query_hooks/fl_query_hooks.dart';
import 'package:flutter_hooks/flutter_hooks.dart'; import 'package:flutter_hooks/flutter_hooks.dart';
import 'package:go_router/go_router.dart'; import 'package:go_router/go_router.dart';
@ -194,9 +193,10 @@ class SidebarFooter extends HookConsumerWidget {
width: 256, width: 256,
child: HookBuilder( child: HookBuilder(
builder: (context) { builder: (context) {
var spotify = ref.watch(spotifyProvider);
final me = useQuery( final me = useQuery(
job: Queries.user.me, job: Queries.user.me,
externalData: ref.watch(spotifyProvider), externalData: spotify,
); );
final data = me.data; final data = me.data;
@ -206,6 +206,20 @@ class SidebarFooter extends HookConsumerWidget {
placeholder: ImagePlaceholder.artist, placeholder: ImagePlaceholder.artist,
); );
// TODO: Remove below code after fl-query ^0.4.0
/// Temporary fix before fl-query 0.4.0
final auth = ref.watch(authProvider);
useEffect(() {
if (auth.isLoggedIn && me.hasError) {
me.setExternalData(spotify);
me.refetch();
}
return null;
}, [auth, me.hasError]);
/// ===================================
return Padding( return Padding(
padding: const EdgeInsets.all(16).copyWith(left: 0), padding: const EdgeInsets.all(16).copyWith(left: 0),
child: Row( child: Row(

View File

@ -8,6 +8,7 @@ import 'package:spotube/components/genre/category_card.dart';
import 'package:spotube/components/shared/shimmers/shimmer_categories.dart'; import 'package:spotube/components/shared/shimmers/shimmer_categories.dart';
import 'package:spotube/components/shared/page_window_title_bar.dart'; import 'package:spotube/components/shared/page_window_title_bar.dart';
import 'package:spotube/components/shared/waypoint.dart'; import 'package:spotube/components/shared/waypoint.dart';
import 'package:spotube/provider/auth_provider.dart';
import 'package:spotube/provider/spotify_provider.dart'; import 'package:spotube/provider/spotify_provider.dart';
import 'package:spotube/provider/user_preferences_provider.dart'; import 'package:spotube/provider/user_preferences_provider.dart';
@ -47,6 +48,22 @@ class GenrePage extends HookConsumerWidget {
final isMounted = useIsMounted(); final isMounted = useIsMounted();
/// Temporary fix before fl-query 0.4.0
final auth = ref.watch(authProvider);
useEffect(() {
if (auth.isLoggedIn && categoriesQuery.hasError) {
categoriesQuery.setExternalData({
"spotify": spotify,
"recommendationMarket": recommendationMarket,
});
categoriesQuery.refetchPages();
}
return null;
}, [auth, categoriesQuery.hasError]);
/// ===================================
return PlatformScaffold( return PlatformScaffold(
appBar: kIsDesktop ? PageWindowTitleBar() : null, appBar: kIsDesktop ? PageWindowTitleBar() : null,
body: Waypoint( body: Waypoint(

View File

@ -10,7 +10,9 @@ class SearchQueries {
initialParam: 0, initialParam: 0,
enabled: false, enabled: false,
getNextPageParam: (lastPage, lastParam) => getNextPageParam: (lastPage, lastParam) =>
(lastPage.first.items?.length ?? 0) < 10 ? null : lastParam + 10, lastPage.isNotEmpty && (lastPage.first.items?.length ?? 0) < 10
? null
: lastParam + 10,
getPreviousPageParam: (lastPage, lastParam) => lastParam - 10, getPreviousPageParam: (lastPage, lastParam) => lastParam - 10,
task: (queryKey, pageParam, variables) { task: (queryKey, pageParam, variables) {
final queryString = variables.item1; final queryString = variables.item1;

View File

@ -130,54 +130,52 @@ packages:
audioplayers: audioplayers:
dependency: "direct main" dependency: "direct main"
description: description:
path: "packages/audioplayers" name: audioplayers
ref: "3ee12cd0361c0fc2f3d0303c504732d12fa8e49a" url: "https://pub.dartlang.org"
resolved-ref: "3ee12cd0361c0fc2f3d0303c504732d12fa8e49a" source: hosted
url: "https://github.com/bluefireteam/audioplayers.git" version: "1.2.0"
source: git
version: "1.0.1"
audioplayers_android: audioplayers_android:
dependency: transitive dependency: transitive
description: description:
name: audioplayers_android name: audioplayers_android
url: "https://pub.dartlang.org" url: "https://pub.dartlang.org"
source: hosted source: hosted
version: "1.0.1" version: "1.1.3"
audioplayers_darwin: audioplayers_darwin:
dependency: transitive dependency: transitive
description: description:
name: audioplayers_darwin name: audioplayers_darwin
url: "https://pub.dartlang.org" url: "https://pub.dartlang.org"
source: hosted source: hosted
version: "1.0.1" version: "1.0.4"
audioplayers_linux: audioplayers_linux:
dependency: transitive dependency: transitive
description: description:
name: audioplayers_linux name: audioplayers_linux
url: "https://pub.dartlang.org" url: "https://pub.dartlang.org"
source: hosted source: hosted
version: "1.0.0" version: "1.0.2"
audioplayers_platform_interface: audioplayers_platform_interface:
dependency: transitive dependency: transitive
description: description:
name: audioplayers_platform_interface name: audioplayers_platform_interface
url: "https://pub.dartlang.org" url: "https://pub.dartlang.org"
source: hosted source: hosted
version: "1.0.0" version: "2.1.0"
audioplayers_web: audioplayers_web:
dependency: transitive dependency: transitive
description: description:
name: audioplayers_web name: audioplayers_web
url: "https://pub.dartlang.org" url: "https://pub.dartlang.org"
source: hosted source: hosted
version: "1.0.0" version: "2.1.0"
audioplayers_windows: audioplayers_windows:
dependency: transitive dependency: transitive
description: description:
name: audioplayers_windows name: audioplayers_windows
url: "https://pub.dartlang.org" url: "https://pub.dartlang.org"
source: hosted source: hosted
version: "1.0.0" version: "1.1.1"
auto_size_text: auto_size_text:
dependency: "direct main" dependency: "direct main"
description: description:

View File

@ -39,11 +39,7 @@ dependencies:
hive: ^2.2.3 hive: ^2.2.3
hive_flutter: ^1.1.0 hive_flutter: ^1.1.0
dbus: ^0.7.3 dbus: ^0.7.3
audioplayers: audioplayers: ^1.2.0
git:
url: https://github.com/bluefireteam/audioplayers.git
ref: 3ee12cd0361c0fc2f3d0303c504732d12fa8e49a
path: packages/audioplayers/
introduction_screen: ^3.0.2 introduction_screen: ^3.0.2
audio_session: ^0.1.10 audio_session: ^0.1.10
file_picker: ^5.2.2 file_picker: ^5.2.2