lingo3d
Version:
Lingo3D is a React/Vue 3d game development framework that ships with a complete visual editor
28 lines • 900 B
JavaScript
import store from "@lincode/reactivity";
import { getSelectionTarget } from "./useSelectionTarget";
import { timelineDataPtr } from "../pointers/timelineDataPtr";
const [_setTimelineLayer, getTimelineLayer] = store(undefined);
export { getTimelineLayer };
let blocked = false;
let timeout;
export const setTimelineLayer = (val) => {
_setTimelineLayer(val);
blocked = true;
clearTimeout(timeout);
timeout = setTimeout(() => (blocked = false), 10);
};
getSelectionTarget(async (selectionTarget) => {
if (blocked)
return;
if (!selectionTarget) {
_setTimelineLayer(undefined);
return;
}
const [timelineData] = timelineDataPtr;
if (!timelineData || !(selectionTarget.uuid in timelineData)) {
_setTimelineLayer(undefined);
return;
}
_setTimelineLayer(selectionTarget.uuid);
});
//# sourceMappingURL=useTimelineLayer.js.map