UNPKG

element-plus

Version:

A Component Library for Vue 3

39 lines (37 loc) 1.37 kB
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); const require_runtime = require('../../../../_virtual/_rolldown/runtime.js'); let _vueuse_core = require("@vueuse/core"); //#region ../../packages/components/color-picker-panel/src/utils/draggable.ts let isDragging = false; function draggable(element, options) { if (!_vueuse_core.isClient) return; const moveFn = function(event) { options.drag?.(event); }; const upFn = function(event) { document.removeEventListener("mousemove", moveFn); document.removeEventListener("mouseup", upFn); document.removeEventListener("touchmove", moveFn); document.removeEventListener("touchend", upFn); document.onselectstart = null; document.ondragstart = null; isDragging = false; options.end?.(event); }; const downFn = function(event) { if (isDragging) return; document.onselectstart = () => false; document.ondragstart = () => false; document.addEventListener("mousemove", moveFn); document.addEventListener("mouseup", upFn); document.addEventListener("touchmove", moveFn); document.addEventListener("touchend", upFn); isDragging = true; options.start?.(event); }; element.addEventListener("mousedown", downFn); element.addEventListener("touchstart", downFn, { passive: false }); } //#endregion exports.draggable = draggable; //# sourceMappingURL=draggable.js.map