diff --git a/packages/stream_chat/lib/src/api/channel.dart b/packages/stream_chat/lib/src/api/channel.dart index 17755b6d..1674e5eb 100644 --- a/packages/stream_chat/lib/src/api/channel.dart +++ b/packages/stream_chat/lib/src/api/channel.dart @@ -36,7 +36,7 @@ class Channel { _id = channelState.channel!.id, _type = channelState.channel!.type, _cid = channelState.channel!.cid, - _extraData = channelState.channel!.extraData ?? {} { + _extraData = channelState.channel!.extraData { state = ChannelClientState(this, channelState); _initializedCompleter.complete(true); _client.logger.info('New Channel instance initialized created'); @@ -204,8 +204,7 @@ class Channel { /// Channel extra data as a stream Stream> get extraDataStream { _checkInitialized(); - return state!.channelStateStream - .map( + return state!.channelStateStream.map( (cs) => cs.channel?.extraData ?? _extraData, ); } @@ -574,7 +573,7 @@ class Channel { /// A message search. Future search({ String? query, - Map? messageFilters, + Filter? messageFilters, List? sort, PaginationParams? paginationParams, }) { diff --git a/packages/stream_chat/lib/src/client.dart b/packages/stream_chat/lib/src/client.dart index 12820f8c..675cf999 100644 --- a/packages/stream_chat/lib/src/client.dart +++ b/packages/stream_chat/lib/src/client.dart @@ -22,6 +22,7 @@ import 'package:stream_chat/src/models/attachment_file.dart'; import 'package:stream_chat/src/models/channel_model.dart'; import 'package:stream_chat/src/models/channel_state.dart'; import 'package:stream_chat/src/models/event.dart'; +import 'package:stream_chat/src/models/filter.dart'; import 'package:stream_chat/src/models/message.dart'; import 'package:stream_chat/src/models/own_user.dart'; import 'package:stream_chat/src/models/user.dart'; @@ -29,8 +30,6 @@ import 'package:stream_chat/src/platform_detector/platform_detector.dart'; import 'package:stream_chat/version.dart'; import 'package:uuid/uuid.dart'; -import 'package:stream_chat/src/models/filter.dart'; - /// Handler function used for logging records. Function requires a single /// [LogRecord] as the only parameter. typedef LogHandlerFunction = void Function(LogRecord record); @@ -1067,7 +1066,7 @@ class StreamChatClient { String? query, List? sort, PaginationParams? paginationParams, - Map? messageFilters, + Filter? messageFilters, }) async { assert(() { if (query == null && messageFilters == null) { @@ -1516,7 +1515,7 @@ class ClientState { Map get channels => _channelsController.value!; set channels(Map v) { - if (v != null) _channelsController.add(v); + _channelsController.add(v); } final BehaviorSubject> _channelsController = diff --git a/packages/stream_chat_flutter/lib/src/channel_list_view.dart b/packages/stream_chat_flutter/lib/src/channel_list_view.dart index a210501e..6d317d97 100644 --- a/packages/stream_chat_flutter/lib/src/channel_list_view.dart +++ b/packages/stream_chat_flutter/lib/src/channel_list_view.dart @@ -85,7 +85,7 @@ class ChannelListView extends StatefulWidget { /// The query filters to use. /// You can query on any of the custom fields you've defined on the [Channel]. /// You can also filter other built-in channel fields. - final Filter filter; + final Filter? filter; /// Query channels options. /// diff --git a/packages/stream_chat_flutter/lib/src/message_search_list_view.dart b/packages/stream_chat_flutter/lib/src/message_search_list_view.dart index 4eff2f8f..358623e1 100644 --- a/packages/stream_chat_flutter/lib/src/message_search_list_view.dart +++ b/packages/stream_chat_flutter/lib/src/message_search_list_view.dart @@ -92,7 +92,7 @@ class MessageSearchListView extends StatefulWidget { /// The message query filters to use. /// You can query on any of the custom fields you've defined on the [Channel]. /// You can also filter other built-in channel fields. - final Map? messageFilters; + final Filter? messageFilters; /// Builder used to create a custom item preview final MessageSearchItemBuilder? itemBuilder; diff --git a/packages/stream_chat_flutter_core/lib/src/message_search_bloc.dart b/packages/stream_chat_flutter_core/lib/src/message_search_bloc.dart index d6220cf3..6c9be4f0 100644 --- a/packages/stream_chat_flutter_core/lib/src/message_search_bloc.dart +++ b/packages/stream_chat_flutter_core/lib/src/message_search_bloc.dart @@ -59,7 +59,7 @@ class MessageSearchBlocState extends State /// [messagesStream] and [queryMessagesLoading] stream Future search({ required Filter filter, - Map? messageFilter, + Filter? messageFilter, List? sort, String? query, PaginationParams? pagination, diff --git a/packages/stream_chat_flutter_core/lib/src/message_search_list_core.dart b/packages/stream_chat_flutter_core/lib/src/message_search_list_core.dart index 2a2d31f5..cb8c9387 100644 --- a/packages/stream_chat_flutter_core/lib/src/message_search_list_core.dart +++ b/packages/stream_chat_flutter_core/lib/src/message_search_list_core.dart @@ -85,7 +85,7 @@ class MessageSearchListCore extends StatefulWidget { /// The message query filters to use. /// You can query on any of the custom fields you've defined on the [Channel]. /// You can also filter other built-in channel fields. - final Map? messageFilters; + final Filter? messageFilters; /// The builder that is used when the search messages are fetched final Widget Function(List) childBuilder;