@neodx/log
Version:
A lightweight universal logging framework
45 lines (42 loc) • 1.19 kB
JavaScript
import {
i as identity,
r as readArguments,
c as createLoggerAutoFactory,
a as isEmptyObject
} from './_internal/read-arguments-BklHPmep.mjs';
import {
c as createLoggerFactory,
D as DEFAULT_LOGGER_PARAMS
} from './_internal/create-logger-factory-DktgHJZq.mjs';
export {
a as DEFAULT_LOGGER_LEVELS,
L as LOGGER_SILENT_LEVEL
} from './_internal/create-logger-factory-DktgHJZq.mjs';
const createLogger = createLoggerFactory({
defaultParams: {
...DEFAULT_LOGGER_PARAMS,
target: createConsoleTarget()
},
formatMessage: identity,
readArguments
});
const createAutoLogger = createLoggerAutoFactory(createLogger);
function createConsoleTarget(console = globalThis.console) {
return function consoleTarget({ error, meta, level, msgArgs = [], msgTemplate }) {
const consoleMethod = level in console ? console[level] : console.log;
const args = [msgTemplate, ...msgArgs];
if (!isEmptyObject(meta)) args.push(meta);
consoleMethod(...args);
if (error) {
console.error(error);
}
};
}
export {
DEFAULT_LOGGER_PARAMS,
createAutoLogger,
createConsoleTarget,
createLogger,
createLoggerFactory
};
//# sourceMappingURL=index.mjs.map