@nudgeit/easing-ts
TypeScript icon, indicating that this package has built-in type declarations

0.0.3 • Public • Published

NPM License Build Status

NPM

Easing functions for JavaScript

Installation

npm install easing-ts.

This can be used either from a browser or on the server side.

API

EasingFunction

A function to transition from an initial value to a final one. It must be one of Easing.linear, Easing.linearTween, Easing.easeInQuad, Easing.easeOutQuad, Easing.easeInOutQuad, Easing.easeInCubic, Easing.easeOutCubic, Easing.easeInOutCubic, Easing.easeInQuart, Easing.easeOutQuart, Easing.easeInOutQuart, Easing.easeInQuint, Easing.easeOutQuint, Easing.easeInOutQuint, Easing.easeInSine, Easing.easeOutSine, Easing.easeInOutSine, Easing.easeInExpo, Easing.easeOutExpo, Easing.easeInOutExpo, Easing.easeInCirc, Easing.easeOutCirc, Easing.easeInOutCirc

Easing

  • constructor new Easing(startValue, endValue, startTime, endTime, easingFunction)
  • startValue the value associated with startTime
  • endValue the value associated with endTime
  • startTime the value of the first moment in change. It could be seconds, milliseconds, whatever, but you must keep it consistent.
  • endTime the value of the first moment in change.
  • easingFunction the easing function
  • .getValue(time)
  • returns the corresponding value for the given time. Time must be between startTime and endTime.

easing

It creates an observable that will emit at specified interval of times the values from the easing function Parameters

  • startValue the initial value
  • endValue the final value
  • delay the delay in milliseconds after which the Observable starts to emit values.
  • duration the total time duration in milliseconds for the Observable to emit all the values to reach to the endValue.
  • easingFunction the easing function
  • timeStep the duration of each step when an intermediate value is emitted

Example

import { Easing } from "@nudgeit/easing-ts";
// First create the easing function
const easing = new Easing(0, 100, 0, 1000, Easing.linear);
// get the value for the mid-time
let midValue = easing.getValue(500);

Testing

The testing is done using Jasmine. To run the tests just run npm test or jasmine.

How to make a new release

  1. Change the version number in package.json (if not already changed - check the version number against the latest release in Github)
  2. Create a new release in github with the same name for tag and title as the version number (e.g. 1.0.0). Do not forget to include the changelog in the release description.
  3. Run npm publish to publish the new version to npm

License

MIT

Package Sidebar

Install

npm i @nudgeit/easing-ts

Weekly Downloads

3

Version

0.0.3

License

MIT

Unpacked Size

552 kB

Total Files

223

Last publish

Collaborators

  • beradrian
  • cvali
  • octavian-sima