Initial commit
This commit is contained in:
17
node_modules/framer-motion/dist/es/easing/utils/create-generator-easing.mjs
generated
vendored
Normal file
17
node_modules/framer-motion/dist/es/easing/utils/create-generator-easing.mjs
generated
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
import { calcGeneratorDuration, maxGeneratorDuration } from '../../animation/generators/utils/calc-duration.mjs';
|
||||
import { millisecondsToSeconds } from '../../utils/time-conversion.mjs';
|
||||
|
||||
/**
|
||||
* Create a progress => progress easing function from a generator.
|
||||
*/
|
||||
function createGeneratorEasing(options, scale = 100, createGenerator) {
|
||||
const generator = createGenerator({ ...options, keyframes: [0, scale] });
|
||||
const duration = Math.min(calcGeneratorDuration(generator), maxGeneratorDuration);
|
||||
return {
|
||||
type: "keyframes",
|
||||
ease: (progress) => generator.next(duration * progress).value / scale,
|
||||
duration: millisecondsToSeconds(duration),
|
||||
};
|
||||
}
|
||||
|
||||
export { createGeneratorEasing };
|
||||
8
node_modules/framer-motion/dist/es/easing/utils/get-easing-for-segment.mjs
generated
vendored
Normal file
8
node_modules/framer-motion/dist/es/easing/utils/get-easing-for-segment.mjs
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
import { wrap } from '../../utils/wrap.mjs';
|
||||
import { isEasingArray } from './is-easing-array.mjs';
|
||||
|
||||
function getEasingForSegment(easing, i) {
|
||||
return isEasingArray(easing) ? easing[wrap(0, easing.length, i)] : easing;
|
||||
}
|
||||
|
||||
export { getEasingForSegment };
|
||||
3
node_modules/framer-motion/dist/es/easing/utils/is-bezier-definition.mjs
generated
vendored
Normal file
3
node_modules/framer-motion/dist/es/easing/utils/is-bezier-definition.mjs
generated
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
const isBezierDefinition = (easing) => Array.isArray(easing) && typeof easing[0] === "number";
|
||||
|
||||
export { isBezierDefinition };
|
||||
5
node_modules/framer-motion/dist/es/easing/utils/is-easing-array.mjs
generated
vendored
Normal file
5
node_modules/framer-motion/dist/es/easing/utils/is-easing-array.mjs
generated
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
const isEasingArray = (ease) => {
|
||||
return Array.isArray(ease) && typeof ease[0] !== "number";
|
||||
};
|
||||
|
||||
export { isEasingArray };
|
||||
37
node_modules/framer-motion/dist/es/easing/utils/map.mjs
generated
vendored
Normal file
37
node_modules/framer-motion/dist/es/easing/utils/map.mjs
generated
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
import { invariant, noop } from 'motion-utils';
|
||||
import { cubicBezier } from '../cubic-bezier.mjs';
|
||||
import { easeIn, easeInOut, easeOut } from '../ease.mjs';
|
||||
import { circIn, circInOut, circOut } from '../circ.mjs';
|
||||
import { backIn, backInOut, backOut } from '../back.mjs';
|
||||
import { anticipate } from '../anticipate.mjs';
|
||||
import { isBezierDefinition } from './is-bezier-definition.mjs';
|
||||
|
||||
const easingLookup = {
|
||||
linear: noop,
|
||||
easeIn,
|
||||
easeInOut,
|
||||
easeOut,
|
||||
circIn,
|
||||
circInOut,
|
||||
circOut,
|
||||
backIn,
|
||||
backInOut,
|
||||
backOut,
|
||||
anticipate,
|
||||
};
|
||||
const easingDefinitionToFunction = (definition) => {
|
||||
if (isBezierDefinition(definition)) {
|
||||
// If cubic bezier definition, create bezier curve
|
||||
invariant(definition.length === 4, `Cubic bezier arrays must contain four numerical values.`);
|
||||
const [x1, y1, x2, y2] = definition;
|
||||
return cubicBezier(x1, y1, x2, y2);
|
||||
}
|
||||
else if (typeof definition === "string") {
|
||||
// Else lookup from table
|
||||
invariant(easingLookup[definition] !== undefined, `Invalid easing type '${definition}'`);
|
||||
return easingLookup[definition];
|
||||
}
|
||||
return definition;
|
||||
};
|
||||
|
||||
export { easingDefinitionToFunction };
|
||||
Reference in New Issue
Block a user