forked from eatvio/eatvio_app
80 lines
2.2 KiB
Dart
80 lines
2.2 KiB
Dart
import 'package:dio/dio.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_pagination_model.dart';
|
|
import 'package:retrofit/retrofit.dart';
|
|
|
|
part 'feed_service.g.dart';
|
|
|
|
@RestApi()
|
|
abstract class FeedService {
|
|
factory FeedService(Dio dio, {String baseUrl}) = _FeedService;
|
|
|
|
@GET('/api/blogPosts/index')
|
|
Future<FeedBlogPostSettingsModel> getBlogPostList({
|
|
@Query('page') required int page,
|
|
@Query('query_search') String? query,
|
|
});
|
|
|
|
@GET('/api/recipes/index')
|
|
Future<RecipesPagination> getRecipes({
|
|
@Query('page') required int page,
|
|
@Query('filters[tags][tags.id][\$in][]') required List<int>? tags,
|
|
@Query('filters[title][\$contains]') required String? query,
|
|
});
|
|
|
|
@GET('/api/diets/index')
|
|
Future<DietsPagination> getDiets({
|
|
@Query('page') required int page,
|
|
@Query('query_search') String? query,
|
|
});
|
|
|
|
@GET('/api/blogPosts/{id}/comments/show')
|
|
Future<CommentModel> getBlogPostComments({
|
|
@Path() required String id,
|
|
});
|
|
|
|
@POST('/api/blogPosts/{id}/comment/create')
|
|
Future<void> sendBlogPostComment({
|
|
@Path() required String id,
|
|
@Part() required String body,
|
|
@Part() int? parentCommentId,
|
|
});
|
|
|
|
@GET('/api/diets/{id}/comments/show')
|
|
Future<CommentModel> getDietsComments({
|
|
@Path() required String id,
|
|
});
|
|
|
|
@POST('/api/diets/{id}/comment/create')
|
|
Future<void> sendDietsComment({
|
|
@Path() required String id,
|
|
@Part() required String body,
|
|
@Part() int? parentCommentId,
|
|
});
|
|
|
|
@GET('/api/recipes/{id}/comments/show')
|
|
Future<CommentModel> getRecipesComments({
|
|
@Path() required String id,
|
|
});
|
|
|
|
@POST('/api/recipes/{id}/comment/create')
|
|
Future<void> sendRecipesComment({
|
|
@Path() required String id,
|
|
@Part() required String body,
|
|
@Part() int? parentCommentId,
|
|
});
|
|
|
|
@POST('/api/blogPosts/{id}/like')
|
|
Future<void> likeBlogPost({
|
|
@Path() required int id,
|
|
});
|
|
|
|
@POST('/api/blogPosts/{id}/unliked')
|
|
Future<void> unlikedBlogPost({
|
|
@Path() required int id,
|
|
});
|
|
|
|
}
|