UNPKG

framer-motion

Version:

A simple and powerful JavaScript animation library

21 lines (18 loc) 533 B
import { time } from '../frameloop/sync-time.mjs'; import { frame, cancelFrame } from '../frameloop/frame.mjs'; /** * Timeout defined in ms */ function delay(callback, timeout) { const start = time.now(); const checkElapsed = ({ timestamp }) => { const elapsed = timestamp - start; if (elapsed >= timeout) { cancelFrame(checkElapsed); callback(elapsed - timeout); } }; frame.read(checkElapsed, true); return () => cancelFrame(checkElapsed); } export { delay };