Marker

Inline status, system notes, bordered rows, and labeled separators — useful in chat and agent threads. Presentational by default; set role="status" for live updates.

Basic

Inline status notes with an optional decorative MarkerIcon.

Installation

CLI
npx @sonojs/ui@latest add marker

Composition

structure
Marker
├── MarkerIcon
└── MarkerContent

Usage

marker.tsx
import { CheckIcon } from "lucide-react"

import {
  Marker,
  MarkerContent,
  MarkerIcon,
} from "@/components/ui/marker"

export function Example() {
  return (
    <Marker>
      <MarkerIcon>
        <CheckIcon />
      </MarkerIcon>
      <MarkerContent>Explored 4 files</MarkerContent>
    </Marker>
  )
}

Props

PropTypeDefaultDescription
variant"default" · "border" · "separator""default"Layout: inline, bottom border, or labeled divider.
asChildbooleanfalseMerge onto a child `<a>` or `<button>` via Slot.
rolestring—Use `"status"` for streaming / progress markers.
classNamestring—Merge extra Tailwind classes on any part.