usehooks-ts
Version:
React hook library, ready to use, written in Typescript.
18 lines • 898 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var useBoolean_1 = require("../useBoolean");
var useCounter_1 = require("../useCounter");
var useInterval_1 = require("../useInterval");
function useCountdown(_a) {
var seconds = _a.seconds, interval = _a.interval, isIncrement = _a.isIncrement;
var _b = (0, useCounter_1.useCounter)(seconds), count = _b.count, increment = _b.increment, decrement = _b.decrement, resetCounter = _b.reset;
var _c = (0, useBoolean_1.useBoolean)(false), running = _c.value, start = _c.setTrue, stop = _c.setFalse;
var reset = function () {
stop();
resetCounter();
};
(0, useInterval_1.useInterval)(isIncrement ? increment : decrement, running ? interval : null);
return [count, { start: start, stop: stop, reset: reset }];
}
exports.default = useCountdown;
//# sourceMappingURL=useCountdown.js.map