const { channel, watchers } = useChannelStateContext();ChannelStateContext
The ChannelStateContext is a one of the context providers exposed in the Channel component and is consumable by all of the Channel children components.
The context provides all the state properties and logic for a channel, and you can access these by calling the useChannelStateContext custom hook.
Basic Usage
Pull values from context with our custom hook:
Values
acceptedFiles
The value is forwarded to the context from the Channel component prop acceptedFiles.
| Type |
|---|
| string[] |
channel
The currently active StreamChat channel instance to be loaded into the Channel component and referenced by its children.
| Type |
|---|
| object |
channelCapabilities
The allowed channel permissions for the currently connected user.
| Type |
|---|
| object |
channelConfig
The configurations object for the currently active channel.
| Type |
|---|
| object |
channelUnreadUiState
The read state maintained for use by components representing channel unread state (for example UnreadMessagesSeparator, UnreadMessagesNotification).
| Property | Type | Description |
|---|---|---|
| last_read | Date | Date when the channel was marked read the last time. |
| unread_messages | number | The count of unread messages in a given channel. Unread count refers only to foreign (not own) unread messages. |
| first_unread_message_id | string or undefined | The ID of the message that was marked unread (notification.mark_unread event). The value is available only when a message is marked unread. Therefore, cannot be relied on to place unread messages UI. |
| last_read_message_id | string or undefined | The ID of the message preceding the first unread message. |
| Type |
|---|
ChannelUnreadUiState |
dragAndDropWindow
The value is forwarded to the context from the Channel component prop dragAndDropWindow.
| Type | Default |
|---|---|
| boolean | false |
debounceURLEnrichmentMs
Number of milliseconds to debounce firing the URL enrichment queries when typing. The default value is 1500(ms). See the guide Link Previews in Message Input for more.
| Type | Default |
|---|---|
| number | 1500 |
enrichURLForPreview
The value is forwarded to the context from the Channel component prop enrichURLForPreview.
| Type | Default |
|---|---|
| boolean | false |
error
Error object (if any) in loading the channel, otherwise null.
| Type |
|---|
| object |
findURLFn
Custom function to identify URLs in a string for later generation of link previews. See the guide Link Previews in Message Input for more.
| Type |
|---|
(text: string) => string[] |
giphyVersion
The value is forwarded to the context from the Channel component prop giphyVersion.
| Type | Default |
|---|---|
| string | ’fixed_height’ |
imageAttachmentSizeHandler
The value is forwarded to the context from the Channel component prop imageAttachmentSizeHandler.
| Type |
|---|
(a: Attachment, e: HTMLElement) => ImageAttachmentConfiguration |
hasMore
If the channel has more, older, messages to paginate through.
| Type |
|---|
| boolean |
hasMoreNewer
If the channel has more, newer, messages to paginate through.
| Type |
|---|
| boolean |
highlightedMessageId
Value is used internally for jump-to-message logic. Once the user “jumped” to the message, the message with the given ID is highlighted by manipulating its styles attribute.
| Type |
|---|
| string |
loading
Boolean for the channel loading state.
| Type |
|---|
| boolean |
loadingMore
Boolean for the channel loading more messages.
| Type |
|---|
| boolean |
loadingMoreNewer
Flag signalling whether newer messages are being loaded as the user scrolls down in the message list. Used internally by VirtualizedMessageList.
| Type |
|---|
| boolean |
maxNumberOfFiles
The value is forwarded to the context from the Channel component prop maxNumberOfFiles.
| Type | Default |
|---|---|
| number | 10 |
members
Members of this channel (members are permanent, watchers are users who are online right now).
| Type |
|---|
| object[] |
messages
Array of message objects.
| Type |
|---|
| object[] |
multipleUploads
The value is forwarded to the context from the Channel component prop multipleUploads.
| Type | Default |
|---|---|
| boolean | true |
mutes
An array of muted users for a channel.
| Type |
|---|
| object[] |
notifications
Temporary notifications added to the MessageList on specific user/message actions.
| Type |
|---|
| {id: string, text: string, type: ‘success’ | ‘error’}[] |
onLinkPreviewDismissed
Custom function to react to link preview dismissal. See the guide Link Previews in Message Input for more.
| Type |
|---|
(linkPreview: LinkPreview) => void |
pinnedMessages
The messages that are pinned in the channel.
| Type |
|---|
| object[] |
quotedMessage
An inline message reply to another message.
| Type |
|---|
| object |
read
The read state for each channel member.
| Type |
|---|
| object |
suppressAutoscroll
Flag signalling whether the scroll to the bottom is prevented. Used internally by MessageList and VirtualizedMessageList components.
| Type |
|---|
| boolean |
shouldGenerateVideoThumbnail
The value is forwarded to the context from the Channel component prop shouldGenerateVideoThumbnail.
| Type |
|---|
boolean |
thread
The parent message for a thread, if there is one, otherwise null.
| Type |
|---|
| object |
threadHasMore
Boolean showing if there are more messages available in current active thread, set to false when the end of pagination is reached.
| Type |
|---|
| boolean |
threadLoadingMore
If the thread is currently loading more messages.
| Type |
|---|
| boolean |
threadMessages
Array of messages within a thread.
| Type |
|---|
| object[] |
threadSuppressAutoscroll
Flag signalling whether the scroll to the bottom is prevented in thread. Used internally by MessageList and VirtualizedMessageList components.
| Type |
|---|
| boolean |
videoAttachmentSizeHandler
The value is forwarded to the context from the Channel component prop videoAttachmentSizeHandler.
| Type |
|---|
(a: Attachment, e: HTMLElement) => VideoAttachmentConfiguration |
watcherCount
The number of watchers on the channel.
| Type |
|---|
| number |
watchers
An array of users who are currently watching the channel.
| Type |
|---|
| object[] |
watcher_count
The number of watchers on the channel.
| Type |
|---|
| number |
- Basic Usage
- Values
- acceptedFiles
- channel
- channelCapabilities
- channelConfig
- channelUnreadUiState
- dragAndDropWindow
- debounceURLEnrichmentMs
- enrichURLForPreview
- error
- findURLFn
- giphyVersion
- imageAttachmentSizeHandler
- hasMore
- hasMoreNewer
- loading
- loadingMore
- loadingMoreNewer
- maxNumberOfFiles
- members
- messages
- multipleUploads
- mutes
- notifications
- onLinkPreviewDismissed
- pinnedMessages
- quotedMessage
- read
- suppressAutoscroll
- shouldGenerateVideoThumbnail
- thread
- threadHasMore
- threadLoadingMore
- threadMessages
- threadSuppressAutoscroll
- videoAttachmentSizeHandler
- watcherCount
- watchers
- watcher_count