ChatMessagesController constructor
ChatMessagesController({
- List<
ChatMessage> ? initialMessages, - PaginationConfig paginationConfig = const PaginationConfig(),
- Future<
List< onLoadMoreMessages(ChatMessage> >- ChatMessage? lastMessage
- bool showWelcomeMessage = false,
- ScrollBehaviorConfig? scrollBehaviorConfig,
Creates a new chat messages controller.
initialMessages - Optional list of messages to initialize the chat with.
paginationConfig - Configuration for pagination behavior.
onLoadMoreMessages - Callback for loading more messages (for backward compatibility).
showWelcomeMessage - Whether to show the welcome message.
Implementation
ChatMessagesController({
final List<ChatMessage>? initialMessages,
this.paginationConfig = const PaginationConfig(),
final Future<List<ChatMessage>> Function(ChatMessage? lastMessage)? onLoadMoreMessages,
bool showWelcomeMessage = false,
ScrollBehaviorConfig? scrollBehaviorConfig,
}) {
_scrollBehaviorConfig = scrollBehaviorConfig;
if (initialMessages != null && initialMessages.isNotEmpty) {
_messages = List.from(initialMessages);
_messageCache = {for (var m in _messages) _getMessageId(m): m};
_showWelcomeMessage = false;
} else {
_showWelcomeMessage = showWelcomeMessage;
}
// Store the callback for backward compatibility
_onLoadMoreMessagesCallback = onLoadMoreMessages;
}