import process from "node:process"; import {html} from "../../../../common/html.js"; import * as LinkUtil from "../../../../common/link-util.js"; import * as t from "../../../../common/translation-util.js"; type ShortcutsSectionProps = { $root: Element; }; // eslint-disable-next-line complexity export function initShortcutsSection({$root}: ShortcutsSectionProps): void { const cmdOrCtrl = process.platform === "darwin" ? "⌘" : "Ctrl"; $root.innerHTML = html`

settings${t.__("Tip")}: ${t.__("These desktop app shortcuts extend the Zulip webapp's")} ${t.__("keyboard shortcuts")}.

${t.__("Application Shortcuts")}
${cmdOrCtrl} + , ${t.__("Settings")}
${cmdOrCtrl} + K ${t.__("Keyboard Shortcuts")}
${cmdOrCtrl} + Shift + M ${t.__("Toggle Do Not Disturb")}
Shift + ${cmdOrCtrl} + M ${t.__("Toggle Do Not Disturb")}
Shift + ${cmdOrCtrl} + D ${t.__("Reset App Settings")}
${cmdOrCtrl} + L ${t.__("Log Out")}
${cmdOrCtrl} + H ${t.__("Hide Zulip")}
Option + ${cmdOrCtrl} + H ${t.__("Hide Others")}
${cmdOrCtrl} + Q ${t.__("Quit Zulip")}
${t.__("Edit Shortcuts")}
${cmdOrCtrl} + Z ${t.__("Undo")}
Shift + ${cmdOrCtrl} + Z ${t.__("Redo")}
${cmdOrCtrl} + Y ${t.__("Redo")}
${cmdOrCtrl} + X ${t.__("Cut")}
${cmdOrCtrl} + C ${t.__("Copy")}
${cmdOrCtrl} + V ${t.__("Paste")}
${cmdOrCtrl} + Shift + V ${t.__("Paste and Match Style")}
Shift + ${cmdOrCtrl} + V ${t.__("Paste and Match Style")}
${cmdOrCtrl} + A ${t.__("Select All")}
Control + ${cmdOrCtrl} + Space ${t.__("Emoji & Symbols")}
${t.__("View Shortcuts")}
${cmdOrCtrl} + R ${t.__("Reload")}
${cmdOrCtrl} + Shift + R ${t.__("Hard Reload")}
Shift + ${cmdOrCtrl} + R ${t.__("Hard Reload")}
F11 ${t.__("Toggle Full Screen")}
Control + ${cmdOrCtrl} + F ${t.__("Enter Full Screen")}
${cmdOrCtrl} + + ${t.__("Zoom In")}
${cmdOrCtrl} + = ${t.__("Zoom In")}
${cmdOrCtrl} + - ${t.__("Zoom Out")}
${cmdOrCtrl} + 0 ${t.__("Actual Size")}
${cmdOrCtrl} + Shift + S ${t.__("Toggle Sidebar")}
Shift + ${cmdOrCtrl} + S ${t.__("Toggle Sidebar")}
Option + ${cmdOrCtrl} + I ${t.__("Toggle DevTools for Zulip App")}
${cmdOrCtrl} + Shift + I ${t.__("Toggle DevTools for Zulip App")}
Option + ${cmdOrCtrl} + U ${t.__("Toggle DevTools for Active Tab")}
${cmdOrCtrl} + Shift + U ${t.__("Toggle DevTools for Active Tab")}
Ctrl + Tab ${t.__("Switch to Next Organization")}
Ctrl + Shift + Tab ${t.__("Switch to Previous Organization")}
${t.__("History Shortcuts")}
${cmdOrCtrl} + ${t.__("Back")}
Alt + ${t.__("Back")}
${cmdOrCtrl} + ${t.__("Forward")}
Alt + ${t.__("Forward")}
${t.__("Window Shortcuts")}
${cmdOrCtrl} + M ${t.__("Minimize")}
${cmdOrCtrl} + W ${t.__("Close")}
`.html; const link = "https://zulip.com/help/keyboard-shortcuts"; const externalCreateNewOrgElement = $root.querySelector("#open-hotkeys-link")!; externalCreateNewOrgElement.addEventListener("click", async () => { await LinkUtil.openBrowser(new URL(link)); }); }