Skip to main content
CometChatMessageInformation answers one question about one message: who got it, and who read it. In a group, it fetches the receipts from the server and lists every recipient with their own delivered and read timestamps. In a one-on-one chat there is only one recipient, so it shows a single Delivered / Read pair read from the message itself. Both are kept live — a receipt that arrives while the screen is open updates in place.
textFormatters requires @cometchat/chat-uikit-react-native 5.5.1 or later. It does not exist in 5.5.0. Everything else on this page works on either version.

Where It Fits

You usually do not render this component. CometChatMessageList raises it from the Info option in the message options sheet, inside a bottom sheet, and hands it the template the list is already using — so the preview at the top matches the bubble the user long-pressed. Render it yourself when you want message information on its own screen — a navigation route rather than a sheet, for example. That is the one case where you pass textFormatters explicitly: without the list’s template, the screen has no other way to learn your formatters, and your own token would reach the preview unrecognised.
In a group the receipts come from the server on open (CometChat.getMessageReceipts()), so the screen shows a loading state first. In a one-on-one chat the timestamps are already on the message and render immediately.

Minimal Render

message is the only required prop. The screen draws no header controls of its own — just a centred title — so put it on a route whose navigator supplies the back affordance, or render it inside a sheet or modal you close yourself.

Rendering Your Own Formatters

On its own screen the component has no template to inherit from, so pass the same array you give CometChatMessageList. Otherwise the preview at the top of this screen reads differently from the bubble the user came from.
See Text Formatters for writing one.

Actions and Events

Callback Props

onError

Fires when fetching the receipts fails.

Custom View Slots

receiptDatePattern is the smaller hook: keep the default rows and change only how each timestamp is written.

Styling

The component uses the theme system from CometChatThemeProvider. Pass a style prop to customize the appearance. Every default value resolves from a semantic theme token, so retheming the kit restyles this screen without touching it.

Style Properties

Props

message is required. Everything else is optional.

message

The message to describe.

template

Template used to draw the preview at the top. The message options sheet passes the list’s own template, which already carries its formatters.

textFormatters

Text formatters for the message preview. Only needed when this screen is rendered on its own — a passed template already carries them. See Text Formatters.

title

Header title.

onError

Called when fetching the receipts fails.

BubbleView

Replaces the message preview at the top.

ListItemView

Replaces one recipient row.

receiptDatePattern

Formats each delivered / read timestamp.

LoadingStateView

Replaces the loading shimmer.

ErrorStateView

Replaces the error state.

EmptyStateView

Adds an empty state, shown while no recipient has received the message yet. There is no default — without this the screen renders nothing in that condition.

style

Per-instance style override, merged over the theme.

Next Steps

Message List

Where the Info option is raised

Text Formatters

Write the formatters this screen renders

Delivery & Read Receipts (SDK)

The SDK methods underneath this component

Component Styling

How the theme resolves into these styles