sharp-timer
TypeScript icon, indicating that this package has built-in type declarations

0.1.6 • Public • Published

SharpTimer

npm version npm Build Status Coverage Status codebeat badge Maintainability

Examples

Timer example

Initializing a new timer and specifying an iterval of 5 min, specify the interval in seconds:

let timer = new Timer(60 * 5);

Register an interval elapsing event handler:

timer.onIntervalElapsing(i => {
    console.log(`remaing time in seconds: ${i}`);
    console.log(`time is elapsing: ${timer.toString()}`);
});

Register an interval elapsed event handler.

timer.onIntervalElapsed(() => {
    timer.stop();
    console.log('time completely elapsed');
});

Finally, call the start instance method.

timer.start();

Stopwatch example

Initializing a new Stopwatch by calling the ctor

let stopwatch = new Stopwatch();

stopwatch.start();

or the static startNew function

let stopwatch = Stopwatch.startNew();

Remember to call dispose on the stopwatch after your done with that instance:

const intervalId = setInterval(() => {
    console.log(`elapsedMilliseconds: ${stopwatch.elapsedMilliseconds}`);
}, 10);
 
setTimeout(() => {
    clearInterval(intervalId);
    stopwatch.dispose();
}, 100);

Timespan example

Constructs a Timespan object by calling of its static functions

const {
    days,
    hours,
    minutes,
    seconds,
    milliseconds 
= Timespan.fromDays(3);

and access its instance properties

console.log(`milliseconds: ${milliseconds}`); // 259200000
console.log(`seconds: ${seconds}`); // 259200
console.log(`minutes: ${minutes}`); // 4320
console.log(`hours: ${hours}`); // 72
console.log(`days: ${days}`); // 3

Changes

v.0.1.*

  • timer feature
  • stopwatch feature
  • timespan feature
  • type definitions
  • tests for timer, stopwatch and timespan

License

This product is licensed under ther MIT license.


made with :heart: by me

Package Sidebar

Install

npm i sharp-timer

Weekly Downloads

19

Version

0.1.6

License

MIT

Unpacked Size

63.7 kB

Total Files

23

Last publish

Collaborators

  • afractal