KQ-527 · KEYMAP/SHEET
Keymap Sheet
A shortcut sheet that opens on ? or its trigger. The panel rises on glide and every keycap pops from 0.7x on flick in a cascade, grouped by section; typing in the filter folds the rows that no longer match away on the exit ease, headings included. It is a modal dialog with a focus trap, the hotkey is ignored while focus sits in a field, and Escape closes the sheet and returns focus to the trigger.
KQ-527 · KEYMAP/SHEET
Fernworks
## Field notes — bay 4The vane sits 2° proud of the mark, so thegauge reads long on every third sweep.Retorque at 18 Nm and log the drift beforethe shift hands over.
Sheet closed · press ? to open
Install
One command — the source lands in your repo. Or copy it from the Code tab.
$ pnpm dlx shadcn@latest add @kinetiq/keymap-sheet
Props
- groups
- KeymapGroup[]
- default —
- Sections of shortcuts; each shortcut carries a label and one string per keycap.
- open / defaultOpen
- boolean
- default false
- Controlled or initial sheet state.
- onOpenChange
- (open: boolean) => void
- default —
- Fires whenever the sheet opens or closes.
- hotkey
- string
- default "?"
- The key that opens the sheet, matched against event.key and shown on the trigger.
- onFilterChange
- (filter: string) => void
- default —
- Fires as the filter field is typed in, and with an empty string when the sheet opens.
| Prop | Type | Default | Description |
|---|---|---|---|
| groups | KeymapGroup[] | — | Sections of shortcuts; each shortcut carries a label and one string per keycap. |
| open / defaultOpen | boolean | false | Controlled or initial sheet state. |
| onOpenChange | (open: boolean) => void | — | Fires whenever the sheet opens or closes. |
| hotkey | string | "?" | The key that opens the sheet, matched against event.key and shown on the trigger. |
| onFilterChange | (filter: string) => void | — | Fires as the filter field is typed in, and with an empty string when the sheet opens. |