UNPKG

@dbpiper/timer

Version:

Simple module to time your code JavaScript or TypeScript code, to see how long it took to run.

56 lines (41 loc) 1.59 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "FormattedDuration", { enumerable: true, get: function () { return _formattedDuration.default; } }); exports.default = void 0; var _moment = _interopRequireDefault(require("moment")); var _formattedDuration = _interopRequireDefault(require("./formatted-duration")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } class Timer { constructor() { _defineProperty(this, "_startTime", void 0); _defineProperty(this, "_stopTime", void 0); _defineProperty(this, "start", () => { this._startTime = (0, _moment.default)(); }); _defineProperty(this, "stop", () => { this._stopTime = (0, _moment.default)(); // get the amount of time that passed, in milliseconds const duration = this._stopTime.diff(this._startTime); return new _formattedDuration.default(duration); }); // give it a default start time, however this really should be done // by the user in their own code. Having this here though means that // it will at least be somewhat close to correct even without the user // doing anything. this.start(); } /** * Start running the timer. * * @memberof Timer */ } var _default = Timer; exports.default = _default;