if-logger
Version:
`if-logger` can set whether to log or not dynamically
98 lines • 4.18 kB
JavaScript
;
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
var __spreadArrays = (this && this.__spreadArrays) || function () {
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
r[k] = a[j];
return r;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
exports.__esModule = true;
exports.DEFAULT_OPTIONS = exports.consoleTransport = void 0;
var helper_1 = require("./helper");
var StopWatch_1 = __importDefault(require("./StopWatch"));
var TimeManager_1 = __importDefault(require("./TimeManager"));
var utils_1 = require("./utils");
var package_json_1 = __importDefault(require("../package.json"));
var setting_1 = require("./setting");
var console_transport_1 = __importDefault(require("./console-transport"));
exports.consoleTransport = console_transport_1["default"];
__exportStar(require("./helper"), exports);
__exportStar(require("./types"), exports);
__exportStar(require("./setting"), exports);
__exportStar(require("./utils"), exports);
exports.DEFAULT_OPTIONS = {
tagFilter: [],
levelFilter: [],
level: 'all',
tags: [],
transports: [console_transport_1["default"]],
returnValue: false,
format: utils_1.defaultFormat,
timeEndLimit: 1000
};
function createLogger(options) {
if (options === void 0) { options = exports.DEFAULT_OPTIONS; }
var logger = {
version: package_json_1["default"].version,
options: __assign(__assign(__assign({}, exports.DEFAULT_OPTIONS), { ifResult: true }), utils_1.trim(options)),
timeMgr: new TimeManager_1["default"](),
"if": function (pred) {
return createLogger(__assign(__assign({}, this.options), { pred: pred || Boolean(pred) }));
},
tags: function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
var tags = Array.isArray(args[0]) ? args[0] : args;
return createLogger(__assign(__assign({}, this.options), { tags: tags }));
},
addTags: function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
var tags = Array.isArray(args[0]) ? args[0] : args;
return createLogger(__assign(__assign({}, this.options), { tags: __spreadArrays(this.options.tags, tags) }));
},
"new": function (options) {
return createLogger(__assign(__assign({}, this.options), options));
}
};
Object.keys(setting_1.LOG_LEVEL).forEach(function (level) {
if (['off', 'all'].includes(level)) {
return;
}
logger[level] = helper_1.buildPrintLog(level, level);
logger[level].time = helper_1.buildPrintLog(level, 'time').bind(logger);
logger[level].timeEnd = helper_1.buildPrintLog(level, 'timeEnd').bind(logger);
logger[level].stopwatch = new StopWatch_1["default"](helper_1.buildPrintLog(level, level).bind(logger));
});
return logger;
}
exports["default"] = createLogger;
//# sourceMappingURL=index.js.map