@@ -9,6 +9,7 @@ import 'package:spotube/collections/fake.dart';
9
9
10
10
import 'package:spotube/collections/spotube_icons.dart' ;
11
11
import 'package:spotube/components/album/album_card.dart' ;
12
+ import 'package:spotube/components/shared/fallbacks/not_found.dart' ;
12
13
import 'package:spotube/components/shared/inter_scrollbar/inter_scrollbar.dart' ;
13
14
import 'package:spotube/components/shared/fallbacks/anonymous_fallback.dart' ;
14
15
import 'package:spotube/components/shared/waypoint.dart' ;
@@ -84,30 +85,37 @@ class UserAlbums extends HookConsumerWidget {
84
85
padding: const EdgeInsets .all (8.0 ),
85
86
controller: controller,
86
87
child: Skeletonizer (
87
- enabled: albums.isEmpty,
88
- child: Wrap (
89
- runSpacing: 20 ,
90
- alignment: WrapAlignment .center,
91
- runAlignment: WrapAlignment .center,
92
- crossAxisAlignment: WrapCrossAlignment .center,
93
- children: [
94
- if (albums.isEmpty)
95
- ...List .generate (
96
- 10 ,
97
- (index) => AlbumCard (FakeData .album),
98
- ),
99
- for (final album in albums)
100
- AlbumCard (
101
- TypeConversionUtils .simpleAlbum_X_Album (album),
102
- ),
103
- if (albums.isNotEmpty && albumsQuery.hasNextPage)
104
- Waypoint (
105
- controller: controller,
106
- isGrid: true ,
107
- onTouchEdge: albumsQuery.fetchNext,
108
- child: AlbumCard (FakeData .album),
109
- )
110
- ],
88
+ enabled: albums.isEmpty && albumsQuery.isLoadingNextPage,
89
+ child: Center (
90
+ child: Wrap (
91
+ runSpacing: 20 ,
92
+ alignment: WrapAlignment .center,
93
+ runAlignment: WrapAlignment .center,
94
+ crossAxisAlignment: WrapCrossAlignment .center,
95
+ children: [
96
+ if (albums.isEmpty && albumsQuery.isLoadingNextPage)
97
+ ...List .generate (
98
+ 10 ,
99
+ (index) => AlbumCard (FakeData .album),
100
+ )
101
+ else if (albums.isEmpty)
102
+ const Row (
103
+ mainAxisAlignment: MainAxisAlignment .center,
104
+ children: [NotFound ()],
105
+ ),
106
+ for (final album in albums)
107
+ AlbumCard (
108
+ TypeConversionUtils .simpleAlbum_X_Album (album),
109
+ ),
110
+ if (albums.isNotEmpty && albumsQuery.hasNextPage)
111
+ Waypoint (
112
+ controller: controller,
113
+ isGrid: true ,
114
+ onTouchEdge: albumsQuery.fetchNext,
115
+ child: AlbumCard (FakeData .album),
116
+ )
117
+ ],
118
+ ),
111
119
),
112
120
),
113
121
),
0 commit comments