You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
23 lines
647 B
23 lines
647 B
import 'package:cloud_firestore/cloud_firestore.dart';
|
|
import 'package:tuple/tuple.dart';
|
|
|
|
import '../../main.dart';
|
|
import '../Post.dart';
|
|
import '../User.dart';
|
|
|
|
class PostMapper {
|
|
static Future<Post> toModel (
|
|
DocumentSnapshot<Map<String, dynamic>> snapshot) async {
|
|
final data = snapshot.data();
|
|
User? user = await MyApp.userViewModel.getUser(data?['user_id']);
|
|
return Post(
|
|
snapshot.id,
|
|
user!,
|
|
data?["description"],
|
|
Tuple2(data?["place"][0], data?["place"][1]),
|
|
data?["likes"],
|
|
data?["selfie"],
|
|
data?["date"].toDate());
|
|
}
|
|
}
|