MessageContainer

fun MessageContainer(messageListItemState: MessageListItemState, onLongItemClick: (Message) -> Unit = {}, onReactionsClick: (Message) -> Unit = {}, onThreadClick: (Message) -> Unit = {}, onGiphyActionClick: (GiphyAction) -> Unit = {}, onQuotedMessageClick: (Message) -> Unit = {}, onMediaGalleryPreviewResult: (MediaGalleryPreviewResult?) -> Unit = {}, dateSeparatorContent: @Composable (DateSeparatorItemState) -> Unit = { DefaultMessageDateSeparatorContent(dateSeparator = it) }, unreadSeparatorContent: @Composable (UnreadSeparatorItemState) -> Unit = { DefaultMessageUnreadSeparatorContent(unreadSeparatorItemState = it) }, threadSeparatorContent: @Composable (ThreadDateSeparatorItemState) -> Unit = { DefaultMessageThreadSeparatorContent(threadSeparator = it) }, systemMessageContent: @Composable (SystemMessageItemState) -> Unit = { DefaultSystemMessageContent(systemMessageState = it) }, messageItemContent: @Composable (MessageItemState) -> Unit = { DefaultMessageItem( messageItem = it, onLongItemClick = onLongItemClick, onReactionsClick = onReactionsClick, onThreadClick = onThreadClick, onGiphyActionClick = onGiphyActionClick, onMediaGalleryPreviewResult = onMediaGalleryPreviewResult, onQuotedMessageClick = onQuotedMessageClick, ) }, typingIndicatorContent: @Composable (TypingItemState) -> Unit = { }, emptyThreadPlaceholderItemContent: @Composable (EmptyThreadPlaceholderItemState) -> Unit = { }, startOfTheChannelItemState: @Composable (StartOfTheChannelItemState) -> Unit = { })

Represents the message item container that allows us to customize each type of item in the MessageList.

Parameters

messageListItemState

The state of the message list item.

onLongItemClick

Handler when the user long taps on an item.

onReactionsClick

Handler when the user taps on message reactions.

onThreadClick

Handler when the user taps on a thread within a message item.

onGiphyActionClick

Handler when the user taps on Giphy message actions.

onQuotedMessageClick

Handler for quoted message click action.

onMediaGalleryPreviewResult

Handler when the user receives a result from the Media Gallery Preview.

dateSeparatorContent

Composable that represents date separators.

threadSeparatorContent

Composable that represents thread separators.

systemMessageContent

Composable that represents system messages.

messageItemContent

Composable that represents regular messages.

typingIndicatorContent

Composable that represents a typing indicator.

emptyThreadPlaceholderItemContent

Composable that represents placeholders inside of an empty thread. This content is disabled by default and can be enabled via MessagesViewModelFactory.showDateSeparatorInEmptyThread or MessageListController.showDateSeparatorInEmptyThread.