ns-ui
An ASCII venue floor plan where dragging a marquee selects a contiguous block of seats — taken seats and the centre aisle break the run, and the selection visibly snaps to the longest unbroken block inside the drag, with a live seat count.
Use when picking a contiguous block of seats (or any grid of discrete slots that must stay together) where taken slots need to visibly break a run rather than being silently skipped — pick this over grid-magnetic-lattice (ambient cursor field, nothing is actually selected) or filter-facet-mesh (toggling a set of independent facet chips, not a contiguous run of grid cells). Not a fit for a click-one-seat-at-a-time picker; the mechanic here is specifically the marquee-to-block snap.
Install
npx shadcn add https://design.helpmarq.com /r/seatmap-ascii-pick.jsonns-ui / seatmap-ascii-pick
Drag a marquee across the plan — taken seats and the aisle break the block, and the selection snaps to the longest unbroken run.
| Prop | Type | Default | Description |
|---|---|---|---|
| seats? | SeatStatus[][] | — | rows x cols seat status grid |
| rowLabels? | string[] | — | — |
| colLabels? | string[] | — | — |
| sectionLabel? | string | — | — |
| className? | string | — | — |