superfly-timeline
Version:
Resolver for defining objects with temporal boolean logic relationships on a timeline
34 lines • 1.07 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.addCapsToResuming = exports.joinCaps = void 0;
function joinCaps(...caps) {
const capMap = {};
for (let i = 0; i < caps.length; i++) {
const caps2 = caps[i];
if (caps2) {
for (let j = 0; j < caps2.length; j++) {
const cap2 = caps2[j];
capMap[cap2.id] = cap2;
}
}
}
return Object.values(capMap);
}
exports.joinCaps = joinCaps;
function addCapsToResuming(instance, ...caps) {
const capsToAdd = [];
const joinedCaps = joinCaps(...caps);
for (let i = 0; i < joinedCaps.length; i++) {
const cap = joinedCaps[i];
if (cap.end !== null && instance.end !== null && cap.end > instance.end) {
capsToAdd.push({
id: cap.id,
start: 0,
end: cap.end,
});
}
}
instance.caps = joinCaps(instance.caps, capsToAdd);
}
exports.addCapsToResuming = addCapsToResuming;
//# sourceMappingURL=cap.js.map