PathLogs UI
English

Компоненты

HotkeysHelp

Экран справки, собранный из того же списка клавиш.

Экран справки по горячим клавишам, открывается по «?». Собирается из того же массива, который отдан обработчику.

Пример

tsx
import { HotkeysHelp } from "@toimetdev/pathlogs-core";

const hotkeys = [
  { keys: "g d", label: "Проекты", group: "Навигация", handler: () => router.push("/dashboard") },
  { keys: "g m", label: "Мои задачи", group: "Навигация", handler: () => router.push("/my") },
  { keys: "d", label: "Отметить выполненной", group: "Доска", handler: markDone },
  { keys: "mod+k", label: "Поиск", allowInInput: true, handler: openPalette },
];

<HotkeysHelp hotkeys={hotkeys} hint="«g» — лидер: нажмите g, затем вторую клавишу." />

Отдельно вызывать useHotkeys не нужно — компонент делает это сам и добавляет к списку клавишу вызова справки.

Один список

В справку попадают только записи с подписью. Клавиши без label считаются служебными — закрыть окно, подтвердить, — и в списке были бы шумом.

Разделы идут в порядке первого появления, а не по алфавиту: так виден замысел автора, а алфавит перемешал бы связанные группы.

Пропсы

hotkeys*Hotkey[]

Тот же список, что отдан бы в useHotkeys.

hotkeystring

по умолчанию: "?"

Клавиша вызова справки.

titlestring

по умолчанию: "Keyboard shortcuts"

Заголовок окна.

hintstring

Пояснение внизу — например, про клавишу-лидер.

Записи вроде mod, arrowup и escape показываются как ⌘/Ctrl, ↑ и Esc: имя события читается хуже, чем сам символ.