Merge branch 'develop' of https://github.com/GetStream/stream-chat-flutter into message-input-controller

This commit is contained in:
Deven Joshi
2021-11-02 15:16:11 +05:30
113 changed files with 6923 additions and 563 deletions
@@ -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(