Attachment

Renders message attachments inside MessageList. This is the default component for the Attachment prop.

It selects the correct renderer by attachment type (card, Giphy, file, etc.). For customization, use type-specific props like Giphy, Gallery, UrlPreview, or FileAttachment. See Attachment Customization for details.

Best Practices

  • Prefer type-specific overrides (Gallery, FileAttachment) over replacing the whole Attachment component.
  • Handle unknown or custom attachment types gracefully.
  • Keep attachment rendering lightweight to avoid list jank.
  • Use AttachmentActions for supported actions instead of custom tap logic.
  • Ensure URL previews and media rendering are consistent with your app theme.

Props

attachment

Attachment object to render. Typically an item from message.attachments (for example, message.attachments[0]).

Type
object

UI Component Props

AttachmentActions

Renders additional attachment actions (for example, Giphy send/shuffle/cancel).

TypeDefault
ComponentTypeAttachmentActions

Card

Renders custom attachment types. See Custom Attachment.

TypeDefault
ComponentTypeCard

FileAttachment

Renders file attachments in MessageList.

TypeDefault
ComponentTypeFileAttachment

Renders image attachments in MessageList.

TypeDefault
ComponentTypeGallery

Giphy

Renders Giphy attachments in MessageList.

TypeDefault
ComponentTypeGiphy

UrlPreview

Renders URL previews in MessageList.

TypeDefault
ComponentTypeCard