tav-ui
Version:
32 lines (27 loc) • 802 B
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var domUtils = require('../../utils/domUtils2.js');
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;
};
domUtils.on(el, "mousedown", (e) => {
if (e.button !== 0)
return;
startTime = Date.now();
domUtils.once(document, "mouseup", clear);
interval && clearInterval(interval);
interval = setInterval(handler, 100);
});
}
};
exports["default"] = RepeatClickDirective;
//# sourceMappingURL=repeatClick2.js.map