Skip to content

Commit 1d392be

Browse files
fix(llc): fix incorrect message order (#2132)
* fix(llc, persistence): prefer remoteCreatedAt over localCreatedAt while sorting messages. * chore: update CHANGELOG.md --------- Co-authored-by: Sahil Kumar <sahil@getstream.io>
1 parent 6ac8103 commit 1d392be

File tree

5 files changed

+30
-35
lines changed

5 files changed

+30
-35
lines changed

packages/stream_chat/CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
## Upcoming
2+
3+
🐞 Fixed
4+
5+
- [[#1775]](https://github.com/GetStream/stream-chat-flutter/issues/1775) Fix incorrect message order.
6+
17
## 9.5.0
28

39
✅ Added

packages/stream_chat/lib/src/core/models/message.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ class Message extends Equatable {
165165
/// Returns the latest between [localCreatedAt] and [remoteCreatedAt].
166166
/// If both are null, returns [DateTime.now].
167167
@JsonKey(includeToJson: false)
168-
DateTime get createdAt => localCreatedAt ?? remoteCreatedAt ?? DateTime.now();
168+
DateTime get createdAt => remoteCreatedAt ?? localCreatedAt ?? DateTime.now();
169169

170170
/// Indicates when the message was created locally.
171171
@JsonKey(includeToJson: false, includeFromJson: false)
@@ -180,7 +180,7 @@ class Message extends Equatable {
180180
/// Returns the latest between [localUpdatedAt] and [remoteUpdatedAt].
181181
/// If both are null, returns [createdAt].
182182
@JsonKey(includeToJson: false)
183-
DateTime get updatedAt => localUpdatedAt ?? remoteUpdatedAt ?? createdAt;
183+
DateTime get updatedAt => remoteUpdatedAt ?? localUpdatedAt ?? createdAt;
184184

185185
/// Indicates when the message was updated locally.
186186
@JsonKey(includeToJson: false, includeFromJson: false)
@@ -194,7 +194,7 @@ class Message extends Equatable {
194194
///
195195
/// Returns the latest between [localDeletedAt] and [remoteDeletedAt].
196196
@JsonKey(includeToJson: false)
197-
DateTime? get deletedAt => localDeletedAt ?? remoteDeletedAt;
197+
DateTime? get deletedAt => remoteDeletedAt ?? localDeletedAt;
198198

199199
/// Reserved field indicating when the message text was edited.
200200
@JsonKey(includeToJson: false)

packages/stream_chat_persistence/lib/src/db/drift_chat_database.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ class DriftChatDatabase extends _$DriftChatDatabase {
5353

5454
// you should bump this number whenever you change or add a table definition.
5555
@override
56-
int get schemaVersion => 17;
56+
int get schemaVersion => 18;
5757

5858
@override
5959
MigrationStrategy get migration => MigrationStrategy(

packages/stream_chat_persistence/lib/src/db/drift_chat_database.g.dart

Lines changed: 17 additions & 28 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/stream_chat_persistence/lib/src/entity/messages.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ class Messages extends Table {
5959
/// If both are null, returns [currentDateAndTime].
6060
Expression<DateTime> get createdAt {
6161
return coalesce<DateTime>(
62-
[localCreatedAt, remoteCreatedAt, currentDateAndTime],
62+
[remoteCreatedAt, localCreatedAt, currentDateAndTime],
6363
);
6464
}
6565

@@ -75,7 +75,7 @@ class Messages extends Table {
7575
/// If both are null, returns [createdAt].
7676
Expression<DateTime> get updatedAt {
7777
return coalesce<DateTime>(
78-
[localUpdatedAt, remoteUpdatedAt, createdAt],
78+
[remoteUpdatedAt, localUpdatedAt, createdAt],
7979
);
8080
}
8181

@@ -90,7 +90,7 @@ class Messages extends Table {
9090
/// Returns the latest between [localDeletedAt] and [remoteDeletedAt].
9191
Expression<DateTime> get deletedAt {
9292
return coalesce<DateTime>(
93-
[localDeletedAt, remoteDeletedAt],
93+
[remoteDeletedAt, localDeletedAt],
9494
);
9595
}
9696

0 commit comments

Comments
 (0)