Files
eatvio_app/lib/features/feed/models/feed_blog_post_model.dart
2024-08-19 17:41:09 +03:00

27 lines
1.0 KiB
Dart

import 'package:eatvio_app/features/feed/models/diets_pagination_model.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
part 'feed_blog_post_model.freezed.dart';
part 'feed_blog_post_model.g.dart';
@freezed
class FeedBlogPostModel with _$FeedBlogPostModel {
const factory FeedBlogPostModel({
required int id,
required String state,
required String image,
required String description,
required Author author,
@JsonKey(name: "youtube_url") required String youtubeUrl,
@JsonKey(name: "created_at") required DateTime createdAt,
@JsonKey(name: "updated_at") required DateTime updatedAt,
required String title,
@JsonKey(name: "total_likes") required int totalLikes,
@JsonKey(name: "total_views") required int totalViews,
@JsonKey(name: "total_comments") required int totalComments,
@JsonKey(name: "was_liked_by_me") required bool wasLikedByMe,
}) = _FeedBlogPostModel;
factory FeedBlogPostModel.fromJson(Map<String, Object?> json) => _$FeedBlogPostModelFromJson(json);
}