mirror of
https://github.com/Iconica-Development/flutter_timeline.git
synced 2025-05-19 10:33:44 +02:00
fix: fix FirebaseTimelineService now proper implements
This commit is contained in:
parent
7e7f74a02b
commit
525d8d3be6
1 changed files with 10 additions and 4 deletions
|
@ -13,8 +13,9 @@ import 'package:flutter_timeline_firebase/src/models/firebase_user_document.dart
|
|||
import 'package:flutter_timeline_interface/flutter_timeline_interface.dart';
|
||||
import 'package:uuid/uuid.dart';
|
||||
|
||||
class FirebaseTimelinePostService extends TimelinePostService
|
||||
with TimelineUserService {
|
||||
class FirebaseTimelinePostService
|
||||
with TimelineUserService, ChangeNotifier
|
||||
implements TimelinePostService {
|
||||
FirebaseTimelinePostService({
|
||||
required TimelineUserService userService,
|
||||
FirebaseApp? app,
|
||||
|
@ -34,6 +35,9 @@ class FirebaseTimelinePostService extends TimelinePostService
|
|||
|
||||
final Map<String, TimelinePosterUserModel> _users = {};
|
||||
|
||||
@override
|
||||
List<TimelinePost> posts = [];
|
||||
|
||||
@override
|
||||
Future<TimelinePost> createPost(TimelinePost post) async {
|
||||
var postId = const Uuid().v4();
|
||||
|
@ -119,14 +123,16 @@ class FirebaseTimelinePostService extends TimelinePostService
|
|||
.get()
|
||||
: await _db.collection(_options.timelineCollectionName).get();
|
||||
|
||||
posts = <TimelinePost>[];
|
||||
var fetchedPosts = <TimelinePost>[];
|
||||
for (var doc in snapshot.docs) {
|
||||
var data = doc.data();
|
||||
var user = await _userService.getUser(data['creator_id']);
|
||||
var post = TimelinePost.fromJson(doc.id, data).copyWith(creator: user);
|
||||
posts.add(post);
|
||||
fetchedPosts.add(post);
|
||||
}
|
||||
|
||||
posts = fetchedPosts;
|
||||
|
||||
notifyListeners();
|
||||
return posts;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue