UNPKG

tav-ui

Version:
28 lines (25 loc) 709 B
import { on, once } from '../../utils/domUtils2.mjs'; const RepeatClickDirective = { beforeMount(el, binding) { let interval = null; let startTime = 0; const handler = () => binding?.value(); const clear = () => { if (Date.now() - startTime < 100) { handler(); } interval && clearInterval(interval); interval = null; }; on(el, "mousedown", (e) => { if (e.button !== 0) return; startTime = Date.now(); once(document, "mouseup", clear); interval && clearInterval(interval); interval = setInterval(handler, 100); }); } }; export { RepeatClickDirective as default }; //# sourceMappingURL=repeatClick2.mjs.map