@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
JavaScript
;
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;