KQ-940 · SNOOZE/CHIP

Snooze Chip

One notification, put off until a stated time. The chip unfolds its durations in flow on a ResizeObserver-measured height joined on glide, and picking one slides the card sixteen pixels away on the exit ease while the block collapses to the stamp's own measured height and the stamp lands on recoil with a clock whose hands turn to the wake time. The wake time is arithmetic on a minute the host passes in, never a clock read: Left and Right rove the chips, Home and End jump, Escape folds and returns focus to the chip, and choosing one moves focus to Undo.

KQ-940 · SNOOZE/CHIP
Ines BardemThe yard fee on 4471-CB is still held. Can you look before the run?Waylight Pay ops

Awake · now 3:45 pm

Install

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

$ pnpm dlx shadcn@latest add @kinetiq/snooze-chip

Props

title
string
default
Who or what the notification is from.
body
string
default
The one line of the notification.
meta
string
default
A quiet third line, such as the room it came from.
durations
SnoozeDuration[]
default 20 minutes / 1 hour / 3 hours / Tomorrow at 9
The fold's stops: minutes from now, or an `at` minute of the day to wake at instead.
nowMinutes
number
default 945
The host's minute of the day, 0 to 1439. The component never reads a clock.
open / defaultOpen
boolean
default false
Controlled or initial state of the duration fold.
onOpenChange
(open: boolean) => void
default
Fires from the chip, from Escape, and from a chosen duration.
onSnooze
(snooze: { id: string; label: string; wakeMinutes: number } | null) => void
default
Fires with the chosen snooze, or null from Undo.
onWake
() => void
default
Fires once when nowMinutes reaches the wake time.
format
(minutes: number) => string
default
Formats a minute of the day; defaults to a 12-hour clock.
snoozeLabel
string
default "Snooze"
Copy for the chip.