'use client'; /** Messages — chat transcript rendering (list, bubble, tool calls, …). */ export { MessageList, type MessageListProps, type MessageListHandle, } from './MessageList'; export { MessageBubble, type MessageBubbleProps } from './MessageBubble'; // The auto-detect link-preview slot — shared by MessageBubble and any forked // bubble (e.g. cmdop's mention bubble) so previews never silently drift. export { AutoLinkPreview, type AutoLinkPreviewProps } from './AutoLinkPreview'; // Re-exported from the shared `common/link-preview` location (the card was // hoisted out of chat so the NotionEditor bookmark node can reuse it). The // chat public surface (`@djangocfg/ui-tools/chat`) keeps exporting it from // here unchanged. export { LinkPreviewCard, type LinkPreviewCardProps } from '../../../common/link-preview'; export { MessageActions, type MessageActionsProps } from './MessageActions'; export { BubbleContextMenu, buildDefaultBubbleMenuItems, composeBubbleMenuItems, type BubbleContextMenuProps, type BubbleMenuItem, type DefaultBubbleMenuHandlers, } from './BubbleContextMenu'; export { Sources, type SourcesProps } from './Sources'; export { ToolCalls, type ToolCallsProps, type ToolPayloadKind } from './ToolCalls'; // Shared payload renderer (object → JsonTree, string/streaming →
) so a
// host that overrides `renderToolCall` renders payloads identically.
export { ToolPayloadValue, type ToolPayloadValueProps } from './ToolPayloadValue';
export {
Attachments,
AttachmentsGrid,
AttachmentsList,
type AttachmentsProps,
type AttachmentsGridProps,
type AttachmentsListProps,
type AttachmentRenderer,
type AttachmentRendererArgs,
type AttachmentRendererMap,
} from './Attachments';
export { JumpToLatest, type JumpToLatestProps } from './JumpToLatest';
export { StreamingIndicator, type StreamingIndicatorProps } from './StreamingIndicator';
export {
MessageBlocks,
type MessageBlocksProps,
createBlockRegistry,
BUILTIN_BLOCK_REGISTRY,
type BlockRegistry,
type BlockRenderer,
type BlockRenderContext,
} from './blocks';