Skip to main content

Subcomponents Library

Set of components to be composed as needed by the user.



The ChatInput component displays the chat input box. Relies on ChatUiControl app state to determine required information.



The Chat Bubble component displays the message inside the chat ui. It is conditionally styled based on message origin (ie local or remote).


ChatBubbleProps

PropTypeDescription
isLocalbooleanSpecifies if the message is from a local user or if it is from a remote user
messagestringContent of the chat message
createdTimestampnumberTimestamp of the message creation
updatedTimestampnumberTimestamp of the message updation
uidUidTypeUid of the user who sent the message
msgIdstringUnique id for identify the message
isDeletedbooleanFlag to confirm is the meesage is deleted
isSameUserbooleanFlag to confirm is the meesage send by the local user
previousMessageCreatedTimestampstringPrevious message(n-1) timestamp
render?(isLocal: boolean, message: string, createdTimestamp: string,uid: UidType,msgId: string,isDeleted: boolean,updatedTimestamp: string,isSameUser: boolean, previousMessageCreatedTimestamp?: string,) => JSX.ElementRender method for chat bubble to provide a ui

The Chat component displays the chat sidepanel. Relies on ChatUiControl app state to determine required information.


ChatProps

PropTypeDescription
chatBubble?React.ComponentType<ChatBubbleProps>ChatBubble component to be used
chatInput?React.ComponentTypeChatInput component to be used

The MaxVideoView component is used to render the user video feed using UiKitMaxVideoView along with overlay components like NameWithMicStatus, NetworkQualityPill etc.


MaxVideoViewProps

PropTypeDescription
user:ContentInterfaceThe user object you need to display the video feed off

The GridLayout component is used to render the user video feeds in a responsive grid pattern.


The PinnedLayout component is used to render the user video feeds in a pinned view with a collapsible sidebar displaying unpinned user feeds.

LayoutComponent

PropTypeDescription
renderData:contentStateInterface["activeUids"]active uids data

VideoComponent :

React.ComponentType

The VideoComponent is used to automatically render the user video feeds in the selected layout.


The NameWithMicIcon component is used to render the user name along with their mic muted state.


NameWithMicIconProps

PropTypeDescription
name:stringDisplay the user name
muted?:booleanmute state of user

The NetworkQualityPill component is used to render the user network quality in a pill container that expands when hovered over.


NetworkQualityPillProps

PropTypeDescription
uid:UidTypeThe Uid of the user that you need to display the network quality of

VideocallScreen :

React.ComponentType

The VideocallScreen component is used to render the entire video call screen.

SettingsView :

React.ComponentType

The SettingsView component is used to render the settings side panel.

ParticipantsView :

React.ComponentType

The ParticipantsView component is used to render the participant panel that lists all the users in the video call / livestream along with their audio and video status. Hosts additionally are able to see user controls such as mute participant , remove participant from call.

UiKitMaxVideoView :

MaxVideoView

The UiKitMaxVideoView component is used to render the user video feed along with a fallback component in case user video feed is disabled.