# Appointment Detail block

> Appointment Detail Sheet with Deposit Payment and Booking Timeline

Inset right sheet over an appointment list showing client, service, staff, deposit-progress payment, internal note, and a booking activity timeline. Uses ReUI Badge, Timeline; shadcn Avatar, Button, Item, Progress, ScrollArea, Sheet, Textarea.

- Type: Pro block
- Category: [Bookings](https://web.dev.reui.io/blocks/solutions/bookings.md)
- Page: https://web.dev.reui.io/blocks/solutions/bookings/solution-bookings-3
- MCP: `get_block("solution-bookings-3")`
- Built with: Avatar, Badge, Button, Item, Progress, Scroll Area, Separator, Sheet, Textarea, Timeline
- Installs with a ReUI Pro or Ultimate license; setup: https://web.dev.reui.io/docs/license-setup

## Best for

One booking in an inset right sheet over a 14 row list, with deposit progress, a staff note and no-show or check-in buttons

## Agent notes

- Replace the Lumen Studio sample data in data.tsx: `APPOINTMENT` (the open booking), `APPOINTMENT_LIST` and `APPOINTMENT_ACTIVITY`
- `handleSaveNote`, `handleNoShow` and `handleCheckIn` only set local state and call `toast`; nothing is saved
- The sheet always renders the one `APPOINTMENT` and `ListRow` has no click handler, so choosing another list row loads no other booking

## When not to use

- A right sheet that only lists a team activity feed, with no single record behind it: use [Team Activity Sheet](https://web.dev.reui.io/blocks/application/timeline/timeline-8.md) (`get_block("timeline-8")`)
- A sales deal opened in a sheet, with an inline stage select and a win probability: use [Deal Sheet](https://web.dev.reui.io/blocks/solutions/crm/solution-crm-4.md) (`get_block("solution-crm-4")`)

## Third-party libraries

- Sonner v2: [API reference](https://sonner.emilkowal.ski/toast), [docs](https://sonner.emilkowal.ski/getting-started)

## Install

```bash
npx shadcn@latest add @reui/solution-bookings-3
```

## About Bookings blocks

### When to use

- A front desk overview for an appointment business: booking KPIs, chair capacity and the day's queue
- An appointment calendar by day or week, filtered by staff and service, with a double booking alert
- One appointment's detail over the day's list: client, deposit balance, internal note and booking history

### When not to use

- An activity feed or change history on its own, with no appointments or clients: use the [Timeline blocks](https://web.dev.reui.io/blocks/application/timeline.md)
- A team overview of KPI tiles and a work queue for a business with no appointments: use the [Dashboard blocks](https://web.dev.reui.io/blocks/application/dashboard.md)
- A client facing card where someone picks a day and a time slot to book one session: use the [Schedule blocks](https://web.dev.reui.io/blocks/application/schedule.md)

### Agent notes

- Each block's data.tsx declares its own `AppointmentStatus` union, and the 3 differ in values and casing; map them to one set before combining
- Write actions save nothing: new appointments, check-ins, status changes and notes only call sonner `toast`, at most after a local state change
- Each root sets a max width, `max-w-7xl`, `max-w-6xl` or `max-w-md`, and page.tsx or the root adds padding; drop both inside an app shell

Every ReUI item has a twin like this one; the index is https://web.dev.reui.io/llms.txt. Agents with the ReUI MCP (https://web.dev.reui.io/docs/mcp) get the same guidance from the getters named above.
