93 lines
2.2 KiB
Dart
93 lines
2.2 KiB
Dart
import 'package:chat/models/page_model.dart';
|
|
import 'package:chat/models/user_info_model.dart';
|
|
|
|
class MomentModel {
|
|
MomentModel({
|
|
this.data,
|
|
this.page,
|
|
});
|
|
|
|
List<MomentItemModel>? data;
|
|
PageModel? page;
|
|
|
|
factory MomentModel.fromJson(Map<String, dynamic> json) => MomentModel(
|
|
data: List<MomentItemModel>.from(
|
|
json['data'].map(
|
|
(x) => MomentItemModel.fromJson(x),
|
|
),
|
|
),
|
|
page: PageModel.fromJson(json['page']),
|
|
);
|
|
}
|
|
|
|
class MomentItemModel {
|
|
MomentItemModel({
|
|
this.dynamicId,
|
|
this.user,
|
|
this.description,
|
|
this.pictures,
|
|
this.isLike,
|
|
this.isMe,
|
|
this.likerCount,
|
|
this.liker,
|
|
this.comments,
|
|
this.createdAt,
|
|
this.time,
|
|
});
|
|
|
|
int? dynamicId;
|
|
UserInfoModel? user;
|
|
String? description;
|
|
bool? isLike;
|
|
bool? isMe;
|
|
int? likerCount;
|
|
List<String>? pictures;
|
|
List<UserInfoModel>? liker;
|
|
List<Comment>? comments;
|
|
String? createdAt;
|
|
String? time;
|
|
|
|
factory MomentItemModel.fromJson(Map<String, dynamic> json) =>
|
|
MomentItemModel(
|
|
dynamicId: json['dynamic_id'],
|
|
user: UserInfoModel.fromJson(json['user']),
|
|
description: json['description'],
|
|
pictures: List<String>.from(json['pictures'].map((x) => x)),
|
|
isLike: json['is_like'],
|
|
isMe: json['is_me'],
|
|
likerCount: json['liker_count'],
|
|
liker: List<UserInfoModel>.from(
|
|
json['liker'].map((x) => UserInfoModel.fromJson(x))),
|
|
comments: List<Comment>.from(
|
|
json['comments'].map((x) => Comment.fromJson(x))),
|
|
createdAt: json['created_at'],
|
|
time: json['time'],
|
|
);
|
|
}
|
|
|
|
class Comment {
|
|
Comment({
|
|
this.id,
|
|
this.user,
|
|
this.parent,
|
|
this.content,
|
|
required this.isMe,
|
|
});
|
|
|
|
int? id;
|
|
UserInfoModel? user;
|
|
UserInfoModel? parent;
|
|
String? content;
|
|
bool isMe;
|
|
|
|
factory Comment.fromJson(Map<String, dynamic> json) => Comment(
|
|
id: json['comment_id'],
|
|
parent: json['parent'] == null
|
|
? null
|
|
: UserInfoModel.fromJson(json['parent']),
|
|
user: UserInfoModel.fromJson(json['user']),
|
|
content: json['content'],
|
|
isMe: json['is_me'],
|
|
);
|
|
}
|