Skip to main content

Subcomponents Library

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


The Toolbar component used to recreate custom toolbar. Its wrapper for custom toolbar component which provides the necessary width and height.

ToolbarItem :

React.ComponentType

The ToolbarItem component used to recreate custom toolbar item. Its wrapper for custom toolbar item which provides the necessary width and height.

The ToolbarPreset component used to display/customize the top/bottom toolbar.


ToolbarPresetProps

PropTypeDescription
alignToolbarPresetAlignUsed to get default top or bottom toolbar component
itemsToolbarItemsConfigTo modify/add toolbar items

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


ChatSendButtonProps

PropTypeDescription
render?( onPress: () => void ) => JSX.ElementRender method for ChatSendButton

The ChatAttachmentButton component provides an option to upload Image or File messages . Relies on ChatUiControl app state to determine required information.


ChatAttachmentButtonProps

PropTypeDescription
render?( onPress: () => void ) => JSX.ElementRender method for ChatAttachmentButton

The ChatEmojiButton component provides an option to send emojis in the chat message. Relies on ChatUiControl app state to determine required information.


ChatEmojiButtonProps

PropTypeDescription
render?( onPress: () => void ) => JSX.ElementRender method for ChatEmojiButton

ChatTextInputProps

PropTypeDescription
render?(ChatTextInputRenderProps) => JSX.ElementRender method for ChatTextInput

ChatTextInputRenderProps

PropType
messagestring
onChangeText( text: string ) => void,
onSubmitEditing() => void,
chatMessageInputPlaceholderstring

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
msgIdstringMessage id
messagestringContent of the chat message
uidUidTypeName of the user who sent the message
isLocalbooleanSpecifies if the message is from a local user or if it is from a remote user
isDeletedbooleanSpecifies if the message has been deleted
createdTimestampnumberMessage creation timestamp
updatedTimestampnumberLast message update timestamp
render?( msg: string, isLocal: boolean, uid: string, ts: number) => JSX.ElementRender method for chat bubble to provide a custom jsx
messageTypeMessageTypeType of chat message sent / received
thumbstringThumbnail URL of the image message that is sent / received
fileNamestringName of the image or file message that is sent / received
extstringExtension of image or file message that is sent / received

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

Video Preview generates a camera track , this can be used to add virtual background effects on the preview video of the user.


VideoPreviewProps

PropTypeDescription
isLocalVideoONbooleanIndicates whether the user's local video is enabled

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:UidTypePass the UID of the user who you want to display the network quality indicator

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.


The CaptionPanel component is used to render the live caption data of the last two speaker. These caption will be updated if any correction needed


CaptionPanelProps

PropTypeDescription
containerStyle?:ViewStyleStyle for the container of captions
captionUserStyle?:TextStyleStyle for the display name of users whos caption is captured
captionTextStyle?:TextStyleStyle for the display of caption Text

TranscriptPanel :

React.ComponentType

The TranscriptPanel component is used to render the transcript data of the all users during speech to text session. It will have list of finalized transcript data along with user name and option to download the transcript.

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.