remotion
Version:
Make videos programmatically
46 lines (45 loc) • 1.75 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getEffectiveVisualModeValue = exports.resolveDragOverrideValue = void 0;
const interpolate_keyframed_status_1 = require("./interpolate-keyframed-status");
const resolveDragOverrideValue = ({ dragOverrideValue, frame, }) => {
if (dragOverrideValue === undefined) {
return { type: 'none' };
}
if (dragOverrideValue.type === 'static') {
return { type: 'resolved', value: dragOverrideValue.value };
}
if (frame === null) {
return { type: 'none' };
}
const interpolated = (0, interpolate_keyframed_status_1.interpolateKeyframedStatus)({
frame,
status: dragOverrideValue.status,
});
if (interpolated === null) {
return { type: 'none' };
}
return { type: 'resolved', value: interpolated };
};
exports.resolveDragOverrideValue = resolveDragOverrideValue;
const getEffectiveVisualModeValue = ({ codeValue, dragOverrideValue, defaultValue, frame = null, shouldResortToDefaultValueIfUndefined = false, }) => {
const dragOverride = (0, exports.resolveDragOverrideValue)({
dragOverrideValue,
frame,
});
if (dragOverride.type === 'resolved' && dragOverride.value !== undefined) {
return dragOverride.value;
}
if (codeValue.status === 'keyframed' && frame !== null) {
return (0, interpolate_keyframed_status_1.interpolateKeyframedStatus)({
frame,
status: codeValue,
});
}
if (codeValue.codeValue === undefined &&
shouldResortToDefaultValueIfUndefined) {
return defaultValue;
}
return codeValue.codeValue;
};
exports.getEffectiveVisualModeValue = getEffectiveVisualModeValue;