openapi-modifier
Version:
This package allows you to automate the process of modifying OpenAPI specifications by applying a set of predefined rules
39 lines (38 loc) • 1.66 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.LoggerFactory = void 0;
const composite_logger_1 = require("./composite-logger");
const console_logger_1 = require("./console-logger");
const temp_file_logger_1 = require("./temp-file-logger");
class LoggerFactory {
static createLogger({ minLevel, name, verbose, }) {
const consoleLoggerTypeLevelMap = {
[LoggerFactory.typeLevelMap.trace]: console_logger_1.ConsoleLogger.typeLevelMap.trace,
[LoggerFactory.typeLevelMap['not-important-warning']]: console_logger_1.ConsoleLogger.typeLevelMap['not-important-warning'],
[LoggerFactory.typeLevelMap.info]: console_logger_1.ConsoleLogger.typeLevelMap.info,
[LoggerFactory.typeLevelMap.warning]: console_logger_1.ConsoleLogger.typeLevelMap.warning,
[LoggerFactory.typeLevelMap.error]: console_logger_1.ConsoleLogger.typeLevelMap.error,
[LoggerFactory.typeLevelMap.success]: console_logger_1.ConsoleLogger.typeLevelMap.success,
};
const compositeLogger = new composite_logger_1.CompositeLogger([]);
compositeLogger.addLogger(new console_logger_1.ConsoleLogger({
name,
minLevel: consoleLoggerTypeLevelMap[minLevel],
}));
if (verbose) {
compositeLogger.addLogger(new temp_file_logger_1.TempFileLogger({
name,
}));
}
return compositeLogger;
}
}
exports.LoggerFactory = LoggerFactory;
LoggerFactory.typeLevelMap = {
trace: 0,
info: 1,
'not-important-warning': 2,
warning: 3,
error: 4,
success: 5,
};