UNPKG

svelte-motion

Version:

Svelte animation library based on the React library framer-motion.

28 lines (25 loc) 926 B
/** based on framer-motion@4.0.3, Copyright (c) 2018 Framer B.V. */ import {fixed} from './fix-process-env'; import { interpolate } from 'popmotion'; var isCustomValueType = function (v) { return typeof v === "object" && v.mix; }; var getMixer = function (v) { return (isCustomValueType(v) ? v.mix : undefined); }; function transform() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var useImmediate = !Array.isArray(args[0]); var argOffset = useImmediate ? 0 : -1; var inputValue = args[0 + argOffset]; var inputRange = args[1 + argOffset]; var outputRange = args[2 + argOffset]; var options = args[3 + argOffset]; var interpolator = interpolate(inputRange, outputRange, Object.assign({ mixer: getMixer(outputRange[0]) }, options)); return useImmediate ? interpolator(inputValue) : interpolator; } export { transform };