@matrixai/timer

2.1.0 • Public • Published

js-timer

staging:pipeline status master:pipeline status

This library provides a reified Timer replacing the imperative setTimeout in JS. This is useful for keeping track of elapsed time and calculating how time is left. Think of this as a "Stopwatch".

This does not use Date.now(), it uses Performance API.

Installation

npm install --save @matrixai/timer

Usage

import { Timer } from '@matrixai/timer';

const t1 = new Timer(() => 2, 10);
const result = await t1;

Development

Run nix-shell, and once you're inside, you can use:

# install (or reinstall packages from package.json)
npm install
# build the dist
npm run build
# run the repl (this allows you to import from ./src)
npm run tsx
# run the tests
npm run test
# lint the source code
npm run lint
# automatically fix the source
npm run lintfix

Docs Generation

npm run docs

See the docs at: https://matrixai.github.io/js-timer/

Publishing

Publishing is handled automatically by the staging pipeline.

Prerelease:

# npm login
npm version prepatch --preid alpha # premajor/preminor/prepatch
git push --follow-tags

Release:

# npm login
npm version patch # major/minor/patch
git push --follow-tags

Manually:

# npm login
npm version patch # major/minor/patch
npm run build
npm publish --access public
git push
git push --tags

Package Sidebar

Install

npm i @matrixai/timer

Weekly Downloads

66

Version

2.1.0

License

Apache-2.0

Unpacked Size

37.8 kB

Total Files

13

Last publish

Collaborators

  • matrixai-bot
  • brianbotha74
  • cmcdragonkai