@lesnoypudge/utils-react
Version:
lesnoypudge's utils-react
17 lines (16 loc) • 735 B
JavaScript
import { useConst } from "../useConst/useConst.js";
import { useEventListener } from "../useEventListener/useEventListener.js";
import { useFunction } from "../useFunction/useFunction.js";
import { hotKey } from "@lesnoypudge/utils-web";
const useHotKey = (element, keyCombo, handler, options) => {
const _handler = useFunction(handler);
const hotKeyHandler = useConst(() => {
const keyCombos = Array.isArray(keyCombo[0]) ? keyCombo : [keyCombo];
return hotKey.make(...keyCombos)(_handler, options == null ? void 0 : options.hotKeyOptions);
});
useEventListener(element, "keydown", hotKeyHandler, options == null ? void 0 : options.eventListenerOption);
};
export {
useHotKey
};
//# sourceMappingURL=useHotKey.js.map