isMessagesModalVisible
isMessagesModalVisible: boolean
onMessagesClose
onMessagesClose: (() => void)
OptionalonSendMessagePress
startDirectMessage
startDirectMessage: boolean
updateStartDirectMessage
updateStartDirectMessage: ((start: boolean) => void)
updateDirectMessageDetails
updateDirectMessageDetails: ((participant: null | Participant) => void) socket
socket: Socket<DefaultEventsMap, DefaultEventsMap>
chatSetting
chatSetting: string
Optionalposition
position?: string
OptionalbackgroundColor
backgroundColor?: string
OptionalactiveTabBackgroundColor
activeTabBackgroundColor?: string
Optionaltitle
title?: ReactNode
OptionaloverlayProps
overlayProps?: HTMLAttributes<HTMLDivElement>
OptionalcontentProps
contentProps?: HTMLAttributes<HTMLDivElement>
OptionalheaderProps
headerProps?: HTMLAttributes<HTMLDivElement>
OptionaltitleProps
titleProps?: HTMLAttributes<HTMLDivElement>
OptionaltabListProps
tabListProps?: HTMLAttributes<HTMLDivElement>
OptionaltabButtonProps
tabButtonProps?: ButtonHTMLAttributes<HTMLButtonElement>
OptionalcloseButtonProps
closeButtonProps?: ButtonHTMLAttributes<HTMLButtonElement>
OptionalcloseIconComponent
closeIconComponent?: ReactNode
OptionalbodyProps
bodyProps?: HTMLAttributes<HTMLDivElement>
OptionaldirectPanelWrapperProps
directPanelWrapperProps?: HTMLAttributes<HTMLDivElement>
OptionalgroupPanelWrapperProps
groupPanelWrapperProps?: HTMLAttributes<HTMLDivElement>
OptionalemptyState
emptyState?: ReactNode | ((context: {
type: "group" | "direct";
}) => ReactNode)
OptionalrenderHeader
renderHeader?: ((options: {
defaultHeader: ReactNode;
activeTab: "group" | "direct";
onClose: (() => void);
}) => ReactNode)
OptionalrenderTabs
renderTabs?: ((options: {
defaultTabs: ReactNode;
activeTab: "group" | "direct";
switchToDirect: (() => void);
switchToGroup: (() => void);
}) => ReactNode)
OptionalrenderTabButton
renderTabButton?: ((options: {
type: "group" | "direct";
isActive: boolean;
defaultButton: ReactNode;
switchTo: (() => void);
}) => ReactNode)
OptionalrenderPanels
renderPanels?: ((options: {
defaultPanels: ReactNode;
activeTab: "group" | "direct";
}) => ReactNode)
OptionalrenderBody
renderBody?: ((options: {
defaultBody: ReactNode;
activeTab: "group" | "direct";
}) => ReactNode)
OptionalrenderContent
renderContent?: ((options: {
defaultContent: ReactNode;
activeTab: "group" | "direct";
}) => ReactNode)