UNPKG

@kcirtaptrick/framer-motion

Version:

A simple and powerful React animation library

18 lines (15 loc) 700 B
import { convertBoundingBoxToBox, transformBoxPoints } from '../geometry/conversion.mjs'; import { translateAxis } from '../geometry/delta-apply.mjs'; function measureViewportBox(instance, transformPoint) { return convertBoundingBoxToBox(transformBoxPoints(instance.getBoundingClientRect(), transformPoint)); } function measurePageBox(element, rootProjectionNode, transformPagePoint) { var viewportBox = measureViewportBox(element, transformPagePoint); var scroll = rootProjectionNode.scroll; if (scroll) { translateAxis(viewportBox.x, scroll.x); translateAxis(viewportBox.y, scroll.y); } return viewportBox; } export { measurePageBox, measureViewportBox };