Skip to content
Info:
This is documentation for Stream Chat React Native SDK v4, which is no longer actively maintained. For up-to-date documentation, see the latest version (v9).

MessagesContext

Value

additionalTouchableProps

Additional props provided to the underlying TouchableOpacity used by components within a message such as MessageContent.

Type
object

channelId

Id of current channel.

Type
string

deletedMessagesVisibilityType

Controls the visibility of the deleted messages within the channel.

  • always: The deleted messages in the channel will be visible to both the sender and receiver.
  • never: The deleted messages will not be visible to anyone.
  • sender: The deleted messages in the channel will only be visible to sender.
  • receiver: The deleted messages in the channel will only be visible to receiver.
Type Default
enum('always', 'never', 'receiver', 'sender') 'both'

disableTypingIndicator

Disable typing indicator in MessageList.

Type Default
boolean false

dismissKeyboardOnMessageTouch

Dismiss the keyboard when a user touches any of the messages in the list.

Type Default
boolean false

enableMessageGroupingByUser

Note: This prop is available only in SDK version >= v3.9.0

If false, consecutive messages from same user won't be grouped together.

Type Default
boolean true

forceAlignMessages

Forces alignment of messages in the list to either the left or right side of the screen. By default, received messages are aligned on the left side of the screen, and sent messages are aligned on the right.

Type Default
'left' | 'right' | false false

formatDate

Format function that returns a string to be used for the date in the message status and delete message component.

Type
function
Parameter Description
date date to format provided as a string, Date, or number (Unix Timestamp)

handleBlock

Function called when the Block User action is invoked from message actions list. This function does not override the default behavior of the Block User action. Please refer to the guide on customizing message actions for details.

Type
function
Parameter Description
message message the action is called on

handleCopy

Function called when the Copy Message action is invoked from message actions list. This function does not override the default behavior of the Copy Message action. Please refer to the guide on customizing message actions for details.

Type
function
Parameter Description
message message the action is called on

handleDelete

Function called when the Delete Message action is invoked from message actions list. This function does not override the default behavior of the Delete Message action. Please refer to the guide on customizing message actions for details.

Type
function
Parameter Description
message message the action is called on

handleEdit

Function called when the Edit Message action is invoked from message actions list. This function does not override the default behavior of the Edit Message action. Please refer to the guide on customizing message actions for details.

Type
function
Parameter Description
message message the action is called on

handleFlag

Function called when the Flag Message action is invoked from message actions list. This function does not override the default behavior of the Flag Message action. Please refer to the guide on customizing message actions for details.

Type
function
Parameter Description
message message the action is called on

handleMute

Function called when the Mute User action is invoked from message actions list. This function does not override the default behavior of the Mute User action. Please refer to the guide on customizing message actions for details.

Type
function
Parameter Description
message message the action is called on

handleQuotedReply

Function called when the Reply action is invoked from message actions list. This function does not override the default behavior of the Reply action. Please refer to the guide on customizing message actions for details.

Type
function
Parameter Description
message message the action is called on

handleReaction

Function called when a reaction is selected in the message overlay, this is called on both the add and remove action. This function does not override the default behavior of the reaction being selected. Please refer to the guide on customizing message actions for details.

Type
function
Parameter Description
message message the action is called on
reactionType string designating the type of reaction

handleRetry

Function called when the Retry action is invoked from message actions list. This function does not override the default behavior of the Retry action. Please refer to the guide on customizing message actions for details.

Type
function
Parameter Description
message message the action is called on

handleThreadReply

Function called when the Thread Reply action is invoked from message actions list. This function does not override the default behavior of the Thread Reply action. Please refer to the guide on customizing message actions for details.

Type
function
Parameter Description
message message the action is called on

initialScrollToFirstUnreadMessage

Load messages in a channel at the first unread message.

Type Default
boolean false

isAttachmentEqual

Function which returns true if passing nextAttachment to render would return the same result as passing prevAttachment to render, otherwise return false.

Type
function
Parameter Description
prevAttachment previous message attachment to be compared
nextAttachment next message attachment to be compared

legacyImageViewerSwipeBehaviour

markdownRules

Object specifying rules defined within simple-markdown.

Type
object

messageActions

An array of, or function that returns and array of, actions that can be performed on a message shown in the message overlay. Please refer to the guide on customizing message actions for details.

Type Default
array | function messageActions
Parameter Description
actionInfo an object containing the original actions and relevant message data

messageContentOrder

Order in which to render the content of a message.

Type Default
array ['quoted_reply', 'gallery', 'files', 'text', 'attachments']

myMessageTheme

Theme applied to messages of the current user.

Type
object

onLongPressMessage

Function called when a user long presses a message. The default opens the message actions overlay.

Type
function
Parameter Description
payload { actionHandlers, message }

onPressInMessage

Function called immediately when a touch is engaged on a message, before onPressMessage.

Type
function
Parameter Description
payload { actionHandlers, message }

onPressMessage

Function called when a user presses a message.

Warning:

The default handler for message press interactions acts differently when pressing on reactions and attachments. You will have to handle these cases when overriding this function.

Type
function
Parameter Description
payload { additionalInfo, actionHandlers, message }

The additionalInfo prop is handy for getting information from certain click events. A good example of this is getting the user details when a textMention (for example @Enigma-I-am) is clicked.

For example:

<Channel
      onPressMessage={({ additionalInfo, defaultHandler, emitter }) => {

          if (emitter === 'textMention') {
            console.log(additionalInfo?.user);
            return;
          }

          if (emitter === 'card' || emitter === 'textLink') {
            console.log(additionalInfo?.url);
            return;
          }

          defaultHandler?.();
      }}
    >

:::info

The additionalInfo prop will change over time as we explore more use-cases for different emitter's.

removeMessage

Function to remove message from local channel state. Please note that this function is only for updating the local state, it doesn't call the API for deleting message (channel.deleteMessage).

Type
(message) => void

Reply

Component to render preview of parent of message for quoted reply.

Type Default
component Reply

retrySendMessage

Function to re-attempt sending failed message.

Type
(message) => void

selectReaction

Full override of the reaction function on a message. This function must return a function that takes as a parameter the reactionType as a string. Please refer to the guide on customizing message actions for details.

Type
function | null
Parameter Description
message message the action is called on

setEditingState

Enables editing state for given message.

Type
(message) => void

setQuotedMessageState

Enables quoted-reply state on given message.

Type
(message) => void

supportedReactions

List of reactions which can be added on message. Please refer to the guide on customizing reactions for details.

Type Default
array reactionData

targetedMessage

Has the message id of the message which is to be highlighted. By default the value is undefined. As soon as the highlight time is out this is set to undefined.

Type
string

updateMessage

Upserts a given message in local channel state. Please note that this function doesn't call channel.sendMessage. Channel component uses this function for optimistic updates to message.

Type
(message) => void

Attachment

Component for rendering attachments in MessageList.

Available props:

  • attachment {object}
Type Default
component Attachment

AttachmentActions

Component to render additional actions on attachment. for example send, shuffle, cancel in case of Giphy.

Type Default
component AttachmentActions

Card

Component to render any custom type of attachment. Please check the guides for Custom Attachment

Type Default
component Card

CardCover

Component to render main body for Card component which renders custom type of attachment. Please check the guides for Custom Attachment.

Type
component

CardFooter

Component to render footer for Card component which renders custom type of attachment. Please check the guides for Custom Attachment.

Type
component

CardHeader

Component to render header for Card component which renders custom type of attachment. Please check the guides for Custom Attachment.

Type
component

DateHeader

Component to render sticky date header within enclosed MessageList component.

Type Default
component DateHeader

FileAttachment

Component to render 'file' type attachment in MessageList.

Type Default
component FileAttachment

FileAttachmentGroup

Component to render group of file type attachments, when there are multiple file type attachments in message.

Type Default
component FileAttachmentGroup

FileAttachmentIcon

Component to render file icon for file type attachment.

Type Default
component FileIcon

FlatList

FlatList component for underlying MessageList component.

Type Default
component flat-list-mvcp

Component to render 'image' type attachments in the MessageList.

Type Default
component Gallery

Giphy

Component to render Giphy type attachments in MessageList.

Type Default
component Giphy

giphyVersion

The Giphy version to render - check the keys of the Image Object for possible values.

Type Default
string 'fixed_height'

InlineDateSeparator

Component to render inline date separators between messages which were created at a difference of more than a day.

Type Default
component InlineDateSeparator

InlineUnreadIndicator

Component to render inline separator in MessageList, to indicate the position of last read message in list.

Type Default
component InlineUnreadIndicator

MessageAvatar

Component to render avatar of sender for message, within MessageList. This component is only rendered for messages from other users.

Type Default
component MessageAvatar

MessageContent

Component to render content of message including status, attachments, reactions etc., within MessageList.

Type Default
component MessageContent

MessageDeleted

Component to render deleted message.

Type Default
component MessageDeleted

MessageFooter

Component to render footer for message, within MessageList.

Type Default
component MessageFooter

MessageHeader

Component to render header for message, within MessageList.

Type
component

MessageReplies

Component to show number of thread replies and avatars of members who replied on message

Type Default
component MessageReplies

MessageRepliesAvatars

Component to show avatars of members who thread replied on message.

Type Default
component MessageRepliesAvatars

MessageSimple

Component to render a message within MessageList.

Please check guides section for Customizing Message UI for details.

Type Default
component MessageSimple

MessageStatus

Component to render status of message, which includes time and read-receipts.

Type Default
component MessageStatus

MessageSystem

Component to render system type messages. Purpose of system messages is to inform user about changes to channel. System messages are part of message history, and have a property type set as system. You can add system messages within message history in following scenarios:

Type Default
component MessageSystem

MessageText

Component to render text of message. By default, we use Simple Markdown package to render the text content of message. If you decide to use this prop, please be aware that you will need to handle the markdown rendering yourself.

Type Default
component renderText

OverlayReactionList

Reaction selector component displayed within the message overlay when user long presses a message.

Type Default
component OverlayReactionList

ReactionList

Component to render list of reactions at top of message bubble.

Type Default
component ReactionList

ScrollToBottomButton

Component to render a button which when pressed, scrolls the message list to bottom.

Type Default
component ScrollToBottomButton

TypingIndicator

Component to render typing indicator within enclosed MessageList component.

Type Default
component TypingIndicator

TypingIndicatorContainer

Component to render container in which typing indicator gets rendered within enclosed MessageList component.

Type Default
component TypingIndicatorContainer

UrlPreview

Component to render preview of URLs in MessageList.

Type Default
component Card

VideoThumbnail

Component to render the video thumbnail for video attachments in MessageList.

Type Default
component VideoThumbnail