Skip to content

CommentThreadList

Renders a list of threaded comments: each root with its sorted replies and an optional inline reply box. Fully controlled — mutations route through the id-keyed callbacks.

Source

import { CommentThreadList } from "@flanksource/clicky-ui/comments";

No dedicated Storybook demo is available for this component yet.

The props table documents the component-specific surface. Standard DOM attributes inherited from React, such as className, event handlers, and accessibility attributes, may also be accepted when the component’s prop type extends a native element.

Prop Type Default Description
comments* Comment[] — —
compact boolean false —
config* CommentConfig — —
defaultExpanded boolean false Expand each thread immediately (roots and their replies), exposing actions such as Reply.
detailTabs readonly CommentDetailTab[] [] —
extraAssignItems (…) => DropdownMenuItem[] — Caller-owned entries appended to each root's "Assign…" submenu.
getThreadProps (…) => HTMLAttributes<HTMLDivElement> — Props merged onto each thread wrapper (e.g. for scroll anchoring).
onAcknowledge (…) => void | Promise<void> — —
onAssign (…) => void | Promise<void> — —
onChecklistToggle (…) => void — —
onClose (…) => void | Promise<void> — —
onDelete (…) => void — —
onMaximizedChange (…) => void — —
onReply (…) => void | Promise<void> — Submit a reply to `parent`. Presence enables the inline reply affordance.
onUpdateStatus (…) => void | Promise<void> — —
previewLines number — —
renderBody (…) => ReactNode — Custom body renderer forwarded to each card.
renderRootDetails (…) => ReactNode — Extra content rendered with each root thread, including its maximized view.
renderRootMeta (…) => ReactNode — Extra content rendered above each root card (e.g. an anchor label).
threadToMarkdown (…) => string — Serialize a root and its replies for Copy. Render a preview of it through `detailTabs`.