@log-rush/log-formatter
Version:
Parse/Format/Style colored logs
41 lines • 1.48 kB
JavaScript
import { LogFormatBuilder } from './builder/formatter';
import { Optimize1 } from './optimization/o1';
import { Optimize2 } from './optimization/o2';
import { SGRCommandParser } from './parsing/parser';
export var Optimization;
(function (Optimization) {
Optimization[Optimization["O1"] = 0] = "O1";
Optimization[Optimization["O2"] = 1] = "O2";
})(Optimization || (Optimization = {}));
var LogFormatter = /** @class */ (function () {
function LogFormatter(options) {
this.options = options;
this.parser = new SGRCommandParser();
}
LogFormatter.format = function (logs, format, optimization) {
var parser = new SGRCommandParser();
var ast = parser.parse(logs);
if (optimization === Optimization.O1) {
Optimize1(ast);
}
else if (optimization === Optimization.O2) {
Optimize1(ast);
Optimize2(ast);
}
return LogFormatBuilder.formatRaw(ast, format);
};
LogFormatter.prototype.format = function (logs) {
var ast = this.parser.parse(logs);
if (this.options.optimizations === Optimization.O1) {
Optimize1(ast);
}
else if (this.options.optimizations === Optimization.O2) {
Optimize1(ast);
Optimize2(ast);
}
return LogFormatBuilder.formatRaw(ast, this.options.format);
};
return LogFormatter;
}());
export { LogFormatter };
//# sourceMappingURL=LogFormatter.js.map