UNPKG

simple-aos

Version:

Simple AOS - Animate on scroll library

39 lines (30 loc) 1.08 kB
/* Clearing variables */ import { getPositionIn, getPositionOut } from './offsetCalculator'; import getInlineOption from './getInlineOption'; const prepare = ($elements, options) => { $elements.forEach((el, i) => { const mirror = getInlineOption(el.node, 'mirror', options.mirror); const once = getInlineOption(el.node, 'once', options.once); const id = getInlineOption(el.node, 'id'); const customClassNames = options.useClassNames && el.node.getAttribute('data-aos'); const animatedClassNames = [options.animatedClassName] .concat(customClassNames ? customClassNames.split(' ') : []) .filter(className => typeof className === 'string'); if (options.initClassName) { el.node.classList.add(options.initClassName); } el.position = { in: getPositionIn(el.node, options.offset, options.anchorPlacement), out: mirror && getPositionOut(el.node, options.offset) }; el.options = { once, mirror, animatedClassNames, id }; }); return $elements; }; export default prepare;