Merge branch 'develop' of https://github.com/GetStream/stream-chat-flutter into message-input-controller
This commit is contained in:
@@ -1,3 +1,7 @@
|
||||
## 3.2.0
|
||||
|
||||
- Updated `stream_chat` dependency to [`3.2.0`](https://pub.dev/packages/stream_chat/changelog).
|
||||
|
||||
## 3.1.1
|
||||
|
||||
- Updated `stream_chat` dependency to [`3.1.1`](https://pub.dev/packages/stream_chat/changelog).
|
||||
|
||||
@@ -9,6 +9,14 @@ import 'package:stream_chat_flutter_core/src/better_stream_builder.dart';
|
||||
import 'package:stream_chat_flutter_core/src/stream_channel.dart';
|
||||
import 'package:stream_chat_flutter_core/src/typedef.dart';
|
||||
|
||||
/// Default filter for the message list
|
||||
bool Function(Message) defaultMessageFilter(String currentUserId) =>
|
||||
(Message m) {
|
||||
final isMyMessage = m.user?.id == currentUserId;
|
||||
if (m.shadowed && !isMyMessage) return false;
|
||||
return true;
|
||||
};
|
||||
|
||||
/// [MessageListCore] is a simplified class that allows fetching a list of
|
||||
/// messages while exposing UI builders.
|
||||
///
|
||||
@@ -132,25 +140,20 @@ class MessageListCoreState extends State<MessageListCore> {
|
||||
? _streamChannel!.channel.state?.threads[widget.parentMessage!.id]
|
||||
: _streamChannel!.channel.state?.messages;
|
||||
|
||||
bool defaultFilter(Message m) {
|
||||
final isMyMessage = m.user?.id == _currentUser?.id;
|
||||
if (m.shadowed && !isMyMessage) return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
return BetterStreamBuilder<List<Message>>(
|
||||
initialData: initialData,
|
||||
comparator: const ListEquality().equals,
|
||||
stream: messagesStream!.map(
|
||||
(messages) =>
|
||||
messages?.where(widget.messageFilter ?? defaultFilter).toList(
|
||||
growable: false,
|
||||
),
|
||||
),
|
||||
stream: messagesStream,
|
||||
errorBuilder: widget.errorBuilder,
|
||||
noDataBuilder: widget.loadingBuilder,
|
||||
builder: (context, data) {
|
||||
final messageList = data.reversed.toList(growable: false);
|
||||
final messageList = data
|
||||
.where(
|
||||
widget.messageFilter ?? defaultMessageFilter(_currentUser!.id),
|
||||
)
|
||||
.toList(growable: false)
|
||||
.reversed
|
||||
.toList(growable: false);
|
||||
if (messageList.isEmpty && !_isThreadConversation) {
|
||||
if (_upToDate) {
|
||||
return widget.emptyBuilder(context);
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
name: stream_chat_flutter_core
|
||||
homepage: https://github.com/GetStream/stream-chat-flutter
|
||||
description: Stream Chat official Flutter SDK Core. Build your own chat experience using Dart and Flutter.
|
||||
version: 3.1.1
|
||||
version: 3.2.0
|
||||
repository: https://github.com/GetStream/stream-chat-flutter
|
||||
issue_tracker: https://github.com/GetStream/stream-chat-flutter/issues
|
||||
|
||||
@@ -11,17 +11,17 @@ environment:
|
||||
|
||||
dependencies:
|
||||
collection: ^1.15.0
|
||||
connectivity_plus: ^1.0.1
|
||||
connectivity_plus: ^2.0.2
|
||||
flutter:
|
||||
sdk: flutter
|
||||
meta: ^1.3.0
|
||||
rxdart: ^0.27.0
|
||||
stream_chat: ^3.1.1
|
||||
stream_chat: ^3.2.0
|
||||
|
||||
dev_dependencies:
|
||||
dart_code_metrics: ^4.4.0
|
||||
fake_async: ^1.2.0
|
||||
flutter_test:
|
||||
sdk: flutter
|
||||
mocktail: ^0.1.3
|
||||
mocktail: ^0.2.0
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ import 'mocks.dart';
|
||||
|
||||
void main() {
|
||||
setUpAll(() {
|
||||
registerFallbackValue<PaginationParams>(const PaginationParams());
|
||||
registerFallbackValue(const PaginationParams());
|
||||
});
|
||||
|
||||
List<Channel> _generateChannels(
|
||||
|
||||
Reference in New Issue
Block a user