BlogPost.fromJson constructor

BlogPost.fromJson(
  1. Map<String, dynamic> json
)

Implementation

factory BlogPost.fromJson(Map<String, dynamic> json) {
  final publishedAt =
      DateTime.tryParse(json['published_at']?.toString() ?? '') ??
      DateTime.now();
  final createdAt =
      DateTime.tryParse(json['created_at']?.toString() ?? '') ?? publishedAt;
  final updatedAt =
      DateTime.tryParse(json['updated_at']?.toString() ?? '') ?? createdAt;

  return BlogPost(
    id: readInt(json['id']),
    title: json['title']?.toString() ?? '',
    slug: json['slug']?.toString() ?? '',
    excerpt: json['excerpt']?.toString() ?? '',
    content: json['content']?.toString() ?? '',
    featuredImage: json['featured_image']?.toString(),
    author: _readAuthor(json['author']),
    isPublished: readBool(json['is_published']),
    publishedAt: publishedAt,
    createdAt: createdAt,
    updatedAt: updatedAt,
    appId: readInt(json['app_id']),
  );
}