UNPKG

tweenkle

Version:

Lightweight tweening library for all your tweening and animation needs.

40 lines (30 loc) 1.05 kB
"use strict"; exports.__esModule = true; exports["default"] = exports.InOut = exports.Out = exports.In = void 0; var In = function In(time, beginningValue, changeValue, duration) { return time === 0 ? beginningValue : changeValue * Math.pow(2, 10 * (time / duration - 1)) + beginningValue; }; exports.In = In; var Out = function Out(time, beginningValue, changeValue, duration) { return time === duration ? beginningValue + changeValue : changeValue * (-Math.pow(2, -10 * time / duration) + 1) + beginningValue; }; exports.Out = Out; var InOut = function InOut(time, beginningValue, changeValue, duration) { if (time === 0) { return beginningValue; } if (time === duration) { return beginningValue + changeValue; } if ((time /= duration / 2) < 1) { return changeValue / 2 * Math.pow(2, 10 * (time - 1)) + beginningValue; } return changeValue / 2 * (-Math.pow(2, -10 * --time) + 2) + beginningValue; }; exports.InOut = InOut; var _default = { In: In, Out: Out, InOut: InOut }; exports["default"] = _default;