import { Directive } from "vue"; import { makeHotkey } from "../scripts/hotkey"; export default { mounted(el, binding) { el._hotkey_global = binding.modifiers.global === true; el._keyHandler = makeHotkey(binding.value); if (el._hotkey_global) { document.addEventListener("keydown", el._keyHandler); } else { el.addEventListener("keydown", el._keyHandler); } }, unmounted(el) { if (el._hotkey_global) { document.removeEventListener("keydown", el._keyHandler); } else { el.removeEventListener("keydown", el._keyHandler); } }, } as Directive;