KQ-932 · DIGEST/FOLD

Digest Fold

What you missed, folded into one line: a count, the rooms and the hour it starts from, beside procedural author marks hashed from their names. Pressing the header unfolds the body against a ResizeObserver-measured height on glide while the chevron turns on snap and the rows fade in on a cascade, and pressing a row jumps to it, drawing a tick on flick before the row dims to opened. The header is a real disclosure, rows carry a roving tabindex, and Escape folds the card back to the header.

KQ-932 · DIGEST/FOLD

folded · 7 missed in 3 rooms

Install

One command — the source lands in your repo. Or copy it from the Code tab.

$ pnpm dlx shadcn@latest add @kinetiq/digest-fold

Props

groups
DigestGroup[]
default
What you missed, grouped by room, oldest first.
since
string
default
The time the digest starts from; printed and spoken.
open / defaultOpen
boolean
default false
Controlled or initial fold state.
onOpenChange
(open: boolean) => void
default
Fires from the header press or from Escape.
onJump
(message: DigestMessage, room: string) => void
default
Fires with the pressed row and the room it came from.
onAnnounce
(sentence: string) => void
default
The frozen sentence the polite region just spoke.
title
string
default "While you were away"
The card's heading.