realtime-inspector.ts58 lines · main
1// @ts-nocheck
2import { RegistryDefinations } from '../types'
3
4/**
5 * Shortcuts scoped to the Realtime Inspector page.
6 *
7 * Active only while the inspector is mounted. All use `Shift+<letter>` to
8 * avoid conflicting with the global `Mod+` shortcuts and the multi-step nav
9 * chords.
10 */
11export const REALTIME_INSPECTOR_SHORTCUT_IDS = {
12 INSPECTOR_JOIN_CHANNEL: 'realtime-inspector.join-channel',
13 INSPECTOR_TOGGLE_LISTENING: 'realtime-inspector.toggle-listening',
14 INSPECTOR_TOGGLE_FILTERS: 'realtime-inspector.toggle-filters',
15 INSPECTOR_BROADCAST: 'realtime-inspector.broadcast',
16 INSPECTOR_COPY_MESSAGE: 'realtime-inspector.copy-message',
17}
18
19export type RealtimeInspectorShortcutId =
20 (typeof REALTIME_INSPECTOR_SHORTCUT_IDS)[keyof typeof REALTIME_INSPECTOR_SHORTCUT_IDS]
21
22export const realtimeInspectorRegistry: RegistryDefinations<RealtimeInspectorShortcutId> = {
23 [REALTIME_INSPECTOR_SHORTCUT_IDS.INSPECTOR_JOIN_CHANNEL]: {
24 id: REALTIME_INSPECTOR_SHORTCUT_IDS.INSPECTOR_JOIN_CHANNEL,
25 label: 'Join a channel',
26 sequence: ['Shift+J'],
27 showInSettings: false,
28 options: { ignoreInputs: true, registerInCommandMenu: true },
29 },
30 [REALTIME_INSPECTOR_SHORTCUT_IDS.INSPECTOR_TOGGLE_LISTENING]: {
31 id: REALTIME_INSPECTOR_SHORTCUT_IDS.INSPECTOR_TOGGLE_LISTENING,
32 label: 'Start/Stop listening',
33 sequence: ['Shift+L'],
34 showInSettings: false,
35 options: { ignoreInputs: true, registerInCommandMenu: true },
36 },
37 [REALTIME_INSPECTOR_SHORTCUT_IDS.INSPECTOR_TOGGLE_FILTERS]: {
38 id: REALTIME_INSPECTOR_SHORTCUT_IDS.INSPECTOR_TOGGLE_FILTERS,
39 label: 'Toggle filters',
40 sequence: ['Shift+F'],
41 showInSettings: false,
42 options: { ignoreInputs: true, registerInCommandMenu: true },
43 },
44 [REALTIME_INSPECTOR_SHORTCUT_IDS.INSPECTOR_BROADCAST]: {
45 id: REALTIME_INSPECTOR_SHORTCUT_IDS.INSPECTOR_BROADCAST,
46 label: 'Broadcast a message',
47 sequence: ['Shift+B'],
48 showInSettings: false,
49 options: { ignoreInputs: true, registerInCommandMenu: true },
50 },
51 [REALTIME_INSPECTOR_SHORTCUT_IDS.INSPECTOR_COPY_MESSAGE]: {
52 id: REALTIME_INSPECTOR_SHORTCUT_IDS.INSPECTOR_COPY_MESSAGE,
53 label: 'Copy selected message',
54 sequence: ['Mod+Shift+C'],
55 showInSettings: false,
56 options: { ignoreInputs: true, registerInCommandMenu: true },
57 },
58}