Разделение навигации и реактивности
This commit is contained in:
@@ -13,6 +13,13 @@ class SignalRService {
|
|||||||
SignalRService(this.prefs);
|
SignalRService(this.prefs);
|
||||||
|
|
||||||
Future<void> init() async {
|
Future<void> init() async {
|
||||||
|
if (_hubConnection?.state == HubConnectionState.Connected ||
|
||||||
|
_hubConnection?.state == HubConnectionState.Connecting) {
|
||||||
|
// ignore: avoid_print
|
||||||
|
print('[SignalR] Connection already active or connecting. Skipping init.');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (_hubConnection != null) {
|
if (_hubConnection != null) {
|
||||||
await stop();
|
await stop();
|
||||||
}
|
}
|
||||||
@@ -22,27 +29,48 @@ class SignalRService {
|
|||||||
if (token == null) return;
|
if (token == null) return;
|
||||||
|
|
||||||
final hubUrl = '${apiUrl.replaceAll(RegExp(r'/+$'), '')}/hubs/chat';
|
final hubUrl = '${apiUrl.replaceAll(RegExp(r'/+$'), '')}/hubs/chat';
|
||||||
|
// ignore: avoid_print
|
||||||
|
print('[SignalR] Initializing connection to: $hubUrl');
|
||||||
|
|
||||||
_hubConnection = HubConnectionBuilder()
|
_hubConnection = HubConnectionBuilder()
|
||||||
.withUrl(hubUrl, options: HttpConnectionOptions(
|
.withUrl(hubUrl, options: HttpConnectionOptions(
|
||||||
accessTokenFactory: () async => token,
|
accessTokenFactory: () async => token,
|
||||||
// logging: (level, message) => print('[SignalR] $level: $message'),
|
|
||||||
))
|
))
|
||||||
.withAutomaticReconnect()
|
.withAutomaticReconnect()
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
_hubConnection?.onclose(({error}) {
|
_hubConnection?.onclose(({error}) {
|
||||||
// print('[SignalR] Connection closed: $error');
|
// ignore: avoid_print
|
||||||
|
print('[SignalR] Connection closed. Error: $error');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
_hubConnection?.onreconnecting(({error}) {
|
||||||
|
// ignore: avoid_print
|
||||||
|
print('[SignalR] Reconnecting... Error: $error');
|
||||||
|
});
|
||||||
|
|
||||||
|
_hubConnection?.onreconnected(({connectionId}) {
|
||||||
|
// ignore: avoid_print
|
||||||
|
print('[SignalR] Reconnected! ID: $connectionId');
|
||||||
|
});
|
||||||
|
|
||||||
|
// Handle multiple possible event names to be safe
|
||||||
_hubConnection?.on('ReceiveMessage', _handleReceiveMessage);
|
_hubConnection?.on('ReceiveMessage', _handleReceiveMessage);
|
||||||
|
_hubConnection?.on('receiveMessage', _handleReceiveMessage);
|
||||||
|
_hubConnection?.on('UserTyping', _handleUserTyping);
|
||||||
_hubConnection?.on('user_typing', _handleUserTyping);
|
_hubConnection?.on('user_typing', _handleUserTyping);
|
||||||
|
_hubConnection?.on('UserStoppedTyping', _handleUserStoppedTyping);
|
||||||
_hubConnection?.on('user_stopped_typing', _handleUserStoppedTyping);
|
_hubConnection?.on('user_stopped_typing', _handleUserStoppedTyping);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
// ignore: avoid_print
|
||||||
|
print('[SignalR] Starting connection...');
|
||||||
await _hubConnection?.start();
|
await _hubConnection?.start();
|
||||||
|
// ignore: avoid_print
|
||||||
|
print('[SignalR] Connection started successfully. State: ${_hubConnection?.state}');
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
// ignore
|
// ignore: avoid_print
|
||||||
|
print('[SignalR] Connection failed: $e');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -50,6 +78,8 @@ class SignalRService {
|
|||||||
Stream<Map<String, dynamic>> get typingUpdates => _typingController.stream;
|
Stream<Map<String, dynamic>> get typingUpdates => _typingController.stream;
|
||||||
|
|
||||||
void _handleUserTyping(List<dynamic>? arguments) {
|
void _handleUserTyping(List<dynamic>? arguments) {
|
||||||
|
// ignore: avoid_print
|
||||||
|
print('[SignalR] _handleUserTyping: $arguments');
|
||||||
if (arguments != null && arguments.isNotEmpty) {
|
if (arguments != null && arguments.isNotEmpty) {
|
||||||
final data = arguments[0] as Map<String, dynamic>;
|
final data = arguments[0] as Map<String, dynamic>;
|
||||||
_typingController.add({'chatId': data['ChatId'] ?? data['chatId'], 'userId': data['UserId'] ?? data['userId'], 'isTyping': true});
|
_typingController.add({'chatId': data['ChatId'] ?? data['chatId'], 'userId': data['UserId'] ?? data['userId'], 'isTyping': true});
|
||||||
@@ -57,6 +87,8 @@ class SignalRService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void _handleUserStoppedTyping(List<dynamic>? arguments) {
|
void _handleUserStoppedTyping(List<dynamic>? arguments) {
|
||||||
|
// ignore: avoid_print
|
||||||
|
print('[SignalR] _handleUserStoppedTyping: $arguments');
|
||||||
if (arguments != null && arguments.isNotEmpty) {
|
if (arguments != null && arguments.isNotEmpty) {
|
||||||
final data = arguments[0] as Map<String, dynamic>;
|
final data = arguments[0] as Map<String, dynamic>;
|
||||||
_typingController.add({'chatId': data['ChatId'] ?? data['chatId'], 'userId': data['UserId'] ?? data['userId'], 'isTyping': false});
|
_typingController.add({'chatId': data['ChatId'] ?? data['chatId'], 'userId': data['UserId'] ?? data['userId'], 'isTyping': false});
|
||||||
@@ -72,13 +104,34 @@ class SignalRService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void _handleReceiveMessage(List<dynamic>? arguments) {
|
void _handleReceiveMessage(List<dynamic>? arguments) {
|
||||||
|
// ignore: avoid_print
|
||||||
|
print('[SignalR] _handleReceiveMessage: $arguments');
|
||||||
if (arguments != null && arguments.isNotEmpty) {
|
if (arguments != null && arguments.isNotEmpty) {
|
||||||
final data = arguments[0] as Map<String, dynamic>;
|
final data = arguments[0] as Map<String, dynamic>;
|
||||||
// Map JSON to Message entity and add to stream
|
final message = Message(
|
||||||
// I'll need a Message.fromJson mapper
|
id: data['id'] ?? '',
|
||||||
|
chatId: data['chatId'] ?? '',
|
||||||
|
senderId: data['userId'] ?? (data['senderId'] ?? ''),
|
||||||
|
content: data['content'] ?? '',
|
||||||
|
messageType: data['type']?.toString().toLowerCase() ?? 'text',
|
||||||
|
createdAt: _parseDateTime(data['createdAt']),
|
||||||
|
updatedAt: _parseDateTime(data['updatedAt']),
|
||||||
|
isRead: data['isRead'] ?? false,
|
||||||
|
media: data['media'] is Map<String, dynamic> ? data['media'] as Map<String, dynamic> : null,
|
||||||
|
);
|
||||||
|
_messageController.add(message);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DateTime? _parseDateTime(String? dateStr) {
|
||||||
|
if (dateStr == null) return null;
|
||||||
|
String normalized = dateStr;
|
||||||
|
if (!normalized.endsWith('Z') && !normalized.contains('+')) {
|
||||||
|
normalized += 'Z';
|
||||||
|
}
|
||||||
|
return DateTime.parse(normalized).toLocal();
|
||||||
|
}
|
||||||
|
|
||||||
Future<void> stop() async {
|
Future<void> stop() async {
|
||||||
await _hubConnection?.stop();
|
await _hubConnection?.stop();
|
||||||
_hubConnection = null;
|
_hubConnection = null;
|
||||||
|
|||||||
@@ -121,7 +121,7 @@ class ChatRepositoryImpl implements ChatRepository {
|
|||||||
return remote;
|
return remote;
|
||||||
}
|
}
|
||||||
// ignore: avoid_print
|
// ignore: avoid_print
|
||||||
print('[DEBUG] Remote getMessages failed: ${remote.failure?.message}');
|
print('[DEBUG] Remote getMessages failed: ${remote.error?.message}');
|
||||||
return cached;
|
return cached;
|
||||||
} else {
|
} else {
|
||||||
return remoteDataSource.getMessages(chatId, cursor: cursor);
|
return remoteDataSource.getMessages(chatId, cursor: cursor);
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ class ChatBloc extends Bloc<ChatEvent, ChatState> {
|
|||||||
on<ChatEventChatsLoaded>(_onChatsLoaded);
|
on<ChatEventChatsLoaded>(_onChatsLoaded);
|
||||||
on<ChatEventChatSelected>(_onChatSelected);
|
on<ChatEventChatSelected>(_onChatSelected);
|
||||||
on<ChatEventMessagesRequested>(_onMessagesRequested);
|
on<ChatEventMessagesRequested>(_onMessagesRequested);
|
||||||
|
on<ChatEventMessageReceived>(_onMessageReceived);
|
||||||
on<ChatEventMessageSent>(_onMessageSent);
|
on<ChatEventMessageSent>(_onMessageSent);
|
||||||
on<ChatEventFavoritesRequested>(_onFavoritesRequested);
|
on<ChatEventFavoritesRequested>(_onFavoritesRequested);
|
||||||
on<ChatEventTypingUpdated>(_onTypingUpdated);
|
on<ChatEventTypingUpdated>(_onTypingUpdated);
|
||||||
@@ -23,7 +24,7 @@ class ChatBloc extends Bloc<ChatEvent, ChatState> {
|
|||||||
on<ChatEventCacheCleared>(_onCacheCleared);
|
on<ChatEventCacheCleared>(_onCacheCleared);
|
||||||
|
|
||||||
_messageSubscription = chatRepository.messageStream.listen((message) {
|
_messageSubscription = chatRepository.messageStream.listen((message) {
|
||||||
add(ChatEvent.messagesRequested(message.chatId));
|
add(ChatEvent.messageReceived(message));
|
||||||
});
|
});
|
||||||
|
|
||||||
_typingSubscription = chatRepository.typingStream.listen((data) {
|
_typingSubscription = chatRepository.typingStream.listen((data) {
|
||||||
@@ -40,7 +41,6 @@ class ChatBloc extends Bloc<ChatEvent, ChatState> {
|
|||||||
});
|
});
|
||||||
// Immediately trigger chats loading
|
// Immediately trigger chats loading
|
||||||
add(ChatEvent.chatsLoaded(currentUserId: event.userId));
|
add(ChatEvent.chatsLoaded(currentUserId: event.userId));
|
||||||
add(const ChatEvent.favoritesRequested());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> _onChatsLoaded(ChatEventChatsLoaded event, Emitter<ChatState> emit) async {
|
Future<void> _onChatsLoaded(ChatEventChatsLoaded event, Emitter<ChatState> emit) async {
|
||||||
@@ -53,42 +53,114 @@ class ChatBloc extends Bloc<ChatEvent, ChatState> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Future<void> _onChatSelected(ChatEventChatSelected event, Emitter<ChatState> emit) async {
|
Future<void> _onChatSelected(ChatEventChatSelected event, Emitter<ChatState> emit) async {
|
||||||
emit(const ChatState.loading());
|
final currentChatId = state.maybeMap(
|
||||||
|
chatSelected: (s) => s.chat.id,
|
||||||
|
messagesLoaded: (s) => s.chat.id,
|
||||||
|
orElse: () => null,
|
||||||
|
);
|
||||||
|
|
||||||
|
if (currentChatId == event.chatId) {
|
||||||
|
// Already in this chat, just refresh messages
|
||||||
|
final messagesResult = await chatRepository.getMessages(event.chatId);
|
||||||
|
messagesResult.fold(
|
||||||
|
(error) => null,
|
||||||
|
(messages) {
|
||||||
|
final currentChat = state.maybeMap(
|
||||||
|
chatSelected: (s) => s.chat,
|
||||||
|
messagesLoaded: (s) => s.chat,
|
||||||
|
orElse: () => null,
|
||||||
|
);
|
||||||
|
if (currentChat != null) {
|
||||||
|
emit(ChatState.messagesLoaded(currentChat, messages, typingUsers: state.typingUsers));
|
||||||
|
}
|
||||||
|
},
|
||||||
|
);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
emit(ChatState.loading(typingUsers: state.typingUsers));
|
||||||
final chatResult = await chatRepository.getChatById(event.chatId);
|
final chatResult = await chatRepository.getChatById(event.chatId);
|
||||||
final messagesResult = await chatRepository.getMessages(event.chatId);
|
final messagesResult = await chatRepository.getMessages(event.chatId);
|
||||||
|
|
||||||
chatResult.fold(
|
chatResult.fold(
|
||||||
(error) => emit(ChatState.error(error.message ?? 'Failed to load chat')),
|
(error) => emit(ChatState.error(error.message ?? 'Failed to load chat', typingUsers: state.typingUsers)),
|
||||||
(chat) {
|
(chat) {
|
||||||
messagesResult.fold(
|
messagesResult.fold(
|
||||||
(error) => emit(ChatState.chatSelected(chat, [])),
|
(error) => emit(ChatState.chatSelected(chat, [], typingUsers: state.typingUsers)),
|
||||||
(messages) => emit(ChatState.chatSelected(chat, messages)),
|
(messages) => emit(ChatState.chatSelected(chat, messages, typingUsers: state.typingUsers)),
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> _onMessagesRequested(ChatEventMessagesRequested event, Emitter<ChatState> emit) async {
|
Future<void> _onMessagesRequested(ChatEventMessagesRequested event, Emitter<ChatState> emit) async {
|
||||||
|
final currentChat = state.maybeMap(
|
||||||
|
chatSelected: (s) => s.chat,
|
||||||
|
messagesLoaded: (s) => s.chat,
|
||||||
|
orElse: () => null,
|
||||||
|
);
|
||||||
|
|
||||||
|
// Only fetch if it's the current chat or we are in chats list
|
||||||
final result = await chatRepository.getMessages(event.chatId);
|
final result = await chatRepository.getMessages(event.chatId);
|
||||||
result.fold(
|
result.fold(
|
||||||
(error) => emit(ChatState.error(error.message ?? 'Failed to load messages')),
|
(error) => null, // Don't emit error state for background updates to avoid UI flickering
|
||||||
(messages) => emit(ChatState.messagesLoaded(messages)),
|
(messages) {
|
||||||
|
if (currentChat != null && currentChat.id == event.chatId) {
|
||||||
|
// If we are in the chat, update messages and switch to messagesLoaded (stable state)
|
||||||
|
emit(ChatState.messagesLoaded(currentChat, messages, typingUsers: state.typingUsers));
|
||||||
|
}
|
||||||
|
// If we are in the list, the list will update via local cache anyway or on next fetch
|
||||||
|
},
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
Future<void> _onMessageReceived(ChatEventMessageReceived event, Emitter<ChatState> emit) async {
|
||||||
|
final message = event.message;
|
||||||
|
final currentChat = state.maybeMap(
|
||||||
|
chatSelected: (s) => s.chat,
|
||||||
|
messagesLoaded: (s) => s.chat,
|
||||||
|
orElse: () => null,
|
||||||
|
);
|
||||||
|
|
||||||
|
if (currentChat != null && currentChat.id == message.chatId) {
|
||||||
|
final List<Message> currentMessages = state.maybeMap(
|
||||||
|
chatSelected: (s) => s.messages,
|
||||||
|
messagesLoaded: (s) => s.messages,
|
||||||
|
orElse: () => [],
|
||||||
|
);
|
||||||
|
|
||||||
|
// Check for duplicates
|
||||||
|
if (currentMessages.any((m) => m.id == message.id)) return;
|
||||||
|
|
||||||
|
final updatedMessages = List<Message>.from(currentMessages)..insert(0, message);
|
||||||
|
// Ensure sorting if needed (usually messages are already in order from stream)
|
||||||
|
|
||||||
|
emit(ChatState.messagesLoaded(currentChat, updatedMessages, typingUsers: state.typingUsers));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Also trigger chats refresh if we are in chatsLoaded state to update last message/unread
|
||||||
|
state.maybeMap(
|
||||||
|
chatsLoaded: (_) => add(ChatEvent.chatsLoaded(currentUserId: currentChat?.participants?.firstWhere((p) => p.id != '').id)), // userId logic might need to be better
|
||||||
|
orElse: () => null,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> _onMessageSent(ChatEventMessageSent event, Emitter<ChatState> emit) async {
|
Future<void> _onMessageSent(ChatEventMessageSent event, Emitter<ChatState> emit) async {
|
||||||
final result = await chatRepository.sendMessage(event.chatId, event.content);
|
final result = await chatRepository.sendMessage(event.chatId, event.content);
|
||||||
result.fold(
|
result.fold(
|
||||||
(error) => emit(ChatState.error(error.message ?? 'Failed to send message')),
|
(error) => emit(ChatState.error(error.message ?? 'Failed to send message', typingUsers: state.typingUsers)),
|
||||||
(_) => add(ChatEvent.messagesRequested(event.chatId)),
|
(_) {
|
||||||
|
// Optimistically or via refresh
|
||||||
|
add(ChatEvent.messagesRequested(event.chatId));
|
||||||
|
},
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> _onFavoritesRequested(ChatEventFavoritesRequested event, Emitter<ChatState> emit) async {
|
Future<void> _onFavoritesRequested(ChatEventFavoritesRequested event, Emitter<ChatState> emit) async {
|
||||||
emit(const ChatState.loading());
|
emit(ChatState.loading(typingUsers: state.typingUsers));
|
||||||
final result = await chatRepository.getOrCreateFavorites();
|
final result = await chatRepository.getOrCreateFavorites();
|
||||||
result.fold(
|
result.fold(
|
||||||
(error) => emit(ChatState.error(error.message ?? 'Failed to open Favorites')),
|
(error) => emit(ChatState.error(error.message ?? 'Failed to open Favorites', typingUsers: state.typingUsers)),
|
||||||
(chat) => add(ChatEvent.chatSelected(chat.id)),
|
(chat) => add(ChatEvent.chatSelected(chat.id)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -109,7 +181,19 @@ class ChatBloc extends Bloc<ChatEvent, ChatState> {
|
|||||||
newTypingUsers[event.chatId] = chatTypingUsers;
|
newTypingUsers[event.chatId] = chatTypingUsers;
|
||||||
}
|
}
|
||||||
|
|
||||||
emit(state.copyWith(typingUsers: newTypingUsers));
|
state.maybeMap(
|
||||||
|
chatSelected: (s) {
|
||||||
|
// If it's the current chat, transition to stable state
|
||||||
|
if (s.chat.id == event.chatId) {
|
||||||
|
emit(ChatState.messagesLoaded(s.chat, s.messages, typingUsers: newTypingUsers));
|
||||||
|
} else {
|
||||||
|
emit(s.copyWith(typingUsers: newTypingUsers));
|
||||||
|
}
|
||||||
|
},
|
||||||
|
messagesLoaded: (s) => emit(s.copyWith(typingUsers: newTypingUsers)),
|
||||||
|
chatsLoaded: (s) => emit(s.copyWith(typingUsers: newTypingUsers)),
|
||||||
|
orElse: () => emit(state.copyWith(typingUsers: newTypingUsers)),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> _onSendTypingStatus(ChatEventSendTypingStatus event, Emitter<ChatState> emit) async {
|
Future<void> _onSendTypingStatus(ChatEventSendTypingStatus event, Emitter<ChatState> emit) async {
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import 'package:freezed_annotation/freezed_annotation.dart';
|
import 'package:freezed_annotation/freezed_annotation.dart';
|
||||||
|
import '../../domain/entities/message.dart';
|
||||||
|
|
||||||
part 'chat_event.freezed.dart';
|
part 'chat_event.freezed.dart';
|
||||||
|
|
||||||
@@ -8,6 +9,7 @@ class ChatEvent with _$ChatEvent {
|
|||||||
const factory ChatEvent.chatsLoaded({String? currentUserId}) = ChatEventChatsLoaded;
|
const factory ChatEvent.chatsLoaded({String? currentUserId}) = ChatEventChatsLoaded;
|
||||||
const factory ChatEvent.chatSelected(String chatId) = ChatEventChatSelected;
|
const factory ChatEvent.chatSelected(String chatId) = ChatEventChatSelected;
|
||||||
const factory ChatEvent.messagesRequested(String chatId, {String? cursor}) = ChatEventMessagesRequested;
|
const factory ChatEvent.messagesRequested(String chatId, {String? cursor}) = ChatEventMessagesRequested;
|
||||||
|
const factory ChatEvent.messageReceived(Message message) = ChatEventMessageReceived;
|
||||||
const factory ChatEvent.messageSent(String chatId, String content) = ChatEventMessageSent;
|
const factory ChatEvent.messageSent(String chatId, String content) = ChatEventMessageSent;
|
||||||
const factory ChatEvent.favoritesRequested() = ChatEventFavoritesRequested;
|
const factory ChatEvent.favoritesRequested() = ChatEventFavoritesRequested;
|
||||||
const factory ChatEvent.typingUpdated(String chatId, String userId, bool isTyping) = ChatEventTypingUpdated;
|
const factory ChatEvent.typingUpdated(String chatId, String userId, bool isTyping) = ChatEventTypingUpdated;
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ mixin _$ChatEvent {
|
|||||||
required TResult Function(String? currentUserId) chatsLoaded,
|
required TResult Function(String? currentUserId) chatsLoaded,
|
||||||
required TResult Function(String chatId) chatSelected,
|
required TResult Function(String chatId) chatSelected,
|
||||||
required TResult Function(String chatId, String? cursor) messagesRequested,
|
required TResult Function(String chatId, String? cursor) messagesRequested,
|
||||||
|
required TResult Function(Message message) messageReceived,
|
||||||
required TResult Function(String chatId, String content) messageSent,
|
required TResult Function(String chatId, String content) messageSent,
|
||||||
required TResult Function() favoritesRequested,
|
required TResult Function() favoritesRequested,
|
||||||
required TResult Function(String chatId, String userId, bool isTyping)
|
required TResult Function(String chatId, String userId, bool isTyping)
|
||||||
@@ -36,6 +37,7 @@ mixin _$ChatEvent {
|
|||||||
TResult? Function(String? currentUserId)? chatsLoaded,
|
TResult? Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult? Function(String chatId)? chatSelected,
|
TResult? Function(String chatId)? chatSelected,
|
||||||
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult? Function(Message message)? messageReceived,
|
||||||
TResult? Function(String chatId, String content)? messageSent,
|
TResult? Function(String chatId, String content)? messageSent,
|
||||||
TResult? Function()? favoritesRequested,
|
TResult? Function()? favoritesRequested,
|
||||||
TResult? Function(String chatId, String userId, bool isTyping)?
|
TResult? Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -50,6 +52,7 @@ mixin _$ChatEvent {
|
|||||||
TResult Function(String? currentUserId)? chatsLoaded,
|
TResult Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult Function(String chatId)? chatSelected,
|
TResult Function(String chatId)? chatSelected,
|
||||||
TResult Function(String chatId, String? cursor)? messagesRequested,
|
TResult Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult Function(Message message)? messageReceived,
|
||||||
TResult Function(String chatId, String content)? messageSent,
|
TResult Function(String chatId, String content)? messageSent,
|
||||||
TResult Function()? favoritesRequested,
|
TResult Function()? favoritesRequested,
|
||||||
TResult Function(String chatId, String userId, bool isTyping)?
|
TResult Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -66,6 +69,7 @@ mixin _$ChatEvent {
|
|||||||
required TResult Function(ChatEventChatSelected value) chatSelected,
|
required TResult Function(ChatEventChatSelected value) chatSelected,
|
||||||
required TResult Function(ChatEventMessagesRequested value)
|
required TResult Function(ChatEventMessagesRequested value)
|
||||||
messagesRequested,
|
messagesRequested,
|
||||||
|
required TResult Function(ChatEventMessageReceived value) messageReceived,
|
||||||
required TResult Function(ChatEventMessageSent value) messageSent,
|
required TResult Function(ChatEventMessageSent value) messageSent,
|
||||||
required TResult Function(ChatEventFavoritesRequested value)
|
required TResult Function(ChatEventFavoritesRequested value)
|
||||||
favoritesRequested,
|
favoritesRequested,
|
||||||
@@ -80,6 +84,7 @@ mixin _$ChatEvent {
|
|||||||
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult? Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult? Function(ChatEventMessageSent value)? messageSent,
|
TResult? Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -93,6 +98,7 @@ mixin _$ChatEvent {
|
|||||||
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult Function(ChatEventChatSelected value)? chatSelected,
|
TResult Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult Function(ChatEventMessageSent value)? messageSent,
|
TResult Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -189,6 +195,7 @@ class _$ChatEventStartedImpl implements ChatEventStarted {
|
|||||||
required TResult Function(String? currentUserId) chatsLoaded,
|
required TResult Function(String? currentUserId) chatsLoaded,
|
||||||
required TResult Function(String chatId) chatSelected,
|
required TResult Function(String chatId) chatSelected,
|
||||||
required TResult Function(String chatId, String? cursor) messagesRequested,
|
required TResult Function(String chatId, String? cursor) messagesRequested,
|
||||||
|
required TResult Function(Message message) messageReceived,
|
||||||
required TResult Function(String chatId, String content) messageSent,
|
required TResult Function(String chatId, String content) messageSent,
|
||||||
required TResult Function() favoritesRequested,
|
required TResult Function() favoritesRequested,
|
||||||
required TResult Function(String chatId, String userId, bool isTyping)
|
required TResult Function(String chatId, String userId, bool isTyping)
|
||||||
@@ -206,6 +213,7 @@ class _$ChatEventStartedImpl implements ChatEventStarted {
|
|||||||
TResult? Function(String? currentUserId)? chatsLoaded,
|
TResult? Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult? Function(String chatId)? chatSelected,
|
TResult? Function(String chatId)? chatSelected,
|
||||||
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult? Function(Message message)? messageReceived,
|
||||||
TResult? Function(String chatId, String content)? messageSent,
|
TResult? Function(String chatId, String content)? messageSent,
|
||||||
TResult? Function()? favoritesRequested,
|
TResult? Function()? favoritesRequested,
|
||||||
TResult? Function(String chatId, String userId, bool isTyping)?
|
TResult? Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -223,6 +231,7 @@ class _$ChatEventStartedImpl implements ChatEventStarted {
|
|||||||
TResult Function(String? currentUserId)? chatsLoaded,
|
TResult Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult Function(String chatId)? chatSelected,
|
TResult Function(String chatId)? chatSelected,
|
||||||
TResult Function(String chatId, String? cursor)? messagesRequested,
|
TResult Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult Function(Message message)? messageReceived,
|
||||||
TResult Function(String chatId, String content)? messageSent,
|
TResult Function(String chatId, String content)? messageSent,
|
||||||
TResult Function()? favoritesRequested,
|
TResult Function()? favoritesRequested,
|
||||||
TResult Function(String chatId, String userId, bool isTyping)?
|
TResult Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -245,6 +254,7 @@ class _$ChatEventStartedImpl implements ChatEventStarted {
|
|||||||
required TResult Function(ChatEventChatSelected value) chatSelected,
|
required TResult Function(ChatEventChatSelected value) chatSelected,
|
||||||
required TResult Function(ChatEventMessagesRequested value)
|
required TResult Function(ChatEventMessagesRequested value)
|
||||||
messagesRequested,
|
messagesRequested,
|
||||||
|
required TResult Function(ChatEventMessageReceived value) messageReceived,
|
||||||
required TResult Function(ChatEventMessageSent value) messageSent,
|
required TResult Function(ChatEventMessageSent value) messageSent,
|
||||||
required TResult Function(ChatEventFavoritesRequested value)
|
required TResult Function(ChatEventFavoritesRequested value)
|
||||||
favoritesRequested,
|
favoritesRequested,
|
||||||
@@ -262,6 +272,7 @@ class _$ChatEventStartedImpl implements ChatEventStarted {
|
|||||||
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult? Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult? Function(ChatEventMessageSent value)? messageSent,
|
TResult? Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -278,6 +289,7 @@ class _$ChatEventStartedImpl implements ChatEventStarted {
|
|||||||
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult Function(ChatEventChatSelected value)? chatSelected,
|
TResult Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult Function(ChatEventMessageSent value)? messageSent,
|
TResult Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -373,6 +385,7 @@ class _$ChatEventChatsLoadedImpl implements ChatEventChatsLoaded {
|
|||||||
required TResult Function(String? currentUserId) chatsLoaded,
|
required TResult Function(String? currentUserId) chatsLoaded,
|
||||||
required TResult Function(String chatId) chatSelected,
|
required TResult Function(String chatId) chatSelected,
|
||||||
required TResult Function(String chatId, String? cursor) messagesRequested,
|
required TResult Function(String chatId, String? cursor) messagesRequested,
|
||||||
|
required TResult Function(Message message) messageReceived,
|
||||||
required TResult Function(String chatId, String content) messageSent,
|
required TResult Function(String chatId, String content) messageSent,
|
||||||
required TResult Function() favoritesRequested,
|
required TResult Function() favoritesRequested,
|
||||||
required TResult Function(String chatId, String userId, bool isTyping)
|
required TResult Function(String chatId, String userId, bool isTyping)
|
||||||
@@ -390,6 +403,7 @@ class _$ChatEventChatsLoadedImpl implements ChatEventChatsLoaded {
|
|||||||
TResult? Function(String? currentUserId)? chatsLoaded,
|
TResult? Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult? Function(String chatId)? chatSelected,
|
TResult? Function(String chatId)? chatSelected,
|
||||||
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult? Function(Message message)? messageReceived,
|
||||||
TResult? Function(String chatId, String content)? messageSent,
|
TResult? Function(String chatId, String content)? messageSent,
|
||||||
TResult? Function()? favoritesRequested,
|
TResult? Function()? favoritesRequested,
|
||||||
TResult? Function(String chatId, String userId, bool isTyping)?
|
TResult? Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -407,6 +421,7 @@ class _$ChatEventChatsLoadedImpl implements ChatEventChatsLoaded {
|
|||||||
TResult Function(String? currentUserId)? chatsLoaded,
|
TResult Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult Function(String chatId)? chatSelected,
|
TResult Function(String chatId)? chatSelected,
|
||||||
TResult Function(String chatId, String? cursor)? messagesRequested,
|
TResult Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult Function(Message message)? messageReceived,
|
||||||
TResult Function(String chatId, String content)? messageSent,
|
TResult Function(String chatId, String content)? messageSent,
|
||||||
TResult Function()? favoritesRequested,
|
TResult Function()? favoritesRequested,
|
||||||
TResult Function(String chatId, String userId, bool isTyping)?
|
TResult Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -429,6 +444,7 @@ class _$ChatEventChatsLoadedImpl implements ChatEventChatsLoaded {
|
|||||||
required TResult Function(ChatEventChatSelected value) chatSelected,
|
required TResult Function(ChatEventChatSelected value) chatSelected,
|
||||||
required TResult Function(ChatEventMessagesRequested value)
|
required TResult Function(ChatEventMessagesRequested value)
|
||||||
messagesRequested,
|
messagesRequested,
|
||||||
|
required TResult Function(ChatEventMessageReceived value) messageReceived,
|
||||||
required TResult Function(ChatEventMessageSent value) messageSent,
|
required TResult Function(ChatEventMessageSent value) messageSent,
|
||||||
required TResult Function(ChatEventFavoritesRequested value)
|
required TResult Function(ChatEventFavoritesRequested value)
|
||||||
favoritesRequested,
|
favoritesRequested,
|
||||||
@@ -446,6 +462,7 @@ class _$ChatEventChatsLoadedImpl implements ChatEventChatsLoaded {
|
|||||||
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult? Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult? Function(ChatEventMessageSent value)? messageSent,
|
TResult? Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -462,6 +479,7 @@ class _$ChatEventChatsLoadedImpl implements ChatEventChatsLoaded {
|
|||||||
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult Function(ChatEventChatSelected value)? chatSelected,
|
TResult Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult Function(ChatEventMessageSent value)? messageSent,
|
TResult Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -556,6 +574,7 @@ class _$ChatEventChatSelectedImpl implements ChatEventChatSelected {
|
|||||||
required TResult Function(String? currentUserId) chatsLoaded,
|
required TResult Function(String? currentUserId) chatsLoaded,
|
||||||
required TResult Function(String chatId) chatSelected,
|
required TResult Function(String chatId) chatSelected,
|
||||||
required TResult Function(String chatId, String? cursor) messagesRequested,
|
required TResult Function(String chatId, String? cursor) messagesRequested,
|
||||||
|
required TResult Function(Message message) messageReceived,
|
||||||
required TResult Function(String chatId, String content) messageSent,
|
required TResult Function(String chatId, String content) messageSent,
|
||||||
required TResult Function() favoritesRequested,
|
required TResult Function() favoritesRequested,
|
||||||
required TResult Function(String chatId, String userId, bool isTyping)
|
required TResult Function(String chatId, String userId, bool isTyping)
|
||||||
@@ -573,6 +592,7 @@ class _$ChatEventChatSelectedImpl implements ChatEventChatSelected {
|
|||||||
TResult? Function(String? currentUserId)? chatsLoaded,
|
TResult? Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult? Function(String chatId)? chatSelected,
|
TResult? Function(String chatId)? chatSelected,
|
||||||
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult? Function(Message message)? messageReceived,
|
||||||
TResult? Function(String chatId, String content)? messageSent,
|
TResult? Function(String chatId, String content)? messageSent,
|
||||||
TResult? Function()? favoritesRequested,
|
TResult? Function()? favoritesRequested,
|
||||||
TResult? Function(String chatId, String userId, bool isTyping)?
|
TResult? Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -590,6 +610,7 @@ class _$ChatEventChatSelectedImpl implements ChatEventChatSelected {
|
|||||||
TResult Function(String? currentUserId)? chatsLoaded,
|
TResult Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult Function(String chatId)? chatSelected,
|
TResult Function(String chatId)? chatSelected,
|
||||||
TResult Function(String chatId, String? cursor)? messagesRequested,
|
TResult Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult Function(Message message)? messageReceived,
|
||||||
TResult Function(String chatId, String content)? messageSent,
|
TResult Function(String chatId, String content)? messageSent,
|
||||||
TResult Function()? favoritesRequested,
|
TResult Function()? favoritesRequested,
|
||||||
TResult Function(String chatId, String userId, bool isTyping)?
|
TResult Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -612,6 +633,7 @@ class _$ChatEventChatSelectedImpl implements ChatEventChatSelected {
|
|||||||
required TResult Function(ChatEventChatSelected value) chatSelected,
|
required TResult Function(ChatEventChatSelected value) chatSelected,
|
||||||
required TResult Function(ChatEventMessagesRequested value)
|
required TResult Function(ChatEventMessagesRequested value)
|
||||||
messagesRequested,
|
messagesRequested,
|
||||||
|
required TResult Function(ChatEventMessageReceived value) messageReceived,
|
||||||
required TResult Function(ChatEventMessageSent value) messageSent,
|
required TResult Function(ChatEventMessageSent value) messageSent,
|
||||||
required TResult Function(ChatEventFavoritesRequested value)
|
required TResult Function(ChatEventFavoritesRequested value)
|
||||||
favoritesRequested,
|
favoritesRequested,
|
||||||
@@ -629,6 +651,7 @@ class _$ChatEventChatSelectedImpl implements ChatEventChatSelected {
|
|||||||
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult? Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult? Function(ChatEventMessageSent value)? messageSent,
|
TResult? Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -645,6 +668,7 @@ class _$ChatEventChatSelectedImpl implements ChatEventChatSelected {
|
|||||||
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult Function(ChatEventChatSelected value)? chatSelected,
|
TResult Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult Function(ChatEventMessageSent value)? messageSent,
|
TResult Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -748,6 +772,7 @@ class _$ChatEventMessagesRequestedImpl implements ChatEventMessagesRequested {
|
|||||||
required TResult Function(String? currentUserId) chatsLoaded,
|
required TResult Function(String? currentUserId) chatsLoaded,
|
||||||
required TResult Function(String chatId) chatSelected,
|
required TResult Function(String chatId) chatSelected,
|
||||||
required TResult Function(String chatId, String? cursor) messagesRequested,
|
required TResult Function(String chatId, String? cursor) messagesRequested,
|
||||||
|
required TResult Function(Message message) messageReceived,
|
||||||
required TResult Function(String chatId, String content) messageSent,
|
required TResult Function(String chatId, String content) messageSent,
|
||||||
required TResult Function() favoritesRequested,
|
required TResult Function() favoritesRequested,
|
||||||
required TResult Function(String chatId, String userId, bool isTyping)
|
required TResult Function(String chatId, String userId, bool isTyping)
|
||||||
@@ -765,6 +790,7 @@ class _$ChatEventMessagesRequestedImpl implements ChatEventMessagesRequested {
|
|||||||
TResult? Function(String? currentUserId)? chatsLoaded,
|
TResult? Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult? Function(String chatId)? chatSelected,
|
TResult? Function(String chatId)? chatSelected,
|
||||||
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult? Function(Message message)? messageReceived,
|
||||||
TResult? Function(String chatId, String content)? messageSent,
|
TResult? Function(String chatId, String content)? messageSent,
|
||||||
TResult? Function()? favoritesRequested,
|
TResult? Function()? favoritesRequested,
|
||||||
TResult? Function(String chatId, String userId, bool isTyping)?
|
TResult? Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -782,6 +808,7 @@ class _$ChatEventMessagesRequestedImpl implements ChatEventMessagesRequested {
|
|||||||
TResult Function(String? currentUserId)? chatsLoaded,
|
TResult Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult Function(String chatId)? chatSelected,
|
TResult Function(String chatId)? chatSelected,
|
||||||
TResult Function(String chatId, String? cursor)? messagesRequested,
|
TResult Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult Function(Message message)? messageReceived,
|
||||||
TResult Function(String chatId, String content)? messageSent,
|
TResult Function(String chatId, String content)? messageSent,
|
||||||
TResult Function()? favoritesRequested,
|
TResult Function()? favoritesRequested,
|
||||||
TResult Function(String chatId, String userId, bool isTyping)?
|
TResult Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -804,6 +831,7 @@ class _$ChatEventMessagesRequestedImpl implements ChatEventMessagesRequested {
|
|||||||
required TResult Function(ChatEventChatSelected value) chatSelected,
|
required TResult Function(ChatEventChatSelected value) chatSelected,
|
||||||
required TResult Function(ChatEventMessagesRequested value)
|
required TResult Function(ChatEventMessagesRequested value)
|
||||||
messagesRequested,
|
messagesRequested,
|
||||||
|
required TResult Function(ChatEventMessageReceived value) messageReceived,
|
||||||
required TResult Function(ChatEventMessageSent value) messageSent,
|
required TResult Function(ChatEventMessageSent value) messageSent,
|
||||||
required TResult Function(ChatEventFavoritesRequested value)
|
required TResult Function(ChatEventFavoritesRequested value)
|
||||||
favoritesRequested,
|
favoritesRequested,
|
||||||
@@ -821,6 +849,7 @@ class _$ChatEventMessagesRequestedImpl implements ChatEventMessagesRequested {
|
|||||||
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult? Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult? Function(ChatEventMessageSent value)? messageSent,
|
TResult? Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -837,6 +866,7 @@ class _$ChatEventMessagesRequestedImpl implements ChatEventMessagesRequested {
|
|||||||
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult Function(ChatEventChatSelected value)? chatSelected,
|
TResult Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult Function(ChatEventMessageSent value)? messageSent,
|
TResult Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -862,6 +892,206 @@ abstract class ChatEventMessagesRequested implements ChatEvent {
|
|||||||
get copyWith => throw _privateConstructorUsedError;
|
get copyWith => throw _privateConstructorUsedError;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// @nodoc
|
||||||
|
abstract class _$$ChatEventMessageReceivedImplCopyWith<$Res> {
|
||||||
|
factory _$$ChatEventMessageReceivedImplCopyWith(
|
||||||
|
_$ChatEventMessageReceivedImpl value,
|
||||||
|
$Res Function(_$ChatEventMessageReceivedImpl) then) =
|
||||||
|
__$$ChatEventMessageReceivedImplCopyWithImpl<$Res>;
|
||||||
|
@useResult
|
||||||
|
$Res call({Message message});
|
||||||
|
|
||||||
|
$MessageCopyWith<$Res> get message;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// @nodoc
|
||||||
|
class __$$ChatEventMessageReceivedImplCopyWithImpl<$Res>
|
||||||
|
extends _$ChatEventCopyWithImpl<$Res, _$ChatEventMessageReceivedImpl>
|
||||||
|
implements _$$ChatEventMessageReceivedImplCopyWith<$Res> {
|
||||||
|
__$$ChatEventMessageReceivedImplCopyWithImpl(
|
||||||
|
_$ChatEventMessageReceivedImpl _value,
|
||||||
|
$Res Function(_$ChatEventMessageReceivedImpl) _then)
|
||||||
|
: super(_value, _then);
|
||||||
|
|
||||||
|
@pragma('vm:prefer-inline')
|
||||||
|
@override
|
||||||
|
$Res call({
|
||||||
|
Object? message = null,
|
||||||
|
}) {
|
||||||
|
return _then(_$ChatEventMessageReceivedImpl(
|
||||||
|
null == message
|
||||||
|
? _value.message
|
||||||
|
: message // ignore: cast_nullable_to_non_nullable
|
||||||
|
as Message,
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
@pragma('vm:prefer-inline')
|
||||||
|
$MessageCopyWith<$Res> get message {
|
||||||
|
return $MessageCopyWith<$Res>(_value.message, (value) {
|
||||||
|
return _then(_value.copyWith(message: value));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// @nodoc
|
||||||
|
|
||||||
|
class _$ChatEventMessageReceivedImpl implements ChatEventMessageReceived {
|
||||||
|
const _$ChatEventMessageReceivedImpl(this.message);
|
||||||
|
|
||||||
|
@override
|
||||||
|
final Message message;
|
||||||
|
|
||||||
|
@override
|
||||||
|
String toString() {
|
||||||
|
return 'ChatEvent.messageReceived(message: $message)';
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
bool operator ==(Object other) {
|
||||||
|
return identical(this, other) ||
|
||||||
|
(other.runtimeType == runtimeType &&
|
||||||
|
other is _$ChatEventMessageReceivedImpl &&
|
||||||
|
(identical(other.message, message) || other.message == message));
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
int get hashCode => Object.hash(runtimeType, message);
|
||||||
|
|
||||||
|
@JsonKey(ignore: true)
|
||||||
|
@override
|
||||||
|
@pragma('vm:prefer-inline')
|
||||||
|
_$$ChatEventMessageReceivedImplCopyWith<_$ChatEventMessageReceivedImpl>
|
||||||
|
get copyWith => __$$ChatEventMessageReceivedImplCopyWithImpl<
|
||||||
|
_$ChatEventMessageReceivedImpl>(this, _$identity);
|
||||||
|
|
||||||
|
@override
|
||||||
|
@optionalTypeArgs
|
||||||
|
TResult when<TResult extends Object?>({
|
||||||
|
required TResult Function(String? userId) started,
|
||||||
|
required TResult Function(String? currentUserId) chatsLoaded,
|
||||||
|
required TResult Function(String chatId) chatSelected,
|
||||||
|
required TResult Function(String chatId, String? cursor) messagesRequested,
|
||||||
|
required TResult Function(Message message) messageReceived,
|
||||||
|
required TResult Function(String chatId, String content) messageSent,
|
||||||
|
required TResult Function() favoritesRequested,
|
||||||
|
required TResult Function(String chatId, String userId, bool isTyping)
|
||||||
|
typingUpdated,
|
||||||
|
required TResult Function(String chatId, bool isTyping) sendTypingStatus,
|
||||||
|
required TResult Function() cacheCleared,
|
||||||
|
}) {
|
||||||
|
return messageReceived(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
@optionalTypeArgs
|
||||||
|
TResult? whenOrNull<TResult extends Object?>({
|
||||||
|
TResult? Function(String? userId)? started,
|
||||||
|
TResult? Function(String? currentUserId)? chatsLoaded,
|
||||||
|
TResult? Function(String chatId)? chatSelected,
|
||||||
|
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult? Function(Message message)? messageReceived,
|
||||||
|
TResult? Function(String chatId, String content)? messageSent,
|
||||||
|
TResult? Function()? favoritesRequested,
|
||||||
|
TResult? Function(String chatId, String userId, bool isTyping)?
|
||||||
|
typingUpdated,
|
||||||
|
TResult? Function(String chatId, bool isTyping)? sendTypingStatus,
|
||||||
|
TResult? Function()? cacheCleared,
|
||||||
|
}) {
|
||||||
|
return messageReceived?.call(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
@optionalTypeArgs
|
||||||
|
TResult maybeWhen<TResult extends Object?>({
|
||||||
|
TResult Function(String? userId)? started,
|
||||||
|
TResult Function(String? currentUserId)? chatsLoaded,
|
||||||
|
TResult Function(String chatId)? chatSelected,
|
||||||
|
TResult Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult Function(Message message)? messageReceived,
|
||||||
|
TResult Function(String chatId, String content)? messageSent,
|
||||||
|
TResult Function()? favoritesRequested,
|
||||||
|
TResult Function(String chatId, String userId, bool isTyping)?
|
||||||
|
typingUpdated,
|
||||||
|
TResult Function(String chatId, bool isTyping)? sendTypingStatus,
|
||||||
|
TResult Function()? cacheCleared,
|
||||||
|
required TResult orElse(),
|
||||||
|
}) {
|
||||||
|
if (messageReceived != null) {
|
||||||
|
return messageReceived(message);
|
||||||
|
}
|
||||||
|
return orElse();
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
@optionalTypeArgs
|
||||||
|
TResult map<TResult extends Object?>({
|
||||||
|
required TResult Function(ChatEventStarted value) started,
|
||||||
|
required TResult Function(ChatEventChatsLoaded value) chatsLoaded,
|
||||||
|
required TResult Function(ChatEventChatSelected value) chatSelected,
|
||||||
|
required TResult Function(ChatEventMessagesRequested value)
|
||||||
|
messagesRequested,
|
||||||
|
required TResult Function(ChatEventMessageReceived value) messageReceived,
|
||||||
|
required TResult Function(ChatEventMessageSent value) messageSent,
|
||||||
|
required TResult Function(ChatEventFavoritesRequested value)
|
||||||
|
favoritesRequested,
|
||||||
|
required TResult Function(ChatEventTypingUpdated value) typingUpdated,
|
||||||
|
required TResult Function(ChatEventSendTypingStatus value) sendTypingStatus,
|
||||||
|
required TResult Function(ChatEventCacheCleared value) cacheCleared,
|
||||||
|
}) {
|
||||||
|
return messageReceived(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
@optionalTypeArgs
|
||||||
|
TResult? mapOrNull<TResult extends Object?>({
|
||||||
|
TResult? Function(ChatEventStarted value)? started,
|
||||||
|
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
|
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
||||||
|
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult? Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
|
TResult? Function(ChatEventMessageSent value)? messageSent,
|
||||||
|
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
|
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
|
TResult? Function(ChatEventSendTypingStatus value)? sendTypingStatus,
|
||||||
|
TResult? Function(ChatEventCacheCleared value)? cacheCleared,
|
||||||
|
}) {
|
||||||
|
return messageReceived?.call(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
@optionalTypeArgs
|
||||||
|
TResult maybeMap<TResult extends Object?>({
|
||||||
|
TResult Function(ChatEventStarted value)? started,
|
||||||
|
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
|
TResult Function(ChatEventChatSelected value)? chatSelected,
|
||||||
|
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
|
TResult Function(ChatEventMessageSent value)? messageSent,
|
||||||
|
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
|
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
|
TResult Function(ChatEventSendTypingStatus value)? sendTypingStatus,
|
||||||
|
TResult Function(ChatEventCacheCleared value)? cacheCleared,
|
||||||
|
required TResult orElse(),
|
||||||
|
}) {
|
||||||
|
if (messageReceived != null) {
|
||||||
|
return messageReceived(this);
|
||||||
|
}
|
||||||
|
return orElse();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
abstract class ChatEventMessageReceived implements ChatEvent {
|
||||||
|
const factory ChatEventMessageReceived(final Message message) =
|
||||||
|
_$ChatEventMessageReceivedImpl;
|
||||||
|
|
||||||
|
Message get message;
|
||||||
|
@JsonKey(ignore: true)
|
||||||
|
_$$ChatEventMessageReceivedImplCopyWith<_$ChatEventMessageReceivedImpl>
|
||||||
|
get copyWith => throw _privateConstructorUsedError;
|
||||||
|
}
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
abstract class _$$ChatEventMessageSentImplCopyWith<$Res> {
|
abstract class _$$ChatEventMessageSentImplCopyWith<$Res> {
|
||||||
factory _$$ChatEventMessageSentImplCopyWith(_$ChatEventMessageSentImpl value,
|
factory _$$ChatEventMessageSentImplCopyWith(_$ChatEventMessageSentImpl value,
|
||||||
@@ -940,6 +1170,7 @@ class _$ChatEventMessageSentImpl implements ChatEventMessageSent {
|
|||||||
required TResult Function(String? currentUserId) chatsLoaded,
|
required TResult Function(String? currentUserId) chatsLoaded,
|
||||||
required TResult Function(String chatId) chatSelected,
|
required TResult Function(String chatId) chatSelected,
|
||||||
required TResult Function(String chatId, String? cursor) messagesRequested,
|
required TResult Function(String chatId, String? cursor) messagesRequested,
|
||||||
|
required TResult Function(Message message) messageReceived,
|
||||||
required TResult Function(String chatId, String content) messageSent,
|
required TResult Function(String chatId, String content) messageSent,
|
||||||
required TResult Function() favoritesRequested,
|
required TResult Function() favoritesRequested,
|
||||||
required TResult Function(String chatId, String userId, bool isTyping)
|
required TResult Function(String chatId, String userId, bool isTyping)
|
||||||
@@ -957,6 +1188,7 @@ class _$ChatEventMessageSentImpl implements ChatEventMessageSent {
|
|||||||
TResult? Function(String? currentUserId)? chatsLoaded,
|
TResult? Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult? Function(String chatId)? chatSelected,
|
TResult? Function(String chatId)? chatSelected,
|
||||||
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult? Function(Message message)? messageReceived,
|
||||||
TResult? Function(String chatId, String content)? messageSent,
|
TResult? Function(String chatId, String content)? messageSent,
|
||||||
TResult? Function()? favoritesRequested,
|
TResult? Function()? favoritesRequested,
|
||||||
TResult? Function(String chatId, String userId, bool isTyping)?
|
TResult? Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -974,6 +1206,7 @@ class _$ChatEventMessageSentImpl implements ChatEventMessageSent {
|
|||||||
TResult Function(String? currentUserId)? chatsLoaded,
|
TResult Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult Function(String chatId)? chatSelected,
|
TResult Function(String chatId)? chatSelected,
|
||||||
TResult Function(String chatId, String? cursor)? messagesRequested,
|
TResult Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult Function(Message message)? messageReceived,
|
||||||
TResult Function(String chatId, String content)? messageSent,
|
TResult Function(String chatId, String content)? messageSent,
|
||||||
TResult Function()? favoritesRequested,
|
TResult Function()? favoritesRequested,
|
||||||
TResult Function(String chatId, String userId, bool isTyping)?
|
TResult Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -996,6 +1229,7 @@ class _$ChatEventMessageSentImpl implements ChatEventMessageSent {
|
|||||||
required TResult Function(ChatEventChatSelected value) chatSelected,
|
required TResult Function(ChatEventChatSelected value) chatSelected,
|
||||||
required TResult Function(ChatEventMessagesRequested value)
|
required TResult Function(ChatEventMessagesRequested value)
|
||||||
messagesRequested,
|
messagesRequested,
|
||||||
|
required TResult Function(ChatEventMessageReceived value) messageReceived,
|
||||||
required TResult Function(ChatEventMessageSent value) messageSent,
|
required TResult Function(ChatEventMessageSent value) messageSent,
|
||||||
required TResult Function(ChatEventFavoritesRequested value)
|
required TResult Function(ChatEventFavoritesRequested value)
|
||||||
favoritesRequested,
|
favoritesRequested,
|
||||||
@@ -1013,6 +1247,7 @@ class _$ChatEventMessageSentImpl implements ChatEventMessageSent {
|
|||||||
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult? Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult? Function(ChatEventMessageSent value)? messageSent,
|
TResult? Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -1029,6 +1264,7 @@ class _$ChatEventMessageSentImpl implements ChatEventMessageSent {
|
|||||||
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult Function(ChatEventChatSelected value)? chatSelected,
|
TResult Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult Function(ChatEventMessageSent value)? messageSent,
|
TResult Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -1099,6 +1335,7 @@ class _$ChatEventFavoritesRequestedImpl implements ChatEventFavoritesRequested {
|
|||||||
required TResult Function(String? currentUserId) chatsLoaded,
|
required TResult Function(String? currentUserId) chatsLoaded,
|
||||||
required TResult Function(String chatId) chatSelected,
|
required TResult Function(String chatId) chatSelected,
|
||||||
required TResult Function(String chatId, String? cursor) messagesRequested,
|
required TResult Function(String chatId, String? cursor) messagesRequested,
|
||||||
|
required TResult Function(Message message) messageReceived,
|
||||||
required TResult Function(String chatId, String content) messageSent,
|
required TResult Function(String chatId, String content) messageSent,
|
||||||
required TResult Function() favoritesRequested,
|
required TResult Function() favoritesRequested,
|
||||||
required TResult Function(String chatId, String userId, bool isTyping)
|
required TResult Function(String chatId, String userId, bool isTyping)
|
||||||
@@ -1116,6 +1353,7 @@ class _$ChatEventFavoritesRequestedImpl implements ChatEventFavoritesRequested {
|
|||||||
TResult? Function(String? currentUserId)? chatsLoaded,
|
TResult? Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult? Function(String chatId)? chatSelected,
|
TResult? Function(String chatId)? chatSelected,
|
||||||
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult? Function(Message message)? messageReceived,
|
||||||
TResult? Function(String chatId, String content)? messageSent,
|
TResult? Function(String chatId, String content)? messageSent,
|
||||||
TResult? Function()? favoritesRequested,
|
TResult? Function()? favoritesRequested,
|
||||||
TResult? Function(String chatId, String userId, bool isTyping)?
|
TResult? Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -1133,6 +1371,7 @@ class _$ChatEventFavoritesRequestedImpl implements ChatEventFavoritesRequested {
|
|||||||
TResult Function(String? currentUserId)? chatsLoaded,
|
TResult Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult Function(String chatId)? chatSelected,
|
TResult Function(String chatId)? chatSelected,
|
||||||
TResult Function(String chatId, String? cursor)? messagesRequested,
|
TResult Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult Function(Message message)? messageReceived,
|
||||||
TResult Function(String chatId, String content)? messageSent,
|
TResult Function(String chatId, String content)? messageSent,
|
||||||
TResult Function()? favoritesRequested,
|
TResult Function()? favoritesRequested,
|
||||||
TResult Function(String chatId, String userId, bool isTyping)?
|
TResult Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -1155,6 +1394,7 @@ class _$ChatEventFavoritesRequestedImpl implements ChatEventFavoritesRequested {
|
|||||||
required TResult Function(ChatEventChatSelected value) chatSelected,
|
required TResult Function(ChatEventChatSelected value) chatSelected,
|
||||||
required TResult Function(ChatEventMessagesRequested value)
|
required TResult Function(ChatEventMessagesRequested value)
|
||||||
messagesRequested,
|
messagesRequested,
|
||||||
|
required TResult Function(ChatEventMessageReceived value) messageReceived,
|
||||||
required TResult Function(ChatEventMessageSent value) messageSent,
|
required TResult Function(ChatEventMessageSent value) messageSent,
|
||||||
required TResult Function(ChatEventFavoritesRequested value)
|
required TResult Function(ChatEventFavoritesRequested value)
|
||||||
favoritesRequested,
|
favoritesRequested,
|
||||||
@@ -1172,6 +1412,7 @@ class _$ChatEventFavoritesRequestedImpl implements ChatEventFavoritesRequested {
|
|||||||
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult? Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult? Function(ChatEventMessageSent value)? messageSent,
|
TResult? Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -1188,6 +1429,7 @@ class _$ChatEventFavoritesRequestedImpl implements ChatEventFavoritesRequested {
|
|||||||
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult Function(ChatEventChatSelected value)? chatSelected,
|
TResult Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult Function(ChatEventMessageSent value)? messageSent,
|
TResult Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -1295,6 +1537,7 @@ class _$ChatEventTypingUpdatedImpl implements ChatEventTypingUpdated {
|
|||||||
required TResult Function(String? currentUserId) chatsLoaded,
|
required TResult Function(String? currentUserId) chatsLoaded,
|
||||||
required TResult Function(String chatId) chatSelected,
|
required TResult Function(String chatId) chatSelected,
|
||||||
required TResult Function(String chatId, String? cursor) messagesRequested,
|
required TResult Function(String chatId, String? cursor) messagesRequested,
|
||||||
|
required TResult Function(Message message) messageReceived,
|
||||||
required TResult Function(String chatId, String content) messageSent,
|
required TResult Function(String chatId, String content) messageSent,
|
||||||
required TResult Function() favoritesRequested,
|
required TResult Function() favoritesRequested,
|
||||||
required TResult Function(String chatId, String userId, bool isTyping)
|
required TResult Function(String chatId, String userId, bool isTyping)
|
||||||
@@ -1312,6 +1555,7 @@ class _$ChatEventTypingUpdatedImpl implements ChatEventTypingUpdated {
|
|||||||
TResult? Function(String? currentUserId)? chatsLoaded,
|
TResult? Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult? Function(String chatId)? chatSelected,
|
TResult? Function(String chatId)? chatSelected,
|
||||||
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult? Function(Message message)? messageReceived,
|
||||||
TResult? Function(String chatId, String content)? messageSent,
|
TResult? Function(String chatId, String content)? messageSent,
|
||||||
TResult? Function()? favoritesRequested,
|
TResult? Function()? favoritesRequested,
|
||||||
TResult? Function(String chatId, String userId, bool isTyping)?
|
TResult? Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -1329,6 +1573,7 @@ class _$ChatEventTypingUpdatedImpl implements ChatEventTypingUpdated {
|
|||||||
TResult Function(String? currentUserId)? chatsLoaded,
|
TResult Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult Function(String chatId)? chatSelected,
|
TResult Function(String chatId)? chatSelected,
|
||||||
TResult Function(String chatId, String? cursor)? messagesRequested,
|
TResult Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult Function(Message message)? messageReceived,
|
||||||
TResult Function(String chatId, String content)? messageSent,
|
TResult Function(String chatId, String content)? messageSent,
|
||||||
TResult Function()? favoritesRequested,
|
TResult Function()? favoritesRequested,
|
||||||
TResult Function(String chatId, String userId, bool isTyping)?
|
TResult Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -1351,6 +1596,7 @@ class _$ChatEventTypingUpdatedImpl implements ChatEventTypingUpdated {
|
|||||||
required TResult Function(ChatEventChatSelected value) chatSelected,
|
required TResult Function(ChatEventChatSelected value) chatSelected,
|
||||||
required TResult Function(ChatEventMessagesRequested value)
|
required TResult Function(ChatEventMessagesRequested value)
|
||||||
messagesRequested,
|
messagesRequested,
|
||||||
|
required TResult Function(ChatEventMessageReceived value) messageReceived,
|
||||||
required TResult Function(ChatEventMessageSent value) messageSent,
|
required TResult Function(ChatEventMessageSent value) messageSent,
|
||||||
required TResult Function(ChatEventFavoritesRequested value)
|
required TResult Function(ChatEventFavoritesRequested value)
|
||||||
favoritesRequested,
|
favoritesRequested,
|
||||||
@@ -1368,6 +1614,7 @@ class _$ChatEventTypingUpdatedImpl implements ChatEventTypingUpdated {
|
|||||||
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult? Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult? Function(ChatEventMessageSent value)? messageSent,
|
TResult? Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -1384,6 +1631,7 @@ class _$ChatEventTypingUpdatedImpl implements ChatEventTypingUpdated {
|
|||||||
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult Function(ChatEventChatSelected value)? chatSelected,
|
TResult Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult Function(ChatEventMessageSent value)? messageSent,
|
TResult Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -1491,6 +1739,7 @@ class _$ChatEventSendTypingStatusImpl implements ChatEventSendTypingStatus {
|
|||||||
required TResult Function(String? currentUserId) chatsLoaded,
|
required TResult Function(String? currentUserId) chatsLoaded,
|
||||||
required TResult Function(String chatId) chatSelected,
|
required TResult Function(String chatId) chatSelected,
|
||||||
required TResult Function(String chatId, String? cursor) messagesRequested,
|
required TResult Function(String chatId, String? cursor) messagesRequested,
|
||||||
|
required TResult Function(Message message) messageReceived,
|
||||||
required TResult Function(String chatId, String content) messageSent,
|
required TResult Function(String chatId, String content) messageSent,
|
||||||
required TResult Function() favoritesRequested,
|
required TResult Function() favoritesRequested,
|
||||||
required TResult Function(String chatId, String userId, bool isTyping)
|
required TResult Function(String chatId, String userId, bool isTyping)
|
||||||
@@ -1508,6 +1757,7 @@ class _$ChatEventSendTypingStatusImpl implements ChatEventSendTypingStatus {
|
|||||||
TResult? Function(String? currentUserId)? chatsLoaded,
|
TResult? Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult? Function(String chatId)? chatSelected,
|
TResult? Function(String chatId)? chatSelected,
|
||||||
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult? Function(Message message)? messageReceived,
|
||||||
TResult? Function(String chatId, String content)? messageSent,
|
TResult? Function(String chatId, String content)? messageSent,
|
||||||
TResult? Function()? favoritesRequested,
|
TResult? Function()? favoritesRequested,
|
||||||
TResult? Function(String chatId, String userId, bool isTyping)?
|
TResult? Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -1525,6 +1775,7 @@ class _$ChatEventSendTypingStatusImpl implements ChatEventSendTypingStatus {
|
|||||||
TResult Function(String? currentUserId)? chatsLoaded,
|
TResult Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult Function(String chatId)? chatSelected,
|
TResult Function(String chatId)? chatSelected,
|
||||||
TResult Function(String chatId, String? cursor)? messagesRequested,
|
TResult Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult Function(Message message)? messageReceived,
|
||||||
TResult Function(String chatId, String content)? messageSent,
|
TResult Function(String chatId, String content)? messageSent,
|
||||||
TResult Function()? favoritesRequested,
|
TResult Function()? favoritesRequested,
|
||||||
TResult Function(String chatId, String userId, bool isTyping)?
|
TResult Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -1547,6 +1798,7 @@ class _$ChatEventSendTypingStatusImpl implements ChatEventSendTypingStatus {
|
|||||||
required TResult Function(ChatEventChatSelected value) chatSelected,
|
required TResult Function(ChatEventChatSelected value) chatSelected,
|
||||||
required TResult Function(ChatEventMessagesRequested value)
|
required TResult Function(ChatEventMessagesRequested value)
|
||||||
messagesRequested,
|
messagesRequested,
|
||||||
|
required TResult Function(ChatEventMessageReceived value) messageReceived,
|
||||||
required TResult Function(ChatEventMessageSent value) messageSent,
|
required TResult Function(ChatEventMessageSent value) messageSent,
|
||||||
required TResult Function(ChatEventFavoritesRequested value)
|
required TResult Function(ChatEventFavoritesRequested value)
|
||||||
favoritesRequested,
|
favoritesRequested,
|
||||||
@@ -1564,6 +1816,7 @@ class _$ChatEventSendTypingStatusImpl implements ChatEventSendTypingStatus {
|
|||||||
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult? Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult? Function(ChatEventMessageSent value)? messageSent,
|
TResult? Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -1580,6 +1833,7 @@ class _$ChatEventSendTypingStatusImpl implements ChatEventSendTypingStatus {
|
|||||||
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult Function(ChatEventChatSelected value)? chatSelected,
|
TResult Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult Function(ChatEventMessageSent value)? messageSent,
|
TResult Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -1650,6 +1904,7 @@ class _$ChatEventCacheClearedImpl implements ChatEventCacheCleared {
|
|||||||
required TResult Function(String? currentUserId) chatsLoaded,
|
required TResult Function(String? currentUserId) chatsLoaded,
|
||||||
required TResult Function(String chatId) chatSelected,
|
required TResult Function(String chatId) chatSelected,
|
||||||
required TResult Function(String chatId, String? cursor) messagesRequested,
|
required TResult Function(String chatId, String? cursor) messagesRequested,
|
||||||
|
required TResult Function(Message message) messageReceived,
|
||||||
required TResult Function(String chatId, String content) messageSent,
|
required TResult Function(String chatId, String content) messageSent,
|
||||||
required TResult Function() favoritesRequested,
|
required TResult Function() favoritesRequested,
|
||||||
required TResult Function(String chatId, String userId, bool isTyping)
|
required TResult Function(String chatId, String userId, bool isTyping)
|
||||||
@@ -1667,6 +1922,7 @@ class _$ChatEventCacheClearedImpl implements ChatEventCacheCleared {
|
|||||||
TResult? Function(String? currentUserId)? chatsLoaded,
|
TResult? Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult? Function(String chatId)? chatSelected,
|
TResult? Function(String chatId)? chatSelected,
|
||||||
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
TResult? Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult? Function(Message message)? messageReceived,
|
||||||
TResult? Function(String chatId, String content)? messageSent,
|
TResult? Function(String chatId, String content)? messageSent,
|
||||||
TResult? Function()? favoritesRequested,
|
TResult? Function()? favoritesRequested,
|
||||||
TResult? Function(String chatId, String userId, bool isTyping)?
|
TResult? Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -1684,6 +1940,7 @@ class _$ChatEventCacheClearedImpl implements ChatEventCacheCleared {
|
|||||||
TResult Function(String? currentUserId)? chatsLoaded,
|
TResult Function(String? currentUserId)? chatsLoaded,
|
||||||
TResult Function(String chatId)? chatSelected,
|
TResult Function(String chatId)? chatSelected,
|
||||||
TResult Function(String chatId, String? cursor)? messagesRequested,
|
TResult Function(String chatId, String? cursor)? messagesRequested,
|
||||||
|
TResult Function(Message message)? messageReceived,
|
||||||
TResult Function(String chatId, String content)? messageSent,
|
TResult Function(String chatId, String content)? messageSent,
|
||||||
TResult Function()? favoritesRequested,
|
TResult Function()? favoritesRequested,
|
||||||
TResult Function(String chatId, String userId, bool isTyping)?
|
TResult Function(String chatId, String userId, bool isTyping)?
|
||||||
@@ -1706,6 +1963,7 @@ class _$ChatEventCacheClearedImpl implements ChatEventCacheCleared {
|
|||||||
required TResult Function(ChatEventChatSelected value) chatSelected,
|
required TResult Function(ChatEventChatSelected value) chatSelected,
|
||||||
required TResult Function(ChatEventMessagesRequested value)
|
required TResult Function(ChatEventMessagesRequested value)
|
||||||
messagesRequested,
|
messagesRequested,
|
||||||
|
required TResult Function(ChatEventMessageReceived value) messageReceived,
|
||||||
required TResult Function(ChatEventMessageSent value) messageSent,
|
required TResult Function(ChatEventMessageSent value) messageSent,
|
||||||
required TResult Function(ChatEventFavoritesRequested value)
|
required TResult Function(ChatEventFavoritesRequested value)
|
||||||
favoritesRequested,
|
favoritesRequested,
|
||||||
@@ -1723,6 +1981,7 @@ class _$ChatEventCacheClearedImpl implements ChatEventCacheCleared {
|
|||||||
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult? Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
TResult? Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult? Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult? Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult? Function(ChatEventMessageSent value)? messageSent,
|
TResult? Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult? Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult? Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
@@ -1739,6 +1998,7 @@ class _$ChatEventCacheClearedImpl implements ChatEventCacheCleared {
|
|||||||
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
TResult Function(ChatEventChatsLoaded value)? chatsLoaded,
|
||||||
TResult Function(ChatEventChatSelected value)? chatSelected,
|
TResult Function(ChatEventChatSelected value)? chatSelected,
|
||||||
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
TResult Function(ChatEventMessagesRequested value)? messagesRequested,
|
||||||
|
TResult Function(ChatEventMessageReceived value)? messageReceived,
|
||||||
TResult Function(ChatEventMessageSent value)? messageSent,
|
TResult Function(ChatEventMessageSent value)? messageSent,
|
||||||
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
TResult Function(ChatEventFavoritesRequested value)? favoritesRequested,
|
||||||
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
TResult Function(ChatEventTypingUpdated value)? typingUpdated,
|
||||||
|
|||||||
@@ -10,6 +10,6 @@ class ChatState with _$ChatState {
|
|||||||
const factory ChatState.loading({@Default({}) Map<String, Set<String>> typingUsers}) = ChatLoading;
|
const factory ChatState.loading({@Default({}) Map<String, Set<String>> typingUsers}) = ChatLoading;
|
||||||
const factory ChatState.chatsLoaded(List<Chat> chats, {@Default({}) Map<String, Set<String>> typingUsers}) = _ChatsLoaded;
|
const factory ChatState.chatsLoaded(List<Chat> chats, {@Default({}) Map<String, Set<String>> typingUsers}) = _ChatsLoaded;
|
||||||
const factory ChatState.chatSelected(Chat chat, List<Message> messages, {@Default({}) Map<String, Set<String>> typingUsers}) = _ChatSelected;
|
const factory ChatState.chatSelected(Chat chat, List<Message> messages, {@Default({}) Map<String, Set<String>> typingUsers}) = _ChatSelected;
|
||||||
const factory ChatState.messagesLoaded(List<Message> messages, {@Default({}) Map<String, Set<String>> typingUsers}) = _MessagesLoaded;
|
const factory ChatState.messagesLoaded(Chat chat, List<Message> messages, {@Default({}) Map<String, Set<String>> typingUsers}) = _MessagesLoaded;
|
||||||
const factory ChatState.error(String message, {@Default({}) Map<String, Set<String>> typingUsers}) = ChatError;
|
const factory ChatState.error(String message, {@Default({}) Map<String, Set<String>> typingUsers}) = ChatError;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,8 +28,8 @@ mixin _$ChatState {
|
|||||||
required TResult Function(Chat chat, List<Message> messages,
|
required TResult Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)
|
Map<String, Set<String>> typingUsers)
|
||||||
chatSelected,
|
chatSelected,
|
||||||
required TResult Function(
|
required TResult Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)
|
Map<String, Set<String>> typingUsers)
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
required TResult Function(
|
required TResult Function(
|
||||||
String message, Map<String, Set<String>> typingUsers)
|
String message, Map<String, Set<String>> typingUsers)
|
||||||
@@ -45,8 +45,8 @@ mixin _$ChatState {
|
|||||||
TResult? Function(Chat chat, List<Message> messages,
|
TResult? Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
chatSelected,
|
chatSelected,
|
||||||
TResult? Function(
|
TResult? Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
TResult? Function(String message, Map<String, Set<String>> typingUsers)?
|
TResult? Function(String message, Map<String, Set<String>> typingUsers)?
|
||||||
error,
|
error,
|
||||||
@@ -61,8 +61,8 @@ mixin _$ChatState {
|
|||||||
TResult Function(Chat chat, List<Message> messages,
|
TResult Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
chatSelected,
|
chatSelected,
|
||||||
TResult Function(
|
TResult Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
TResult Function(String message, Map<String, Set<String>> typingUsers)?
|
TResult Function(String message, Map<String, Set<String>> typingUsers)?
|
||||||
error,
|
error,
|
||||||
@@ -222,8 +222,8 @@ class _$ChatInitialImpl implements ChatInitial {
|
|||||||
required TResult Function(Chat chat, List<Message> messages,
|
required TResult Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)
|
Map<String, Set<String>> typingUsers)
|
||||||
chatSelected,
|
chatSelected,
|
||||||
required TResult Function(
|
required TResult Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)
|
Map<String, Set<String>> typingUsers)
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
required TResult Function(
|
required TResult Function(
|
||||||
String message, Map<String, Set<String>> typingUsers)
|
String message, Map<String, Set<String>> typingUsers)
|
||||||
@@ -242,8 +242,8 @@ class _$ChatInitialImpl implements ChatInitial {
|
|||||||
TResult? Function(Chat chat, List<Message> messages,
|
TResult? Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
chatSelected,
|
chatSelected,
|
||||||
TResult? Function(
|
TResult? Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
TResult? Function(String message, Map<String, Set<String>> typingUsers)?
|
TResult? Function(String message, Map<String, Set<String>> typingUsers)?
|
||||||
error,
|
error,
|
||||||
@@ -261,8 +261,8 @@ class _$ChatInitialImpl implements ChatInitial {
|
|||||||
TResult Function(Chat chat, List<Message> messages,
|
TResult Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
chatSelected,
|
chatSelected,
|
||||||
TResult Function(
|
TResult Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
TResult Function(String message, Map<String, Set<String>> typingUsers)?
|
TResult Function(String message, Map<String, Set<String>> typingUsers)?
|
||||||
error,
|
error,
|
||||||
@@ -414,8 +414,8 @@ class _$ChatLoadingImpl implements ChatLoading {
|
|||||||
required TResult Function(Chat chat, List<Message> messages,
|
required TResult Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)
|
Map<String, Set<String>> typingUsers)
|
||||||
chatSelected,
|
chatSelected,
|
||||||
required TResult Function(
|
required TResult Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)
|
Map<String, Set<String>> typingUsers)
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
required TResult Function(
|
required TResult Function(
|
||||||
String message, Map<String, Set<String>> typingUsers)
|
String message, Map<String, Set<String>> typingUsers)
|
||||||
@@ -434,8 +434,8 @@ class _$ChatLoadingImpl implements ChatLoading {
|
|||||||
TResult? Function(Chat chat, List<Message> messages,
|
TResult? Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
chatSelected,
|
chatSelected,
|
||||||
TResult? Function(
|
TResult? Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
TResult? Function(String message, Map<String, Set<String>> typingUsers)?
|
TResult? Function(String message, Map<String, Set<String>> typingUsers)?
|
||||||
error,
|
error,
|
||||||
@@ -453,8 +453,8 @@ class _$ChatLoadingImpl implements ChatLoading {
|
|||||||
TResult Function(Chat chat, List<Message> messages,
|
TResult Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
chatSelected,
|
chatSelected,
|
||||||
TResult Function(
|
TResult Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
TResult Function(String message, Map<String, Set<String>> typingUsers)?
|
TResult Function(String message, Map<String, Set<String>> typingUsers)?
|
||||||
error,
|
error,
|
||||||
@@ -623,8 +623,8 @@ class _$ChatsLoadedImpl implements _ChatsLoaded {
|
|||||||
required TResult Function(Chat chat, List<Message> messages,
|
required TResult Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)
|
Map<String, Set<String>> typingUsers)
|
||||||
chatSelected,
|
chatSelected,
|
||||||
required TResult Function(
|
required TResult Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)
|
Map<String, Set<String>> typingUsers)
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
required TResult Function(
|
required TResult Function(
|
||||||
String message, Map<String, Set<String>> typingUsers)
|
String message, Map<String, Set<String>> typingUsers)
|
||||||
@@ -643,8 +643,8 @@ class _$ChatsLoadedImpl implements _ChatsLoaded {
|
|||||||
TResult? Function(Chat chat, List<Message> messages,
|
TResult? Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
chatSelected,
|
chatSelected,
|
||||||
TResult? Function(
|
TResult? Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
TResult? Function(String message, Map<String, Set<String>> typingUsers)?
|
TResult? Function(String message, Map<String, Set<String>> typingUsers)?
|
||||||
error,
|
error,
|
||||||
@@ -662,8 +662,8 @@ class _$ChatsLoadedImpl implements _ChatsLoaded {
|
|||||||
TResult Function(Chat chat, List<Message> messages,
|
TResult Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
chatSelected,
|
chatSelected,
|
||||||
TResult Function(
|
TResult Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
TResult Function(String message, Map<String, Set<String>> typingUsers)?
|
TResult Function(String message, Map<String, Set<String>> typingUsers)?
|
||||||
error,
|
error,
|
||||||
@@ -855,8 +855,8 @@ class _$ChatSelectedImpl implements _ChatSelected {
|
|||||||
required TResult Function(Chat chat, List<Message> messages,
|
required TResult Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)
|
Map<String, Set<String>> typingUsers)
|
||||||
chatSelected,
|
chatSelected,
|
||||||
required TResult Function(
|
required TResult Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)
|
Map<String, Set<String>> typingUsers)
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
required TResult Function(
|
required TResult Function(
|
||||||
String message, Map<String, Set<String>> typingUsers)
|
String message, Map<String, Set<String>> typingUsers)
|
||||||
@@ -875,8 +875,8 @@ class _$ChatSelectedImpl implements _ChatSelected {
|
|||||||
TResult? Function(Chat chat, List<Message> messages,
|
TResult? Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
chatSelected,
|
chatSelected,
|
||||||
TResult? Function(
|
TResult? Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
TResult? Function(String message, Map<String, Set<String>> typingUsers)?
|
TResult? Function(String message, Map<String, Set<String>> typingUsers)?
|
||||||
error,
|
error,
|
||||||
@@ -894,8 +894,8 @@ class _$ChatSelectedImpl implements _ChatSelected {
|
|||||||
TResult Function(Chat chat, List<Message> messages,
|
TResult Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
chatSelected,
|
chatSelected,
|
||||||
TResult Function(
|
TResult Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
TResult Function(String message, Map<String, Set<String>> typingUsers)?
|
TResult Function(String message, Map<String, Set<String>> typingUsers)?
|
||||||
error,
|
error,
|
||||||
@@ -973,7 +973,12 @@ abstract class _$$MessagesLoadedImplCopyWith<$Res>
|
|||||||
__$$MessagesLoadedImplCopyWithImpl<$Res>;
|
__$$MessagesLoadedImplCopyWithImpl<$Res>;
|
||||||
@override
|
@override
|
||||||
@useResult
|
@useResult
|
||||||
$Res call({List<Message> messages, Map<String, Set<String>> typingUsers});
|
$Res call(
|
||||||
|
{Chat chat,
|
||||||
|
List<Message> messages,
|
||||||
|
Map<String, Set<String>> typingUsers});
|
||||||
|
|
||||||
|
$ChatCopyWith<$Res> get chat;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
@@ -987,10 +992,15 @@ class __$$MessagesLoadedImplCopyWithImpl<$Res>
|
|||||||
@pragma('vm:prefer-inline')
|
@pragma('vm:prefer-inline')
|
||||||
@override
|
@override
|
||||||
$Res call({
|
$Res call({
|
||||||
|
Object? chat = null,
|
||||||
Object? messages = null,
|
Object? messages = null,
|
||||||
Object? typingUsers = null,
|
Object? typingUsers = null,
|
||||||
}) {
|
}) {
|
||||||
return _then(_$MessagesLoadedImpl(
|
return _then(_$MessagesLoadedImpl(
|
||||||
|
null == chat
|
||||||
|
? _value.chat
|
||||||
|
: chat // ignore: cast_nullable_to_non_nullable
|
||||||
|
as Chat,
|
||||||
null == messages
|
null == messages
|
||||||
? _value._messages
|
? _value._messages
|
||||||
: messages // ignore: cast_nullable_to_non_nullable
|
: messages // ignore: cast_nullable_to_non_nullable
|
||||||
@@ -1001,16 +1011,26 @@ class __$$MessagesLoadedImplCopyWithImpl<$Res>
|
|||||||
as Map<String, Set<String>>,
|
as Map<String, Set<String>>,
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
@pragma('vm:prefer-inline')
|
||||||
|
$ChatCopyWith<$Res> get chat {
|
||||||
|
return $ChatCopyWith<$Res>(_value.chat, (value) {
|
||||||
|
return _then(_value.copyWith(chat: value));
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// @nodoc
|
/// @nodoc
|
||||||
|
|
||||||
class _$MessagesLoadedImpl implements _MessagesLoaded {
|
class _$MessagesLoadedImpl implements _MessagesLoaded {
|
||||||
const _$MessagesLoadedImpl(final List<Message> messages,
|
const _$MessagesLoadedImpl(this.chat, final List<Message> messages,
|
||||||
{final Map<String, Set<String>> typingUsers = const {}})
|
{final Map<String, Set<String>> typingUsers = const {}})
|
||||||
: _messages = messages,
|
: _messages = messages,
|
||||||
_typingUsers = typingUsers;
|
_typingUsers = typingUsers;
|
||||||
|
|
||||||
|
@override
|
||||||
|
final Chat chat;
|
||||||
final List<Message> _messages;
|
final List<Message> _messages;
|
||||||
@override
|
@override
|
||||||
List<Message> get messages {
|
List<Message> get messages {
|
||||||
@@ -1030,7 +1050,7 @@ class _$MessagesLoadedImpl implements _MessagesLoaded {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
String toString() {
|
String toString() {
|
||||||
return 'ChatState.messagesLoaded(messages: $messages, typingUsers: $typingUsers)';
|
return 'ChatState.messagesLoaded(chat: $chat, messages: $messages, typingUsers: $typingUsers)';
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -1038,6 +1058,7 @@ class _$MessagesLoadedImpl implements _MessagesLoaded {
|
|||||||
return identical(this, other) ||
|
return identical(this, other) ||
|
||||||
(other.runtimeType == runtimeType &&
|
(other.runtimeType == runtimeType &&
|
||||||
other is _$MessagesLoadedImpl &&
|
other is _$MessagesLoadedImpl &&
|
||||||
|
(identical(other.chat, chat) || other.chat == chat) &&
|
||||||
const DeepCollectionEquality().equals(other._messages, _messages) &&
|
const DeepCollectionEquality().equals(other._messages, _messages) &&
|
||||||
const DeepCollectionEquality()
|
const DeepCollectionEquality()
|
||||||
.equals(other._typingUsers, _typingUsers));
|
.equals(other._typingUsers, _typingUsers));
|
||||||
@@ -1046,6 +1067,7 @@ class _$MessagesLoadedImpl implements _MessagesLoaded {
|
|||||||
@override
|
@override
|
||||||
int get hashCode => Object.hash(
|
int get hashCode => Object.hash(
|
||||||
runtimeType,
|
runtimeType,
|
||||||
|
chat,
|
||||||
const DeepCollectionEquality().hash(_messages),
|
const DeepCollectionEquality().hash(_messages),
|
||||||
const DeepCollectionEquality().hash(_typingUsers));
|
const DeepCollectionEquality().hash(_typingUsers));
|
||||||
|
|
||||||
@@ -1067,14 +1089,14 @@ class _$MessagesLoadedImpl implements _MessagesLoaded {
|
|||||||
required TResult Function(Chat chat, List<Message> messages,
|
required TResult Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)
|
Map<String, Set<String>> typingUsers)
|
||||||
chatSelected,
|
chatSelected,
|
||||||
required TResult Function(
|
required TResult Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)
|
Map<String, Set<String>> typingUsers)
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
required TResult Function(
|
required TResult Function(
|
||||||
String message, Map<String, Set<String>> typingUsers)
|
String message, Map<String, Set<String>> typingUsers)
|
||||||
error,
|
error,
|
||||||
}) {
|
}) {
|
||||||
return messagesLoaded(messages, typingUsers);
|
return messagesLoaded(chat, messages, typingUsers);
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -1087,13 +1109,13 @@ class _$MessagesLoadedImpl implements _MessagesLoaded {
|
|||||||
TResult? Function(Chat chat, List<Message> messages,
|
TResult? Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
chatSelected,
|
chatSelected,
|
||||||
TResult? Function(
|
TResult? Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
TResult? Function(String message, Map<String, Set<String>> typingUsers)?
|
TResult? Function(String message, Map<String, Set<String>> typingUsers)?
|
||||||
error,
|
error,
|
||||||
}) {
|
}) {
|
||||||
return messagesLoaded?.call(messages, typingUsers);
|
return messagesLoaded?.call(chat, messages, typingUsers);
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -1106,15 +1128,15 @@ class _$MessagesLoadedImpl implements _MessagesLoaded {
|
|||||||
TResult Function(Chat chat, List<Message> messages,
|
TResult Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
chatSelected,
|
chatSelected,
|
||||||
TResult Function(
|
TResult Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
TResult Function(String message, Map<String, Set<String>> typingUsers)?
|
TResult Function(String message, Map<String, Set<String>> typingUsers)?
|
||||||
error,
|
error,
|
||||||
required TResult orElse(),
|
required TResult orElse(),
|
||||||
}) {
|
}) {
|
||||||
if (messagesLoaded != null) {
|
if (messagesLoaded != null) {
|
||||||
return messagesLoaded(messages, typingUsers);
|
return messagesLoaded(chat, messages, typingUsers);
|
||||||
}
|
}
|
||||||
return orElse();
|
return orElse();
|
||||||
}
|
}
|
||||||
@@ -1164,9 +1186,10 @@ class _$MessagesLoadedImpl implements _MessagesLoaded {
|
|||||||
}
|
}
|
||||||
|
|
||||||
abstract class _MessagesLoaded implements ChatState {
|
abstract class _MessagesLoaded implements ChatState {
|
||||||
const factory _MessagesLoaded(final List<Message> messages,
|
const factory _MessagesLoaded(final Chat chat, final List<Message> messages,
|
||||||
{final Map<String, Set<String>> typingUsers}) = _$MessagesLoadedImpl;
|
{final Map<String, Set<String>> typingUsers}) = _$MessagesLoadedImpl;
|
||||||
|
|
||||||
|
Chat get chat;
|
||||||
List<Message> get messages;
|
List<Message> get messages;
|
||||||
@override
|
@override
|
||||||
Map<String, Set<String>> get typingUsers;
|
Map<String, Set<String>> get typingUsers;
|
||||||
@@ -1268,8 +1291,8 @@ class _$ChatErrorImpl implements ChatError {
|
|||||||
required TResult Function(Chat chat, List<Message> messages,
|
required TResult Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)
|
Map<String, Set<String>> typingUsers)
|
||||||
chatSelected,
|
chatSelected,
|
||||||
required TResult Function(
|
required TResult Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)
|
Map<String, Set<String>> typingUsers)
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
required TResult Function(
|
required TResult Function(
|
||||||
String message, Map<String, Set<String>> typingUsers)
|
String message, Map<String, Set<String>> typingUsers)
|
||||||
@@ -1288,8 +1311,8 @@ class _$ChatErrorImpl implements ChatError {
|
|||||||
TResult? Function(Chat chat, List<Message> messages,
|
TResult? Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
chatSelected,
|
chatSelected,
|
||||||
TResult? Function(
|
TResult? Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
TResult? Function(String message, Map<String, Set<String>> typingUsers)?
|
TResult? Function(String message, Map<String, Set<String>> typingUsers)?
|
||||||
error,
|
error,
|
||||||
@@ -1307,8 +1330,8 @@ class _$ChatErrorImpl implements ChatError {
|
|||||||
TResult Function(Chat chat, List<Message> messages,
|
TResult Function(Chat chat, List<Message> messages,
|
||||||
Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
chatSelected,
|
chatSelected,
|
||||||
TResult Function(
|
TResult Function(Chat chat, List<Message> messages,
|
||||||
List<Message> messages, Map<String, Set<String>> typingUsers)?
|
Map<String, Set<String>> typingUsers)?
|
||||||
messagesLoaded,
|
messagesLoaded,
|
||||||
TResult Function(String message, Map<String, Set<String>> typingUsers)?
|
TResult Function(String message, Map<String, Set<String>> typingUsers)?
|
||||||
error,
|
error,
|
||||||
|
|||||||
@@ -35,44 +35,48 @@ class _ChatDetailPageState extends State<ChatDetailPage> {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return BlocBuilder<ChatBloc, ChatState>(
|
return Scaffold(
|
||||||
builder: (context, state) {
|
appBar: AppBar(
|
||||||
final currentChat = state.maybeWhen(
|
centerTitle: false,
|
||||||
chatSelected: (chat, _, __) => chat,
|
title: BlocBuilder<ChatBloc, ChatState>(
|
||||||
orElse: () => widget.chat,
|
builder: (context, state) {
|
||||||
);
|
final currentChat = state.maybeWhen(
|
||||||
|
chatSelected: (chat, _, __) => chat,
|
||||||
return Scaffold(
|
messagesLoaded: (chat, _, __) => chat,
|
||||||
appBar: AppBar(
|
orElse: () => widget.chat,
|
||||||
centerTitle: false,
|
);
|
||||||
title: Column(
|
return Column(
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
children: [
|
children: [
|
||||||
Text(currentChat.type == 'favorites' ? AppLocalizations.of(context)!.favorites : currentChat.title),
|
Text(currentChat.type == 'favorites' ? AppLocalizations.of(context)!.favorites : currentChat.title),
|
||||||
if (currentChat.type != 'favorites')
|
if (currentChat.type != 'favorites')
|
||||||
_buildPresenceStatus(currentChat, state),
|
_buildPresenceStatus(currentChat, state),
|
||||||
],
|
],
|
||||||
),
|
);
|
||||||
actions: [
|
},
|
||||||
IconButton(icon: const Icon(Icons.more_vert), onPressed: () {}),
|
),
|
||||||
],
|
actions: [
|
||||||
),
|
IconButton(icon: const Icon(Icons.more_vert), onPressed: () {}),
|
||||||
body: Column(
|
],
|
||||||
children: [
|
),
|
||||||
Expanded(
|
body: Column(
|
||||||
child: state.maybeWhen(
|
children: [
|
||||||
|
Expanded(
|
||||||
|
child: BlocBuilder<ChatBloc, ChatState>(
|
||||||
|
builder: (context, state) {
|
||||||
|
return state.maybeWhen(
|
||||||
chatSelected: (_, messages, __) => _buildMessageList(messages),
|
chatSelected: (_, messages, __) => _buildMessageList(messages),
|
||||||
messagesLoaded: (messages, _) => _buildMessageList(messages),
|
messagesLoaded: (_, messages, __) => _buildMessageList(messages),
|
||||||
loading: (_) => const Center(child: CircularProgressIndicator()),
|
loading: (_) => const Center(child: CircularProgressIndicator()),
|
||||||
error: (msg, _) => Center(child: Text('Ошибка: $msg')),
|
error: (msg, _) => Center(child: Text('Ошибка: $msg')),
|
||||||
orElse: () => const Center(child: Text('Начните общение')),
|
orElse: () => const Center(child: Text('Начните общение')),
|
||||||
),
|
);
|
||||||
),
|
},
|
||||||
_buildMessageInput(currentChat),
|
),
|
||||||
],
|
|
||||||
),
|
),
|
||||||
);
|
_buildMessageInput(widget.chat),
|
||||||
},
|
],
|
||||||
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -29,6 +29,8 @@ class _ChatsPageState extends State<ChatsPage> {
|
|||||||
context.read<ChatBloc>().add(ChatEvent.chatsLoaded(currentUserId: userId));
|
context.read<ChatBloc>().add(ChatEvent.chatsLoaded(currentUserId: userId));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool _isNavigating = false;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
final l10n = AppLocalizations.of(context)!;
|
final l10n = AppLocalizations.of(context)!;
|
||||||
@@ -48,6 +50,21 @@ class _ChatsPageState extends State<ChatsPage> {
|
|||||||
listener: (context, state) {
|
listener: (context, state) {
|
||||||
state.whenOrNull(
|
state.whenOrNull(
|
||||||
chatSelected: (chat, _, __) {
|
chatSelected: (chat, _, __) {
|
||||||
|
if (_isNavigating) return;
|
||||||
|
|
||||||
|
// Extra safety: check if we are already on chat_detail
|
||||||
|
bool isAlreadyOnDetail = false;
|
||||||
|
Navigator.popUntil(context, (route) {
|
||||||
|
if (route.settings.name == 'chat_detail') {
|
||||||
|
isAlreadyOnDetail = true;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
});
|
||||||
|
|
||||||
|
if (isAlreadyOnDetail) return;
|
||||||
|
|
||||||
|
_isNavigating = true;
|
||||||
|
|
||||||
final authState = context.read<AuthBloc>().state;
|
final authState = context.read<AuthBloc>().state;
|
||||||
final userId = authState.maybeWhen(
|
final userId = authState.maybeWhen(
|
||||||
authenticated: (id) => id,
|
authenticated: (id) => id,
|
||||||
@@ -56,12 +73,14 @@ class _ChatsPageState extends State<ChatsPage> {
|
|||||||
|
|
||||||
Navigator.of(context).push(
|
Navigator.of(context).push(
|
||||||
MaterialPageRoute(
|
MaterialPageRoute(
|
||||||
|
settings: const RouteSettings(name: 'chat_detail'),
|
||||||
builder: (_) => ChatDetailPage(
|
builder: (_) => ChatDetailPage(
|
||||||
chat: chat,
|
chat: chat,
|
||||||
currentUserId: userId,
|
currentUserId: userId,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
).then((_) {
|
).then((_) {
|
||||||
|
_isNavigating = false;
|
||||||
// Reload chats when returning from detail page
|
// Reload chats when returning from detail page
|
||||||
if (context.mounted) {
|
if (context.mounted) {
|
||||||
context.read<ChatBloc>().add(ChatEvent.chatsLoaded(currentUserId: userId));
|
context.read<ChatBloc>().add(ChatEvent.chatsLoaded(currentUserId: userId));
|
||||||
|
|||||||
Reference in New Issue
Block a user