@studiometa/js-toolkit
Version:
A set of useful little bits of JavaScript to boost your project! 🚀
63 lines (62 loc) • 1.72 kB
JavaScript
import { createEaseOut, createEaseInOut } from "./createEases.js";
import { noopValue } from "../noop.js";
function easeInQuad(progress) {
return progress ** 2;
}
const easeOutQuad = createEaseOut(easeInQuad);
const easeInOutQuad = createEaseInOut(easeInQuad);
function easeInCubic(progress) {
return progress ** 3;
}
const easeOutCubic = createEaseOut(easeInCubic);
const easeInOutCubic = createEaseInOut(easeInCubic);
function easeInQuart(progress) {
return progress ** 4;
}
const easeOutQuart = createEaseOut(easeInQuart);
const easeInOutQuart = createEaseInOut(easeInQuart);
function easeInQuint(progress) {
return progress ** 5;
}
const easeOutQuint = createEaseOut(easeInQuint);
const easeInOutQuint = createEaseInOut(easeInQuint);
function easeInSine(progress) {
return progress === 1 ? 1 : -Math.cos(progress * Math.PI / 2) + 1;
}
const easeOutSine = createEaseOut(easeInSine);
const easeInOutSine = createEaseInOut(easeInSine);
function easeInCirc(progress) {
return -(Math.sqrt(1 - progress * progress) - 1);
}
const easeOutCirc = createEaseOut(easeInCirc);
const easeInOutCirc = createEaseInOut(easeInCirc);
function easeInExpo(progress) {
return progress === 0 ? 0 : 2 ** (10 * (progress - 1));
}
const easeOutExpo = createEaseOut(easeInExpo);
const easeInOutExpo = createEaseInOut(easeInExpo);
export {
easeInCirc,
easeInCubic,
easeInExpo,
easeInOutCirc,
easeInOutCubic,
easeInOutExpo,
easeInOutQuad,
easeInOutQuart,
easeInOutQuint,
easeInOutSine,
easeInQuad,
easeInQuart,
easeInQuint,
easeInSine,
noopValue as easeLinear,
easeOutCirc,
easeOutCubic,
easeOutExpo,
easeOutQuad,
easeOutQuart,
easeOutQuint,
easeOutSine
};
//# sourceMappingURL=ease.js.map