# Lending Deal Calendar block

> Commercial lending calendar with multi-row deal chips and covenant detail cards on hover

Commercial lending calendar in month, week, day, and agenda views. Multi-row chips carry a loan reference, category tag, counterparty, attendee avatars, and a task progress bar, stage, or join-call row. Hovering a chip opens a detail card with the covenant clause, due date, and pass or fail tallies.

- Type: Pro block
- Category: [Event Calendar](https://web.dev.reui.io/blocks/application/event-calendar.md)
- Page: https://web.dev.reui.io/blocks/application/event-calendar/event-calendar-6
- Docs (Base UI): https://web.dev.reui.io/docs/components/base/event-calendar.md
- Docs (Radix UI): https://web.dev.reui.io/docs/components/radix/event-calendar.md
- MCP: `get_block("event-calendar-6")`
- Built with: Alert Dialog, Avatar, Badge, Button, Calendar, Card, Checkbox, Dropdown Menu, Event Calendar, Field, Hover Card, Input, Popover, Progress, Scroll Area, Select, Separator, Sheet, Switch, Textarea
- Installs with a ReUI Pro or Ultimate license; setup: https://web.dev.reui.io/docs/license-setup

## Best for

Deal chips with a workstream progress bar and a hover card of clause, due date and pass or fail checks, filtered by category and owner

## Agent notes

- Replace `COUNTERPARTIES`, `PEOPLE` and `OWNERS` in data.ts; the Ownership filter lists only `OWNERS`, so add every event owner there
- `saveDraft` and `deleteDraft` change local state and fire a `toast` carrying `DEMO_WIRING`; drop it once your API is wired
- The event form has no inputs for `attendees`, `checks`, `source` or workstream progress, so only seeded events show them

## When not to use

- Deals worked as a table, a stage board and a timeline as well as by date: use [Pipeline Workspace](https://web.dev.reui.io/blocks/solutions/crm/solution-crm-7.md) (`get_block("solution-crm-7")`)
- Plain meetings with guests and locations, sorted into color coded personal lists: use [Mini Month Calendar](https://web.dev.reui.io/blocks/application/event-calendar/event-calendar-2.md) (`get_block("event-calendar-2")`)

## Third-party libraries

- date-fns v4: [docs](https://date-fns.org/v4.1.0/docs/Getting-Started)
- Sonner v2: [API reference](https://sonner.emilkowal.ski/toast), [docs](https://sonner.emilkowal.ski/getting-started)
- React DayPicker v9: [API reference](https://daypicker.dev/v9/api), [docs](https://daypicker.dev/v9/start), through shadcn Calendar

## Install

```bash
npx shadcn@latest add @reui/event-calendar-6
```

## About Event Calendar blocks

### When to use

- A full page scheduling workspace where people drag, resize and create events on a week time grid
- A personal calendar of meetings, focus time and travel, filtered by color-coded calendars
- An operations board for one trade: a hotel front desk, a shift roster, clinic chairs or a lending desk

### When not to use

- Only the scheduling grid and its props, to compose inside a layout you already have: use [Event Calendar](https://web.dev.reui.io/components/event-calendar.md) (`get_component("event-calendar")`)
- A compact card that books one meeting from a date picker and a list of time slots: use the [Schedule blocks](https://web.dev.reui.io/blocks/application/schedule.md)
- A single date or range picker with no events, hours or drag: use [Calendar](https://web.dev.reui.io/components/calendar.md) (`get_component("calendar")`)

### Agent notes

- Replace `buildEvents` and the fixed `ANCHOR` date in data.ts with your own events and opening date; every block seeds `events` from them
- Every create, edit, move and delete only updates local state; persist moves in `handleEventsChange` and saves in `saveDraft`
- Each block sets its own `h-svh` wrapper and `p-4` padding, and the grid scrolls inside it, so give it a bounded height in 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.
