UNPKG

onix-core

Version:
50 lines 2.28 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.formatTimer = void 0; const tslib_1 = require("tslib"); const padStart_1 = tslib_1.__importDefault(require("lodash/padStart")); const i18n_1 = require("../../i18n"); const timestampToInterval_1 = require("./timestampToInterval"); const formatTimer = (timestamp, short = true, isend) => { if (isNaN(timestamp)) { return i18n_1._("timer", "empty"); } const category = short ? "timer" : "datetime"; const interval = timestampToInterval_1.timestampToInterval(timestamp); const result = []; if (interval.invert || ((interval.d === 0) && (interval.h === 0) && (interval.i === 0) && (interval.s === 0) && (interval.f === 0))) { result.push(isend !== null && isend !== void 0 ? isend : i18n_1._("timer", "isend")); } else { if (interval.d > 0) { result.push(i18n_1._(category, "days", { d: interval.d })); if (interval.h > 0) { result.push(i18n_1._(category, "hours", { h: interval.h })); } } else { const f = (interval.h === 0) && (interval.i === 0) && (interval.s < 10) && (interval.f > 0) ? "." + padStart_1.default(interval.f.toString(), 3, "0") : ""; if (interval.h > 0) { result.push(padStart_1.default(interval.h.toString(), 2, "0") + ":" + padStart_1.default(interval.i.toString(), 2, "0") + ":" + padStart_1.default(interval.s.toString(), 2, "0") + f); } else if (interval.i > 0) { result.push(padStart_1.default(interval.i.toString(), 2, "0") + ":" + padStart_1.default(interval.s.toString(), 2, "0") + f); } else { if (f.length > 0) { result.push(padStart_1.default(interval.s.toString(), 2, "0") + f); } else { result.push(padStart_1.default(interval.i.toString(), 2, "0") + ":" + padStart_1.default(interval.s.toString(), 2, "0") + f); } } } } return result.join(" "); }; exports.formatTimer = formatTimer; //# sourceMappingURL=formatTimer.js.map