Skip to content

Commit 8856beb

Browse files
committed
Remove loop that gets user statuses in chunks
1 parent 0ad6b65 commit 8856beb

File tree

1 file changed

+4
-8
lines changed

1 file changed

+4
-8
lines changed

lib/src/view/relation/friend_screen.dart

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,11 @@ final followingStatusesProvider = FutureProvider.autoDispose<(IList<User>, IList
3030
return (IList<User>(), IList<UserStatus>());
3131
}
3232

33-
final ids = following.map((user) => user.id).toIList();
34-
final statuses = <UserStatus>[];
3533
// The /api/users/status endpoint accepts at most 100 IDs per request.
36-
for (var i = 0; i < ids.length; i += 100) {
37-
final chunk = ids.sublist(i, i + 100 < ids.length ? i + 100 : ids.length);
38-
final result = await ref.read(userRepositoryProvider).getUsersStatuses(chunk.toISet());
39-
statuses.addAll(result);
40-
}
41-
return (following, IList(statuses));
34+
final statuses = await ref
35+
.read(userRepositoryProvider)
36+
.getUsersStatuses(following.take(100).map((user) => user.id).toISet());
37+
return (following, statuses);
4238
});
4339

4440
class FriendScreen extends ConsumerStatefulWidget {

0 commit comments

Comments
 (0)