Sha256: e28f0fc19c869877ca3f009698aee3e5fb967e19e45cacc7c836ae291f0648a7
Contents?: true
Size: 829 Bytes
Versions: 26
Compression:
Stored size: 829 Bytes
Contents
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useKeypress = useKeypress; const use_ref_mjs_1 = require('./use-ref.js'); const use_effect_mjs_1 = require('./use-effect.js'); const hook_engine_mjs_1 = require('./hook-engine.js'); function useKeypress(userHandler) { const signal = (0, use_ref_mjs_1.useRef)(userHandler); signal.current = userHandler; (0, use_effect_mjs_1.useEffect)((rl) => { let ignore = false; const handler = (0, hook_engine_mjs_1.withUpdates)((_input, event) => { if (ignore) return; void signal.current(event, rl); }); rl.input.on('keypress', handler); return () => { ignore = true; rl.input.removeListener('keypress', handler); }; }, []); }
Version data entries
26 entries across 26 versions & 1 rubygems