CometChat Flutter UIKit v6 — Widget Catalog
Canonical reference for every public widget in cometchat_chat_uikit. Look up names, props, view slots, and style classes here before writing code.
Rule: NEVER_INVENT_NAMES
Always use exact widget names from this catalog. Do not invent names like CometChatChat, CometChatMessenger, CometChatChatList, CometChatContactList, CometChatMessageView, or CometChatUserList — they don't exist.
1. Chat Components
CometChatConversations
Displays a list of recent conversations with real-time updates (new messages, typing, presence, receipts).
- Location:
chat_ui/src/conversations/cometchat_conversations.dart
- Key props:
onItemTap, onItemLongPress, conversationsRequestBuilder, usersStatusVisibility, receiptsVisibility, deleteConversationOptionVisibility, textFormatters, hideAppbar, hideSearch, conversationsBloc
- View slots:
listItemView(Conversation), subtitleView(ctx, Conversation), trailingView(Conversation), leadingView(ctx, Conversation), titleView(ctx, Conversation), emptyStateView, errorStateView, loadingStateView
- Style:
CometChatConversationsStyle
- Request builder:
ConversationsRequestBuilder
CometChatMessageList
Displays messages for a 1:1 or group conversation with real-time updates, reactions, threads, and smart replies.
- Location:
chat_ui/src/message_list/widgets/cometchat_message_list.dart
- Key props:
user, group, messagesRequestBuilder, parentMessageId, templates, alignment, hideDeletedMessages, disableReceipts, disableReactions, enableSwipeToReply, textFormatters, messageListBloc
- View slots:
headerView, footerView, emptyStateView, errorStateView, loadingStateView, emptyChatGreetingView
- Style:
CometChatMessageListStyle
- Request builder:
MessagesRequestBuilder
CometChatMessageComposer
Text input with attachments, voice recording, rich text toolbar, mentions, and AI features.
- Location:
chat_ui/src/message_composer/widgets/cometchat_message_composer.dart
- Key props:
user, group, parentMessageId, placeholderText, disableTypingEvents, text, onChange, onSendButtonTap, textFormatters, disableMentions, hideVoiceRecordingButton, richTextConfiguration
- View slots:
auxiliaryButtonView, secondaryButtonView, sendButtonView, headerView, footerView, richTextToolbarView
- Style:
CometChatMessageComposerStyle
- Note: Scaffold must set
resizeToAvoidBottomInset: false — composer handles keyboard internally.
CometChatMessageHeader
Displays user/group info as an AppBar with online status, typing indicator, and call buttons.
- Location:
chat_ui/src/message_header/cometchat_message_header.dart
- Key props:
user, group, onBack, showBackButton, hideVideoCallButton, hideVoiceCallButton, usersStatusVisibility, hideChatHistoryButton, hideNewChatButton
- View slots:
subtitleView(Group?, User?, ctx), listItemView(Group?, User?, ctx), trailingView(User?, Group?, ctx), leadingStateView(Group?, User?, ctx), titleView, auxiliaryButtonView
- Style:
CometChatMessageHeaderStyle
- Implements:
PreferredSizeWidget (use as appBar: in Scaffold)
CometChatUsers
Displays a searchable, alphabetically sorted list of users.
- Location:
chat_ui/src/users/cometchat_users.dart
- Key props:
onItemTap, onItemLongPress, usersRequestBuilder, usersStatusVisibility, hideSearch, selectionMode, usersBloc
- View slots:
listItemView(User), subtitleView(ctx, User), trailingView(ctx, User), leadingView(ctx, User), titleView(ctx, User), emptyStateView, errorStateView, loadingStateView
- Style:
CometChatUsersStyle
- Request builder:
UsersRequestBuilder
CometChatGroups
Displays a searchable list of groups the user has joined or can join.
- Location:
chat_ui/src/groups/cometchat_groups.dart
- Key props:
onItemTap, onItemLongPress, groupsRequestBuilder, hideSearch, selectionMode, groupTypeVisibility, groupsBloc
- View slots:
listItemView(Group), subtitleView(ctx, Group), trailingView(ctx, Group), leadingView(ctx, Group), titleView(ctx, Group), emptyStateView, errorStateView, loadingStateView
- Style:
CometChatGroupsStyle
- Request builder:
GroupsRequestBuilder
CometChatGroupMembers
Displays members of a specific group with role badges and management options (kick, ban, scope change).
- Location:
chat_ui/src/group_members/cometchat_group_members.dart
- Key props:
group (required), groupMembersRequestBuilder, hideSearch, selectionMode, usersStatusVisibility, hideBanMemberOption, hideKickMemberOption, hideScopeChangeOption
- View slots:
listItemView(GroupMember), subtitleView(ctx, GroupMember), trailingView(ctx, GroupMember), leadingView, titleView, emptyStateView, errorStateView, loadingStateView
- Style:
CometChatGroupMembersStyle
- Request builder:
GroupMembersRequestBuilder
CometChatSearch
Full-screen search across conversations and messages with filter chips and dual-section results.
- Location:
chat_ui/src/search/cometchat_search.dart
- Key props:
onConversationClicked, onMessageClicked, searchFilters, searchIn, user, group, conversationsRequestBuilder, messagesRequestBuilder
- View slots:
conversationItemView(ctx, Conversation), conversationSubtitleView(ctx, Conversation), conversationLeadingView(ctx, Conversation), conversationTailView(ctx, Conversation), searchTextMessageView(ctx, TextMessage), searchImageMessageView(ctx, MediaMessage), emptyStateView, errorStateView, loadingStateView, initialStateView
- Style:
CometChatSearchStyle
CometChatThreadedHeader
Displays a parent message with reply count in a threaded conversation view. Listens for real-time reply count updates.
- Location:
chat_ui/src/threaded_header/widgets/cometchat_threaded_header.dart
- Key props:
parentMessage (required), loggedInUser (required), template, receiptsVisibility, textFormatters
- View slots:
messageActionView(BaseMessage, ctx)
- Style:
CometChatThreadedHeaderStyle
CometChatMessageInformation
Displays read/delivered receipt information for a message. Shows per-member receipts in group conversations.
- Location:
chat_ui/src/message_information/widgets/cometchat_message_information.dart
- Key props:
message (required), title, template, textFormatters
- Style:
CometChatMessageInformationStyle
CometChatAIAssistantChatHistory
Displays AI assistant conversation history with pagination, date separators, message deletion, and new chat button.
- Location:
chat_ui/src/ai_assistant_chat_history/widgets/cometchat_ai_assistant_chat_history.dart
- Key props:
user, group, messagesRequestBuilder, onMessageClicked, onNewChatButtonClicked, onClose, hideStickyDate, hideDateSeparator
- View slots:
emptyStateView, errorStateView, loadingStateView, backButton
- Style:
CometChatAIAssistantChatHistoryStyle
2. Call Components
CometChatCallButtons
Voice and video call icon buttons. Supports direct calls (user) and meetings (group).
- Location:
call_ui/src/call_buttons/cometchat_call_buttons.dart
- Key props:
user, group, hideVoiceCallButton, hideVideoCallButton, outgoingCallConfiguration, callSettingsBuilder, callButtonsBloc
- View slots:
voiceCallIcon, videoCallIcon
- Style:
CometChatCallButtonsStyle
CometChatIncomingCall
Full-screen incoming call UI with accept/decline buttons. Shown when the logged-in user receives a call.
- Location:
call_ui/src/incoming_call/cometchat_incoming_call.dart
- Key props:
call (required), user, callSettingsBuilder, onDecline, onAccept, disableSoundForCalls, customSoundForCalls
- View slots:
titleView(ctx, Call), subTitleView(ctx, Call), leadingView(ctx, Call), trailingView(ctx, Call), itemView(ctx, Call)
- Style:
CometChatIncomingCallStyle
CometChatOutgoingCall
Full-screen outgoing call UI with cancel button. Shown when the logged-in user initiates a call.
- Location:
call_ui/src/outgoing_call/cometchat_outgoing_call.dart
- Key props:
call (required), user, sessionSettingsBuilder, onCancelled, disableSoundForCalls, customSoundForCalls
- View slots:
subtitleView(ctx, Call), avatarView(ctx, Call), titleView(ctx, Call), cancelledView(ctx, Call)
- Style:
CometChatOutgoingCallStyle
CometChatOngoingCall
Renders the active call screen using the CometChat Calls SDK. Blocks back navigation.
- Location:
call_ui/src/ongoing_call/cometchat_ongoing_call.dart
- Key props:
sessionSettingsBuilder (required), sessionId (required), callWorkFlow, onError, bloc
- Style: None (rendered by Calls SDK)
CometChatCallLogs
Displays a list of call logs (missed, incoming, outgoing) with icons and timestamps.
- Location:
call_ui/src/call_logs/cometchat_call_logs/cometchat_call_logs.dart
- Key props:
callLogsRequestBuilder, onItemClick, onCallLogIconClicked, hideAppbar, outgoingCallConfiguration, callLogsBloc
- View slots:
listItemView(CallLog, ctx), subTitleView(CallLog, ctx), trailingView, leadingStateView, titleView, emptyStateView, errorStateView, loadingStateView
- Style:
CometChatCallLogsStyle
- Request builder:
CallLogRequestBuilder
CometChatCallBubble
Inline bubble for call messages inside the message list. Shows call type icon, title, and join button.
- Location:
call_ui/src/call_bubble/cometchat_call_bubble.dart
- Key props:
icon, title, buttonText, onTap, subtitle, alignment, iconUrl
- Style:
CometChatCallBubbleStyle
3. Shared Views
CometChatAvatar
Circular avatar with image URL fallback to initials from name.
- Location:
shared_ui/src/clean_architecture/presentation/views/misc/avatar/cometchat_avatar.dart
- Key props:
image, name, width, height, padding, margin, colorPalette, spacing, typography
- Style:
CometChatAvatarStyle
CometChatBadge
Unread count badge (red circle with number).
- Location:
shared_ui/src/clean_architecture/presentation/views/misc/badge/cometchat_badge.dart
- Style:
CometChatBadgeStyle
CometChatReceipt
Message delivery receipt icons (sent, delivered, read).
- Location:
shared_ui/src/clean_architecture/presentation/views/misc/receipt/cometchat_receipt.dart
- Style:
CometChatReceiptStyle
CometChatReactions
Displays emoji reaction chips below a message bubble with tap/long-press callbacks.
- Location:
shared_ui/src/clean_architecture/presentation/views/components/reactions/cometchat_reactions.dart
- Key props:
reactionList (required), alignment, onReactionTap, onReactionLongPress, colorPalette, spacing, typography
- Style:
CometChatReactionsStyle
CometChatMessageBubble
Skeleton structure for any message bubble. Binds together leading, header, content, footer, thread, reply, and bottom views.
- Location:
shared_ui/src/clean_architecture/presentation/views/misc/message_bubble/cometchat_message_bubble.dart
- Key props:
alignment, colorPalette, spacing, contentPadding
- View slots:
leadingView, headerView, contentView, footerView, bottomView, threadView, replyView, statusInfoView
- Style:
CometChatMessageBubbleStyle
CometChatListBase
Top-level container with app bar, search box, and scrollable content. Used internally by Conversations, Users, Groups, GroupMembers.
- Location:
shared_ui/src/clean_architecture/presentation/views/components/list_base/cometchat_listbase.dart
- Key props:
container (required), title, hideSearch, showBackButton, onSearch, hideAppBar, searchReadOnly, onSearchTap
- View slots:
backIcon, menuOptions, titleView
- Style:
ListBaseStyle
CometChatStatusIndicator
Small colored dot indicating user online/offline status or group type icon.
- Location:
shared_ui/src/clean_architecture/presentation/views/misc/status_indicator/cometchat_status_indicator.dart
- Style:
CometChatStatusIndicatorStyle
CometChatDate
Formatted date/time label used in conversation trailing, message date separators, and sticky headers.
- Location:
shared_ui/src/clean_architecture/presentation/views/misc/date/cometchat_date.dart
- Style:
CometChatDateStyle
4. Bubble Widgets
Content widgets rendered inside CometChatMessageBubble. All accept optional colorPalette, spacing, typography for theme-caching optimization.
CometChatTextBubble
- Location:
shared_ui/src/clean_architecture/presentation/views/bubbles/text_bubble/cometchat_text_bubble.dart
- Key props:
text, alignment, formatters, emojiCount, colorPalette, spacing, typography
- Style:
CometChatTextBubbleStyle
CometChatImageBubble
- Location:
shared_ui/src/clean_architecture/presentation/views/bubbles/image_bubble/cometchat_image_bubble.dart
- Key props:
imageUrl, caption, colorPalette, spacing
- Style:
CometChatImageBubbleStyle
CometChatVideoBubble
- Location:
shared_ui/src/clean_architecture/presentation/views/bubbles/video_bubble/cometchat_video_bubble.dart
- Key props:
videoUrl, thumbnailUrl, colorPalette, spacing
- Style:
CometChatVideoBubbleStyle
CometChatAudioBubble
- Location:
shared_ui/src/clean_architecture/presentation/views/bubbles/audio_bubble/cometchat_audio_bubble.dart
- Key props:
audioUrl, title, colorPalette, spacing, typography
- Style:
CometChatAudioBubbleStyle
CometChatFileBubble
- Location:
shared_ui/src/clean_architecture/presentation/views/bubbles/file_bubble/cometchat_file_bubble.dart
- Key props:
fileUrl, title, subtitle, colorPalette, spacing, typography
- Style:
CometChatFileBubbleStyle
CometChatDeletedBubble
Placeholder shown for deleted messages ("This message was deleted").
- Location:
shared_ui/src/clean_architecture/presentation/views/misc/deleted_bubble/cometchat_deleted_bubble.dart
- Style:
CometChatDeletedBubbleStyle
CometChatCardBubble
Interactive card message with title, body, and action buttons.
- Location:
shared_ui/src/clean_architecture/presentation/views/bubbles/card_bubble/cometchat_card_bubble.dart
- Style:
CardBubbleStyle
5. Utility Widgets
CometChatListItem
Individual row used inside list components. Combines avatar, status indicator, title, subtitle, and tail view.
- Location:
shared_ui/src/clean_architecture/presentation/views/misc/list_item/cometchat_list_item.dart
- Key props:
avatarURL, avatarName, statusIndicatorColor, statusIndicatorIcon, title, hideSeparator
- View slots:
subtitleView, tailView, titleView, leadingStateView
- Style:
ListItemStyle, CometChatAvatarStyle, CometChatStatusIndicatorStyle
CometChatConfirmDialog
Modal confirmation dialog with title, message, confirm/cancel buttons. Call .show() to display.
- Location:
shared_ui/src/clean_architecture/presentation/views/misc/confirm_dialog/cometchat_confirm_dialog.dart
- Key props:
context (required), title, messageText, confirmButtonText, cancelButtonText, onConfirm, onCancel
- Style:
CometChatConfirmDialogStyle
CometChatActionSheet
Bottom sheet for message actions (copy, reply, delete, etc.) and attachment options.
- Location:
shared_ui/src/clean_architecture/presentation/views/misc/action_sheet/cometchat_action_sheet.dart
- Style:
CometChatMessageOptionSheetStyle, CometChatAttachmentOptionSheetStyle
6. AI Views
CometChatAISmartReplies
Displays AI-generated smart reply suggestions as tappable chips.
- Location:
shared_ui/src/views/ai_smart_replies/cometchat_ai_smart_replies_view.dart
- Style:
CometChatAISmartRepliesStyle
CometChatAIConversationStarter
Shows AI-generated conversation starters for empty chats.
- Location:
shared_ui/src/views/ai_conversation_starter/cometchat_ai_conversation_starter_view.dart
- Style:
CometChatAIConversationStarterStyle
CometChatAIConversationSummary
Displays an AI-generated summary of the conversation.
- Location:
shared_ui/src/views/ai_conversation_summary/cometchat_ai_conversation_summary_view.dart
- Style:
CometChatAIConversationSummaryStyle
CometChatAIAssistantBubble
Bubble for AI assistant responses with streaming text support.
- Location:
shared_ui/src/views/ai_assistant_bubble/cometchat_ai_assistant_bubble.dart
- Style:
CometChatAIAssistantBubbleStyle
Quick Reference: Import
import 'package:cometchat_chat_uikit/cometchat_chat_uikit.dart'; // All chat widgets
import 'package:cometchat_chat_uikit/cometchat_calls_uikit.dart'; // Call widgets
Quick Reference: Architecture
All components follow Clean Architecture + BLoC:
{component}/
├── bloc/ # BLoC, Events, State (Equatable)
├── domain/ # Use Cases, Repository interfaces
├── data/ # Repository impl, DataSources
├── di/ # ServiceLocator (singleton)
└── widgets/ # UI components
Quick Reference: Theme
Always use CometChatThemeHelper — never hardcode colors:
final colorPalette = CometChatThemeHelper.getColorPalette(context);
final typography = CometChatThemeHelper.getTypography(context);
final spacing = CometChatThemeHelper.getSpacing(context);
1---2name: cometchat-flutter-components3description: Complete catalog of CometChat Flutter UI Kit v6 widgets. Reference before writing integration code — never invent widget names. Covers all chat components (conversations, messages, users, groups), call components (buttons, incoming, outgoing, ongoing, call logs), and shared views (avatar, badge, receipt, reactions, bubbles, list base, search, status indicator).4license: MIT5---67# CometChat Flutter UIKit v6 — Widget Catalog89Canonical reference for every public widget in `cometchat_chat_uikit`. Look up names, props, view slots, and style classes here before writing code.1011---1213## Rule: NEVER_INVENT_NAMES1415Always use exact widget names from this catalog. Do not invent names like `CometChatChat`, `CometChatMessenger`, `CometChatChatList`, `CometChatContactList`, `CometChatMessageView`, or `CometChatUserList` — they don't exist.1617---1819## 1. Chat Components2021### CometChatConversations2223Displays a list of recent conversations with real-time updates (new messages, typing, presence, receipts).2425- **Location:** `chat_ui/src/conversations/cometchat_conversations.dart`26- **Key props:** `onItemTap`, `onItemLongPress`, `conversationsRequestBuilder`, `usersStatusVisibility`, `receiptsVisibility`, `deleteConversationOptionVisibility`, `textFormatters`, `hideAppbar`, `hideSearch`, `conversationsBloc`27- **View slots:** `listItemView(Conversation)`, `subtitleView(ctx, Conversation)`, `trailingView(Conversation)`, `leadingView(ctx, Conversation)`, `titleView(ctx, Conversation)`, `emptyStateView`, `errorStateView`, `loadingStateView`28- **Style:** `CometChatConversationsStyle`29- **Request builder:** `ConversationsRequestBuilder`3031### CometChatMessageList3233Displays messages for a 1:1 or group conversation with real-time updates, reactions, threads, and smart replies.3435- **Location:** `chat_ui/src/message_list/widgets/cometchat_message_list.dart`36- **Key props:** `user`, `group`, `messagesRequestBuilder`, `parentMessageId`, `templates`, `alignment`, `hideDeletedMessages`, `disableReceipts`, `disableReactions`, `enableSwipeToReply`, `textFormatters`, `messageListBloc`37- **View slots:** `headerView`, `footerView`, `emptyStateView`, `errorStateView`, `loadingStateView`, `emptyChatGreetingView`38- **Style:** `CometChatMessageListStyle`39- **Request builder:** `MessagesRequestBuilder`4041### CometChatMessageComposer4243Text input with attachments, voice recording, rich text toolbar, mentions, and AI features.4445- **Location:** `chat_ui/src/message_composer/widgets/cometchat_message_composer.dart`46- **Key props:** `user`, `group`, `parentMessageId`, `placeholderText`, `disableTypingEvents`, `text`, `onChange`, `onSendButtonTap`, `textFormatters`, `disableMentions`, `hideVoiceRecordingButton`, `richTextConfiguration`47- **View slots:** `auxiliaryButtonView`, `secondaryButtonView`, `sendButtonView`, `headerView`, `footerView`, `richTextToolbarView`48- **Style:** `CometChatMessageComposerStyle`49- **Note:** Scaffold must set `resizeToAvoidBottomInset: false` — composer handles keyboard internally.5051### CometChatMessageHeader5253Displays user/group info as an AppBar with online status, typing indicator, and call buttons.5455- **Location:** `chat_ui/src/message_header/cometchat_message_header.dart`56- **Key props:** `user`, `group`, `onBack`, `showBackButton`, `hideVideoCallButton`, `hideVoiceCallButton`, `usersStatusVisibility`, `hideChatHistoryButton`, `hideNewChatButton`57- **View slots:** `subtitleView(Group?, User?, ctx)`, `listItemView(Group?, User?, ctx)`, `trailingView(User?, Group?, ctx)`, `leadingStateView(Group?, User?, ctx)`, `titleView`, `auxiliaryButtonView`58- **Style:** `CometChatMessageHeaderStyle`59- **Implements:** `PreferredSizeWidget` (use as `appBar:` in Scaffold)6061### CometChatUsers6263Displays a searchable, alphabetically sorted list of users.6465- **Location:** `chat_ui/src/users/cometchat_users.dart`66- **Key props:** `onItemTap`, `onItemLongPress`, `usersRequestBuilder`, `usersStatusVisibility`, `hideSearch`, `selectionMode`, `usersBloc`67- **View slots:** `listItemView(User)`, `subtitleView(ctx, User)`, `trailingView(ctx, User)`, `leadingView(ctx, User)`, `titleView(ctx, User)`, `emptyStateView`, `errorStateView`, `loadingStateView`68- **Style:** `CometChatUsersStyle`69- **Request builder:** `UsersRequestBuilder`7071### CometChatGroups7273Displays a searchable list of groups the user has joined or can join.7475- **Location:** `chat_ui/src/groups/cometchat_groups.dart`76- **Key props:** `onItemTap`, `onItemLongPress`, `groupsRequestBuilder`, `hideSearch`, `selectionMode`, `groupTypeVisibility`, `groupsBloc`77- **View slots:** `listItemView(Group)`, `subtitleView(ctx, Group)`, `trailingView(ctx, Group)`, `leadingView(ctx, Group)`, `titleView(ctx, Group)`, `emptyStateView`, `errorStateView`, `loadingStateView`78- **Style:** `CometChatGroupsStyle`79- **Request builder:** `GroupsRequestBuilder`8081### CometChatGroupMembers8283Displays members of a specific group with role badges and management options (kick, ban, scope change).8485- **Location:** `chat_ui/src/group_members/cometchat_group_members.dart`86- **Key props:** `group` (required), `groupMembersRequestBuilder`, `hideSearch`, `selectionMode`, `usersStatusVisibility`, `hideBanMemberOption`, `hideKickMemberOption`, `hideScopeChangeOption`87- **View slots:** `listItemView(GroupMember)`, `subtitleView(ctx, GroupMember)`, `trailingView(ctx, GroupMember)`, `leadingView`, `titleView`, `emptyStateView`, `errorStateView`, `loadingStateView`88- **Style:** `CometChatGroupMembersStyle`89- **Request builder:** `GroupMembersRequestBuilder`9091### CometChatSearch9293Full-screen search across conversations and messages with filter chips and dual-section results.9495- **Location:** `chat_ui/src/search/cometchat_search.dart`96- **Key props:** `onConversationClicked`, `onMessageClicked`, `searchFilters`, `searchIn`, `user`, `group`, `conversationsRequestBuilder`, `messagesRequestBuilder`97- **View slots:** `conversationItemView(ctx, Conversation)`, `conversationSubtitleView(ctx, Conversation)`, `conversationLeadingView(ctx, Conversation)`, `conversationTailView(ctx, Conversation)`, `searchTextMessageView(ctx, TextMessage)`, `searchImageMessageView(ctx, MediaMessage)`, `emptyStateView`, `errorStateView`, `loadingStateView`, `initialStateView`98- **Style:** `CometChatSearchStyle`99100### CometChatThreadedHeader101102Displays a parent message with reply count in a threaded conversation view. Listens for real-time reply count updates.103104- **Location:** `chat_ui/src/threaded_header/widgets/cometchat_threaded_header.dart`105- **Key props:** `parentMessage` (required), `loggedInUser` (required), `template`, `receiptsVisibility`, `textFormatters`106- **View slots:** `messageActionView(BaseMessage, ctx)`107- **Style:** `CometChatThreadedHeaderStyle`108109### CometChatMessageInformation110111Displays read/delivered receipt information for a message. Shows per-member receipts in group conversations.112113- **Location:** `chat_ui/src/message_information/widgets/cometchat_message_information.dart`114- **Key props:** `message` (required), `title`, `template`, `textFormatters`115- **Style:** `CometChatMessageInformationStyle`116117### CometChatAIAssistantChatHistory118119Displays AI assistant conversation history with pagination, date separators, message deletion, and new chat button.120121- **Location:** `chat_ui/src/ai_assistant_chat_history/widgets/cometchat_ai_assistant_chat_history.dart`122- **Key props:** `user`, `group`, `messagesRequestBuilder`, `onMessageClicked`, `onNewChatButtonClicked`, `onClose`, `hideStickyDate`, `hideDateSeparator`123- **View slots:** `emptyStateView`, `errorStateView`, `loadingStateView`, `backButton`124- **Style:** `CometChatAIAssistantChatHistoryStyle`125126---127128## 2. Call Components129130### CometChatCallButtons131132Voice and video call icon buttons. Supports direct calls (user) and meetings (group).133134- **Location:** `call_ui/src/call_buttons/cometchat_call_buttons.dart`135- **Key props:** `user`, `group`, `hideVoiceCallButton`, `hideVideoCallButton`, `outgoingCallConfiguration`, `callSettingsBuilder`, `callButtonsBloc`136- **View slots:** `voiceCallIcon`, `videoCallIcon`137- **Style:** `CometChatCallButtonsStyle`138139### CometChatIncomingCall140141Full-screen incoming call UI with accept/decline buttons. Shown when the logged-in user receives a call.142143- **Location:** `call_ui/src/incoming_call/cometchat_incoming_call.dart`144- **Key props:** `call` (required), `user`, `callSettingsBuilder`, `onDecline`, `onAccept`, `disableSoundForCalls`, `customSoundForCalls`145- **View slots:** `titleView(ctx, Call)`, `subTitleView(ctx, Call)`, `leadingView(ctx, Call)`, `trailingView(ctx, Call)`, `itemView(ctx, Call)`146- **Style:** `CometChatIncomingCallStyle`147148### CometChatOutgoingCall149150Full-screen outgoing call UI with cancel button. Shown when the logged-in user initiates a call.151152- **Location:** `call_ui/src/outgoing_call/cometchat_outgoing_call.dart`153- **Key props:** `call` (required), `user`, `sessionSettingsBuilder`, `onCancelled`, `disableSoundForCalls`, `customSoundForCalls`154- **View slots:** `subtitleView(ctx, Call)`, `avatarView(ctx, Call)`, `titleView(ctx, Call)`, `cancelledView(ctx, Call)`155- **Style:** `CometChatOutgoingCallStyle`156157### CometChatOngoingCall158159Renders the active call screen using the CometChat Calls SDK. Blocks back navigation.160161- **Location:** `call_ui/src/ongoing_call/cometchat_ongoing_call.dart`162- **Key props:** `sessionSettingsBuilder` (required), `sessionId` (required), `callWorkFlow`, `onError`, `bloc`163- **Style:** None (rendered by Calls SDK)164165### CometChatCallLogs166167Displays a list of call logs (missed, incoming, outgoing) with icons and timestamps.168169- **Location:** `call_ui/src/call_logs/cometchat_call_logs/cometchat_call_logs.dart`170- **Key props:** `callLogsRequestBuilder`, `onItemClick`, `onCallLogIconClicked`, `hideAppbar`, `outgoingCallConfiguration`, `callLogsBloc`171- **View slots:** `listItemView(CallLog, ctx)`, `subTitleView(CallLog, ctx)`, `trailingView`, `leadingStateView`, `titleView`, `emptyStateView`, `errorStateView`, `loadingStateView`172- **Style:** `CometChatCallLogsStyle`173- **Request builder:** `CallLogRequestBuilder`174175### CometChatCallBubble176177Inline bubble for call messages inside the message list. Shows call type icon, title, and join button.178179- **Location:** `call_ui/src/call_bubble/cometchat_call_bubble.dart`180- **Key props:** `icon`, `title`, `buttonText`, `onTap`, `subtitle`, `alignment`, `iconUrl`181- **Style:** `CometChatCallBubbleStyle`182183---184185## 3. Shared Views186187### CometChatAvatar188189Circular avatar with image URL fallback to initials from name.190191- **Location:** `shared_ui/src/clean_architecture/presentation/views/misc/avatar/cometchat_avatar.dart`192- **Key props:** `image`, `name`, `width`, `height`, `padding`, `margin`, `colorPalette`, `spacing`, `typography`193- **Style:** `CometChatAvatarStyle`194195### CometChatBadge196197Unread count badge (red circle with number).198199- **Location:** `shared_ui/src/clean_architecture/presentation/views/misc/badge/cometchat_badge.dart`200- **Style:** `CometChatBadgeStyle`201202### CometChatReceipt203204Message delivery receipt icons (sent, delivered, read).205206- **Location:** `shared_ui/src/clean_architecture/presentation/views/misc/receipt/cometchat_receipt.dart`207- **Style:** `CometChatReceiptStyle`208209### CometChatReactions210211Displays emoji reaction chips below a message bubble with tap/long-press callbacks.212213- **Location:** `shared_ui/src/clean_architecture/presentation/views/components/reactions/cometchat_reactions.dart`214- **Key props:** `reactionList` (required), `alignment`, `onReactionTap`, `onReactionLongPress`, `colorPalette`, `spacing`, `typography`215- **Style:** `CometChatReactionsStyle`216217### CometChatMessageBubble218219Skeleton structure for any message bubble. Binds together leading, header, content, footer, thread, reply, and bottom views.220221- **Location:** `shared_ui/src/clean_architecture/presentation/views/misc/message_bubble/cometchat_message_bubble.dart`222- **Key props:** `alignment`, `colorPalette`, `spacing`, `contentPadding`223- **View slots:** `leadingView`, `headerView`, `contentView`, `footerView`, `bottomView`, `threadView`, `replyView`, `statusInfoView`224- **Style:** `CometChatMessageBubbleStyle`225226### CometChatListBase227228Top-level container with app bar, search box, and scrollable content. Used internally by Conversations, Users, Groups, GroupMembers.229230- **Location:** `shared_ui/src/clean_architecture/presentation/views/components/list_base/cometchat_listbase.dart`231- **Key props:** `container` (required), `title`, `hideSearch`, `showBackButton`, `onSearch`, `hideAppBar`, `searchReadOnly`, `onSearchTap`232- **View slots:** `backIcon`, `menuOptions`, `titleView`233- **Style:** `ListBaseStyle`234235### CometChatStatusIndicator236237Small colored dot indicating user online/offline status or group type icon.238239- **Location:** `shared_ui/src/clean_architecture/presentation/views/misc/status_indicator/cometchat_status_indicator.dart`240- **Style:** `CometChatStatusIndicatorStyle`241242### CometChatDate243244Formatted date/time label used in conversation trailing, message date separators, and sticky headers.245246- **Location:** `shared_ui/src/clean_architecture/presentation/views/misc/date/cometchat_date.dart`247- **Style:** `CometChatDateStyle`248249---250251## 4. Bubble Widgets252253Content widgets rendered inside `CometChatMessageBubble`. All accept optional `colorPalette`, `spacing`, `typography` for theme-caching optimization.254255### CometChatTextBubble256257- **Location:** `shared_ui/src/clean_architecture/presentation/views/bubbles/text_bubble/cometchat_text_bubble.dart`258- **Key props:** `text`, `alignment`, `formatters`, `emojiCount`, `colorPalette`, `spacing`, `typography`259- **Style:** `CometChatTextBubbleStyle`260261### CometChatImageBubble262263- **Location:** `shared_ui/src/clean_architecture/presentation/views/bubbles/image_bubble/cometchat_image_bubble.dart`264- **Key props:** `imageUrl`, `caption`, `colorPalette`, `spacing`265- **Style:** `CometChatImageBubbleStyle`266267### CometChatVideoBubble268269- **Location:** `shared_ui/src/clean_architecture/presentation/views/bubbles/video_bubble/cometchat_video_bubble.dart`270- **Key props:** `videoUrl`, `thumbnailUrl`, `colorPalette`, `spacing`271- **Style:** `CometChatVideoBubbleStyle`272273### CometChatAudioBubble274275- **Location:** `shared_ui/src/clean_architecture/presentation/views/bubbles/audio_bubble/cometchat_audio_bubble.dart`276- **Key props:** `audioUrl`, `title`, `colorPalette`, `spacing`, `typography`277- **Style:** `CometChatAudioBubbleStyle`278279### CometChatFileBubble280281- **Location:** `shared_ui/src/clean_architecture/presentation/views/bubbles/file_bubble/cometchat_file_bubble.dart`282- **Key props:** `fileUrl`, `title`, `subtitle`, `colorPalette`, `spacing`, `typography`283- **Style:** `CometChatFileBubbleStyle`284285### CometChatDeletedBubble286287Placeholder shown for deleted messages ("This message was deleted").288289- **Location:** `shared_ui/src/clean_architecture/presentation/views/misc/deleted_bubble/cometchat_deleted_bubble.dart`290- **Style:** `CometChatDeletedBubbleStyle`291292### CometChatCardBubble293294Interactive card message with title, body, and action buttons.295296- **Location:** `shared_ui/src/clean_architecture/presentation/views/bubbles/card_bubble/cometchat_card_bubble.dart`297- **Style:** `CardBubbleStyle`298299---300301## 5. Utility Widgets302303### CometChatListItem304305Individual row used inside list components. Combines avatar, status indicator, title, subtitle, and tail view.306307- **Location:** `shared_ui/src/clean_architecture/presentation/views/misc/list_item/cometchat_list_item.dart`308- **Key props:** `avatarURL`, `avatarName`, `statusIndicatorColor`, `statusIndicatorIcon`, `title`, `hideSeparator`309- **View slots:** `subtitleView`, `tailView`, `titleView`, `leadingStateView`310- **Style:** `ListItemStyle`, `CometChatAvatarStyle`, `CometChatStatusIndicatorStyle`311312### CometChatConfirmDialog313314Modal confirmation dialog with title, message, confirm/cancel buttons. Call `.show()` to display.315316- **Location:** `shared_ui/src/clean_architecture/presentation/views/misc/confirm_dialog/cometchat_confirm_dialog.dart`317- **Key props:** `context` (required), `title`, `messageText`, `confirmButtonText`, `cancelButtonText`, `onConfirm`, `onCancel`318- **Style:** `CometChatConfirmDialogStyle`319320### CometChatActionSheet321322Bottom sheet for message actions (copy, reply, delete, etc.) and attachment options.323324- **Location:** `shared_ui/src/clean_architecture/presentation/views/misc/action_sheet/cometchat_action_sheet.dart`325- **Style:** `CometChatMessageOptionSheetStyle`, `CometChatAttachmentOptionSheetStyle`326327---328329## 6. AI Views330331### CometChatAISmartReplies332333Displays AI-generated smart reply suggestions as tappable chips.334335- **Location:** `shared_ui/src/views/ai_smart_replies/cometchat_ai_smart_replies_view.dart`336- **Style:** `CometChatAISmartRepliesStyle`337338### CometChatAIConversationStarter339340Shows AI-generated conversation starters for empty chats.341342- **Location:** `shared_ui/src/views/ai_conversation_starter/cometchat_ai_conversation_starter_view.dart`343- **Style:** `CometChatAIConversationStarterStyle`344345### CometChatAIConversationSummary346347Displays an AI-generated summary of the conversation.348349- **Location:** `shared_ui/src/views/ai_conversation_summary/cometchat_ai_conversation_summary_view.dart`350- **Style:** `CometChatAIConversationSummaryStyle`351352### CometChatAIAssistantBubble353354Bubble for AI assistant responses with streaming text support.355356- **Location:** `shared_ui/src/views/ai_assistant_bubble/cometchat_ai_assistant_bubble.dart`357- **Style:** `CometChatAIAssistantBubbleStyle`358359---360361## Quick Reference: Import362363```dart364import 'package:cometchat_chat_uikit/cometchat_chat_uikit.dart'; // All chat widgets365import 'package:cometchat_chat_uikit/cometchat_calls_uikit.dart'; // Call widgets366```367368## Quick Reference: Architecture369370All components follow Clean Architecture + BLoC:371```372{component}/373├── bloc/ # BLoC, Events, State (Equatable)374├── domain/ # Use Cases, Repository interfaces375├── data/ # Repository impl, DataSources376├── di/ # ServiceLocator (singleton)377└── widgets/ # UI components378```379380## Quick Reference: Theme381382Always use `CometChatThemeHelper` — never hardcode colors:383```dart384final colorPalette = CometChatThemeHelper.getColorPalette(context);385final typography = CometChatThemeHelper.getTypography(context);386final spacing = CometChatThemeHelper.getSpacing(context);387```