1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- import { t } from "../i18n";
- import { isDarwin } from "../keys";
- import { getShortcutKey } from "../utils";
- export type ShortcutName =
- | "cut"
- | "copy"
- | "paste"
- | "copyStyles"
- | "pasteStyles"
- | "selectAll"
- | "delete"
- | "duplicateSelection"
- | "sendBackward"
- | "bringForward"
- | "sendToBack"
- | "bringToFront"
- | "copyAsPng"
- | "copyAsSvg"
- | "group"
- | "ungroup"
- | "gridMode"
- | "zenMode"
- | "stats"
- | "addToLibrary";
- const shortcutMap: Record<ShortcutName, string[]> = {
- cut: [getShortcutKey("CtrlOrCmd+X")],
- copy: [getShortcutKey("CtrlOrCmd+C")],
- paste: [getShortcutKey("CtrlOrCmd+V")],
- copyStyles: [getShortcutKey("CtrlOrCmd+Alt+C")],
- pasteStyles: [getShortcutKey("CtrlOrCmd+Alt+V")],
- selectAll: [getShortcutKey("CtrlOrCmd+A")],
- delete: [getShortcutKey("Del")],
- duplicateSelection: [
- getShortcutKey("CtrlOrCmd+D"),
- getShortcutKey(`Alt+${t("shortcutsDialog.drag")}`),
- ],
- sendBackward: [getShortcutKey("CtrlOrCmd+[")],
- bringForward: [getShortcutKey("CtrlOrCmd+]")],
- sendToBack: [
- isDarwin
- ? getShortcutKey("CtrlOrCmd+Alt+[")
- : getShortcutKey("CtrlOrCmd+Shift+["),
- ],
- bringToFront: [
- isDarwin
- ? getShortcutKey("CtrlOrCmd+Alt+]")
- : getShortcutKey("CtrlOrCmd+Shift+]"),
- ],
- copyAsPng: [getShortcutKey("Shift+Alt+C")],
- copyAsSvg: [],
- group: [getShortcutKey("CtrlOrCmd+G")],
- ungroup: [getShortcutKey("CtrlOrCmd+Shift+G")],
- gridMode: [getShortcutKey("CtrlOrCmd+'")],
- zenMode: [getShortcutKey("Alt+Z")],
- stats: [],
- addToLibrary: [],
- };
- export const getShortcutFromShortcutName = (name: ShortcutName) => {
- const shortcuts = shortcutMap[name];
- // if multiple shortcuts availiable, take the first one
- return shortcuts && shortcuts.length > 0 ? shortcuts[0] : "";
- };
|