fix(local/pending-message-repository): remove chunking

This commit is contained in:
Kiril Tijsma 2025-03-11 15:49:47 +01:00 committed by FlutterJoey
parent e1e23e7b35
commit 90610caabd

View file

@ -1,5 +1,4 @@
import "dart:async"; import "dart:async";
import "dart:math" as math;
import "package:chat_repository_interface/chat_repository_interface.dart"; import "package:chat_repository_interface/chat_repository_interface.dart";
import "package:chat_repository_interface/src/local/local_memory_db.dart"; import "package:chat_repository_interface/src/local/local_memory_db.dart";
@ -15,9 +14,6 @@ class LocalPendingMessageRepository
final StreamController<List<MessageModel>> _messageController = final StreamController<List<MessageModel>> _messageController =
BehaviorSubject<List<MessageModel>>(); BehaviorSubject<List<MessageModel>>();
final Map<String, int> _startIndexMap = {};
final Map<String, int> _endIndexMap = {};
@override @override
Stream<List<MessageModel>> getMessages({ Stream<List<MessageModel>> getMessages({
required String chatId, required String chatId,
@ -34,14 +30,7 @@ class LocalPendingMessageRepository
); );
allMessages.sort((a, b) => a.timestamp.compareTo(b.timestamp)); allMessages.sort((a, b) => a.timestamp.compareTo(b.timestamp));
_startIndexMap[chatId] ??= math.max(0, allMessages.length - chunkSize); _messageController.add(allMessages);
_endIndexMap[chatId] ??= allMessages.length;
var displayedMessages = allMessages.sublist(
_startIndexMap[chatId]!,
_endIndexMap[chatId],
);
_messageController.add(displayedMessages);
} }
return _messageController.stream; return _messageController.stream;