UNPKG

framer-motion

Version:

A simple and powerful JavaScript animation library

24 lines (21 loc) 676 B
import { observeTimeline } from 'motion-dom'; import { scrollInfo } from './track.mjs'; import { getTimeline } from './utils/get-timeline.mjs'; /** * If the onScroll function has two arguments, it's expecting * more specific information about the scroll from scrollInfo. */ function isOnScrollWithInfo(onScroll) { return onScroll.length === 2; } function attachToFunction(onScroll, options) { if (isOnScrollWithInfo(onScroll)) { return scrollInfo((info) => { onScroll(info[options.axis].progress, info); }, options); } else { return observeTimeline(onScroll, getTimeline(options)); } } export { attachToFunction };