@@ -3,6 +3,7 @@ import 'package:dio/dio.dart';
33import '../model/request/activity_request.dart' ;
44import '../model/response/activity_comment_response.dart' ;
55import '../model/response/activity_response.dart' ;
6+ import '../model/response/page_response.dart' ;
67import 'helpers/api_helper.dart' ;
78
89/// API methods for managing activities.
@@ -12,32 +13,47 @@ class ActivityApi {
1213 /// Retrieves a list of activities.
1314 ///
1415 /// Returns a list of [ActivityResponse] objects.
15- static Future <List <ActivityResponse >> getActivities () async {
16- Response ? response =
17- await ApiHelper .makeRequest ('${ActivityApi .url }all' , 'GET' );
18- final data = List <Map <String , dynamic >>.from (response? .data);
19- return data.map ((e) => ActivityResponse .fromMap (e)).toList ();
16+ static Future <PageResponse <ActivityResponse >> getActivities (
17+ int pageNumber) async {
18+ Response ? response = await ApiHelper .makeRequest (
19+ '${ActivityApi .url }all' , 'GET' ,
20+ queryParams: {'page' : pageNumber, 'size' : 5 });
21+
22+ PageResponse pageResponse = PageResponse .fromMap (response? .data);
23+ final data = List <Map <String , dynamic >>.from (pageResponse.list);
24+ List <ActivityResponse > activities =
25+ data.map ((e) => ActivityResponse .fromMap (e)).toList ();
26+ return PageResponse (list: activities, total: pageResponse.total);
2027 }
2128
2229 /// Retrieves a list of my activities and my friends.
2330 ///
2431 /// Returns a list of [ActivityResponse] objects.
25- static Future <List <ActivityResponse >> getMyAndMyFriendsActivities () async {
32+ static Future <PageResponse <ActivityResponse >> getMyAndMyFriendsActivities (
33+ int pageNumber) async {
2634 Response ? response = await ApiHelper .makeRequest (
2735 '${ActivityApi .url }friends' , 'GET' ,
28- noCache: true );
29- final data = List <Map <String , dynamic >>.from (response? .data);
30- return data.map ((e) => ActivityResponse .fromMap (e)).toList ();
36+ queryParams: {'page' : pageNumber, 'size' : 3 }, noCache: true );
37+ PageResponse pageResponse = PageResponse .fromMap (response? .data);
38+ final data = List <Map <String , dynamic >>.from (pageResponse.list);
39+ List <ActivityResponse > activities =
40+ data.map ((e) => ActivityResponse .fromMap (e)).toList ();
41+ return PageResponse (list: activities, total: pageResponse.total);
3142 }
3243
3344 /// Retrieves a list of a user activities.
3445 ///
3546 /// Returns a list of [ActivityResponse] objects.
36- static Future <List <ActivityResponse >> getUserActivities (String userId) async {
37- Response ? response =
38- await ApiHelper .makeRequest ('${ActivityApi .url }user/$userId ' , 'GET' );
39- final data = List <Map <String , dynamic >>.from (response? .data);
40- return data.map ((e) => ActivityResponse .fromMap (e)).toList ();
47+ static Future <PageResponse <ActivityResponse >> getUserActivities (
48+ String userId, int pageNumber) async {
49+ Response ? response = await ApiHelper .makeRequest (
50+ '${ActivityApi .url }user/$userId ' , 'GET' ,
51+ queryParams: {'page' : pageNumber, 'size' : 5 });
52+ PageResponse pageResponse = PageResponse .fromMap (response? .data);
53+ final data = List <Map <String , dynamic >>.from (pageResponse.list);
54+ List <ActivityResponse > activities =
55+ data.map ((e) => ActivityResponse .fromMap (e)).toList ();
56+ return PageResponse (list: activities, total: pageResponse.total);
4157 }
4258
4359 /// Retrieves an activity by its ID.
0 commit comments