chat_ui/src/message_composer/cometchat_message_composer library

Re-export file for backward compatibility.

This file re-exports the CometChatMessageComposer widget from its new location in the widgets directory. This ensures existing imports continue to work without modification.

The actual implementation is now in: widgets/cometchat_message_composer.dart

Classes

AttachmentTile
One staged item in the tray, keyed by the app-supplied fileId.
AttachmentTrayController
Owns the composer's staging model and drives the SDK's multi-upload surface: a per-composer UploadFileRequest (CometChat.createUploadFileRequest).
CometChatAttachmentErrorAlertStyle
Styling for every attachment error alert the composer raises — one class for both surfaces, since they are the same notice in two places:
CometChatAttachmentErrorSnackBar
Shows an attachment's error reason as a SnackBar. Not a persistent widget — summoned on demand (tap) via show, from the ScaffoldMessenger above the composer.
CometChatAttachmentTile
One staged item in the CometChatAttachmentTray. Renders in one of three modes: • image / video → square thumbnail with a whole-tile status scrim • audio → inline player card — circular play button + seek slider + "pos/total" time; upload status lives inside the play circle (scrim + spinner / error badge) • file → wide card where status lives inside the leading icon container (scrim + spinner / error badge) plus a status subtitle ("PDF" / "Upload failed" / "Tap to retry")
CometChatAttachmentTray
The composer strip that shows staged attachment tiles, rendered directly above the input row. One CometChatAttachmentTile per fileId (square thumbnails for image/video, an inline player card for audio, and a state-driven wide card for files — upload status inside the leading icon plus a status subtitle). Driven by an AttachmentTrayController; rebuilds as upload events arrive and renders nothing while empty. Sending is handled by the composer's own send button.
CometChatAttachmentTrayStyle
CometChatAttachmentTrayStyle styles the composer's attachment staging tray and its tiles (media thumbnails, the audio player card and the file card). All fields are optional — null falls back to the tray's theme-driven defaults. Supports merge like every other UIKit style class.
CometChatKeyboardDiagnostics
Snapshot of every keyboard-related value the composer uses at a point in time. Consumers use this to diagnose device-specific spacing issues (extra gap between composer and keyboard, safe-area double-counting, etc.) without instrumenting the UIKit.
CometChatMessageComposer
CometChatMessageComposer component allows users to send messages and attachments to the chat, participating in the conversation.

Enums

AttachmentTileStatus
CometChatKeyboardDiagnosticsSource
Source of a keyboard diagnostic event — lets consumers understand which code path inside the composer emitted the sample.

Typedefs

CometChatKeyboardDiagnosticsCallback = void Function(CometChatKeyboardDiagnostics diagnostics)
Signature for the keyboard diagnostics callback.

Exceptions / Errors

AttachmentStageException
Thrown by AttachmentTrayController.stage when a batch cannot be staged at all — the composer hasn't bound a conversation yet. The caller (composer) surfaces message to the user so the failure isn't swallowed silently. cause is the original error, when there is one.