16 lines
638 B
Dart
16 lines
638 B
Dart
import 'package:freezed_annotation/freezed_annotation.dart';
|
|
import '../../domain/entities/chat.dart';
|
|
import '../../domain/entities/message.dart';
|
|
|
|
part 'chat_state.freezed.dart';
|
|
|
|
@freezed
|
|
class ChatState with _$ChatState {
|
|
const factory ChatState.initial() = ChatInitial;
|
|
const factory ChatState.loading() = ChatLoading;
|
|
const factory ChatState.chatsLoaded(List<Chat> chats) = _ChatsLoaded;
|
|
const factory ChatState.chatSelected(Chat chat, List<Message> messages) = _ChatSelected;
|
|
const factory ChatState.messagesLoaded(List<Message> messages) = _MessagesLoaded;
|
|
const factory ChatState.error(String message) = ChatError;
|
|
}
|