timer-stopwatch-dev

1.1.0 • Public • Published

timer-stopwatch

dependencies Status devDependencies Status

A stopwatch and countdown clock module for node.js, maintained.

Install

npm install timer-stopwatch

How to

The Gist

new Stopwatch([countDownMS], [options]);

Basic timers

var Stopwatch = require("timer-stopwatch");
 
var timer = new Stopwatch(60000); // A new countdown timer with 60 seconds
var stopwatch = new Stopwatch(); // A new count up stopwatch. Starts at 0.

Event Methods

// Fires every 50ms by default. Change setting the 'refreshRateMS' options
timer.onTime(function(time) {
    console.log(time.ms); // number of milliseconds past (or remaining);
    console.log(time.seconds); // number of seconds past (or remaining);
});
 
// Fires when the timer is done
timer.onDone(function() {
    console.log("Timer is complete");
});
 
// Fires when the timer is almost complete - default is 10 seconds remaining. Change with 'almostDoneMS' option
timer.onAlmostDone(function() {
    console.log("Timer is almost complete");
});
 
//These methods are chainable
timer
    .onTime(cb)
    .onAlmostDone(cb)
    .onDone(cb);

Timer Methods

timer.start();
timer.stop();
timer.startstop(); // Toggles the running state
timer.reset(countDownMS); // optional countDownMS to reset countdown to that many milliseconds
timer.getState() // Return 0, 1 or 2 if the timer is respectively stopped, running or complete
timer.isStopped()
timer.isRunning()
timer.isComplete()

Properties

timer.ms; // Number of milliseconds on the clock
timer.seconds; // Number of seconds on the clock

Options

var options = {
    refreshRateMS: 10, // How often the clock should be updated
    almostDoneMS: 10000 // When counting down - this event will fire with this many milliseconds remaining on the clock
};
 
var timer = new Stopwatch(60000, options);

Testing

Unit and Integration tests (requires dev dependencies)

npm test

Thanks to

@MickCrozier - The maintainer of the original package.

Other contributors:

  • @danhere
  • @connorjburton
  • @RafaelKaczmarczyk
  • @nitzo

License

MIT License

Package Sidebar

Install

npm i timer-stopwatch-dev

Weekly Downloads

5

Version

1.1.0

License

MIT

Last publish

Collaborators

  • jackymancs4