motion-v
Version:
<h1 align="center"> <img width="35" height="35" alt="Motion logo" src="https://github.com/user-attachments/assets/00d6d1c3-72c4-4c2f-a664-69da13182ffc" /><br />Motion for Vue</h1>
35 lines (34 loc) • 794 B
JavaScript
function createLock(name) {
let lock = null;
return () => {
const openLock = () => {
lock = null;
};
if (lock === null) {
lock = name;
return openLock;
}
return false;
};
}
var globalHorizontalLock = createLock("dragHorizontal");
var globalVerticalLock = createLock("dragVertical");
function getGlobalLock(drag) {
let lock = false;
if (drag === "y") lock = globalVerticalLock();
else if (drag === "x") lock = globalHorizontalLock();
else {
const openHorizontal = globalHorizontalLock();
const openVertical = globalVerticalLock();
if (openHorizontal && openVertical) lock = () => {
openHorizontal();
openVertical();
};
else {
if (openHorizontal) openHorizontal();
if (openVertical) openVertical();
}
}
return lock;
}
export { getGlobalLock };