@rawcmd/typewriters
Version:
Collection of typewriters for styling command-line messages for Rawcmd.
38 lines • 1.19 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const utils_1 = require("@rawcmd/utils");
const text_1 = require("@rawcmd/text");
const text_2 = require("./text");
const row_1 = require("./row");
function logTypewriter(options) {
options = Object.assign({ totalWidth: 80 }, options);
const writeDim = text_2.textTypewriter({
dim: true,
});
return (message, namespace, date) => {
if (!utils_1.toString(message)) {
return '';
}
console.log('X', date, date || new Date());
const data = [
writeDim([
(date || new Date()).toISOString(),
namespace,
].filter((d) => !!d).join(' ')),
message,
].filter((d) => !!d);
const bodyTypewriter = row_1.rowTypewriter([
{
index: 0,
width: text_1.sizeText(data[0]),
},
{
index: 1,
width: options.totalWidth - text_1.sizeText(data[0]),
},
]);
return bodyTypewriter(data);
};
}
exports.logTypewriter = logTypewriter;
//# sourceMappingURL=log.js.map