UNPKG

motion-canvas-multitrack

Version:

A plug and play audio plugin for Motion Canvas

37 lines 1.4 kB
export const element_contains_pointer = (r, e) => { const { clientX: x, clientY: y } = e; return x >= r.left && x <= r.right && y >= r.top && y <= r.bottom; }; export const value_to_percent = (audio, total) => { return (audio * 100) / total; }; export const map = (value, source_range_min, source_range_max, target_range_min, target_range_max) => { const target_range = target_range_max - target_range_min; const source_range = source_range_max - source_range_min; return (value - source_range_min) * target_range / source_range + target_range_min; }; export const throttle = (func, limit) => { let in_throttle = false; return function (...args) { if (!in_throttle) { func.apply(this, args); in_throttle = true; setTimeout(() => in_throttle = false, limit); } }; }; export const clamp = (n, min, max) => { return Math.max(min, Math.min(n, max)); }; export const array_min_max = (arr) => { const result = arr.reduce((acc, val) => { acc[0] = (acc[0] === undefined || val < acc[0]) ? val : acc[0]; acc[1] = (acc[1] === undefined || val > acc[1]) ? val : acc[1]; return acc; }, []); return { min: result[0], max: result[1] }; }; export const format_duration = (seconds) => { return new Date(seconds * 1000).toISOString().substring(14, 19); }; //# sourceMappingURL=utils.js.map