forked from eatvio/eatvio_app
124 lines
2.7 KiB
Dart
124 lines
2.7 KiB
Dart
import 'package:eatvio_app/features/feed/models/comment_model.dart';
|
|
import 'package:eatvio_app/features/feed/models/diets_pagination_model.dart';
|
|
import 'package:eatvio_app/features/feed/models/feed_blog_post_settings_model.dart';
|
|
import 'package:eatvio_app/features/feed/models/recipes_model.dart';
|
|
import 'package:eatvio_app/features/feed/services/feed_service.dart';
|
|
|
|
class FeedRepository {
|
|
final FeedService feedService;
|
|
|
|
FeedRepository({required this.feedService});
|
|
|
|
Future<FeedBlogPostSettingsModel> getFeedBlogPosts({int page = 1}) async {
|
|
try {
|
|
return (await feedService.getBlocPostList(page: page));
|
|
} catch (e) {
|
|
rethrow;
|
|
}
|
|
}
|
|
|
|
Future<List<Recipes>> getRecipes() async {
|
|
try {
|
|
return (await feedService.getRecipes()).recipesList;
|
|
} catch (e) {
|
|
rethrow;
|
|
}
|
|
}
|
|
|
|
Future<DietsPagination> getDiets() async {
|
|
try {
|
|
return (await feedService.getDiets());
|
|
} catch (e) {
|
|
rethrow;
|
|
}
|
|
}
|
|
|
|
Future<Comment> getBlogPostComments(int id) async {
|
|
try {
|
|
return (await feedService.getBlogPostComments(id: id));
|
|
} catch (e) {
|
|
rethrow;
|
|
}
|
|
}
|
|
|
|
Future<void> sendBlogPostComment({
|
|
required int id,
|
|
required String commentText,
|
|
int? parentCommentId,
|
|
}) async {
|
|
try {
|
|
await feedService.sendBlogPostComment(
|
|
id: id,
|
|
body: commentText,
|
|
parentCommentId: parentCommentId,
|
|
);
|
|
} catch (e) {
|
|
rethrow;
|
|
}
|
|
}
|
|
|
|
Future<Comment> getDietsComments(int id) async {
|
|
try {
|
|
return (await feedService.getDietsComments(id: id));
|
|
} catch (e) {
|
|
rethrow;
|
|
}
|
|
}
|
|
|
|
Future<void> sendDietsComment({
|
|
required int id,
|
|
required String commentText,
|
|
int? parentCommentId,
|
|
}) async {
|
|
try {
|
|
await feedService.sendDietsComment(
|
|
id: id,
|
|
body: commentText,
|
|
parentCommentId: parentCommentId,
|
|
);
|
|
} catch (e) {
|
|
rethrow;
|
|
}
|
|
}
|
|
|
|
Future<Comment> getRecipesComments(String id) async {
|
|
try {
|
|
return (await feedService.getRecipesComments(id: id));
|
|
} catch (e) {
|
|
rethrow;
|
|
}
|
|
}
|
|
|
|
Future<void> sendRecipesComment({
|
|
required String id,
|
|
required String commentText,
|
|
int? parentCommentId,
|
|
}) async {
|
|
try {
|
|
await feedService.sendRecipesComment(
|
|
id: id,
|
|
body: commentText,
|
|
parentCommentId: parentCommentId,
|
|
);
|
|
} catch (e) {
|
|
rethrow;
|
|
}
|
|
}
|
|
|
|
Future<void> likeBlogPost(int id) async {
|
|
try {
|
|
await feedService.likeBlogPost(id: id);
|
|
} catch (e) {
|
|
rethrow;
|
|
}
|
|
}
|
|
|
|
Future<void> unlikedBlogPost(int id) async {
|
|
try {
|
|
await feedService.unlikedBlogPost(id: id);
|
|
} catch (e) {
|
|
rethrow;
|
|
}
|
|
}
|
|
}
|