Overview
Fetches the member list for a conversation on mount and provides actions to add members, remove members, change roles, and leave the conversation. Also exposesupsertMember and removeMemberLocally for real-time socket-driven updates.
Requires
ChatProvider in the component tree.Usage Example
Props
string
required
The ID of the conversation whose members to fetch.
Returns
ConversationMember[]
The current member list. When
spaceReputation is requested, each embedded user carries an added spaceReputation number. See ConversationMember and Reputation.boolean
true while the initial fetch is in progress.({ userId: string }) => Promise<void>
Adds a user to the conversation. Updates the local member list on success.
({ userId: string }) => Promise<void>
Removes a user from the conversation. Updates the local member list on success.
() => Promise<void>
Removes the current user from the conversation.
({ userId: string; role: 'admin' | 'member' }) => Promise<void>
Updates a member’s role. Updates the local member list on success.
(member: ConversationMember) => void
Inserts or replaces a member in the local list by
userId. Intended for use with real-time socket event handlers.({ userId: string }) => void
Removes a member from the local list by
userId without making an API call. Intended for use with real-time socket event handlers.Notes
- The member list is fetched with a limit of 100. For very large conversations, consider lazy-loading or paginating members separately.
- For integration guidance, see Chat: Conversations.

