diff --git a/app/composables/useKeyDown.ts b/app/composables/useKeyDown.ts new file mode 100644 index 0000000..cd400b1 --- /dev/null +++ b/app/composables/useKeyDown.ts @@ -0,0 +1,15 @@ +export type KeyDownCallback = (key: string) => void; + +export const useKeyDown = (callback: KeyDownCallback) => { + const handleKeyDown = (event: KeyboardEvent) => { + callback(event.key); + }; + + onMounted(() => { + window.addEventListener("keydown", handleKeyDown); + }); + + onUnmounted(() => { + window.removeEventListener("keydown", handleKeyDown); + }); +};