Files
boc/aamos-api-v1/node_modules/global-agent/dist/Logger.js
T
Bernt 48ea61cdcc docs: add quixzoom-auth-core product to AAMOS
- Product documentation in docs/products/
- Updated MEMORY.md with product info
- quiXzoom Auth Core as AAMOS Identity product
2026-07-14 09:58:53 +00:00

57 lines
1.6 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.logger = exports.setLogger = void 0;
// oxlint-disable-next-line @typescript-eslint/no-empty-function
const noop = () => { };
const createNoopLogger = () => {
return {
child: () => {
return createNoopLogger();
},
debug: noop,
error: noop,
info: noop,
trace: noop,
warn: noop,
};
};
let currentLogger = createNoopLogger();
const setLogger = (newLogger) => {
currentLogger = newLogger;
};
exports.setLogger = setLogger;
const createDelegatingLogger = (getContext) => {
const getLogger = () => {
let targetLogger = currentLogger;
for (const [key, value] of Object.entries(getContext())) {
targetLogger = targetLogger.child({ [key]: value });
}
return targetLogger;
};
return {
child: (context) => {
return createDelegatingLogger(() => {
return { ...getContext(), ...context };
});
},
debug: (context, message) => {
getLogger().debug(context, message);
},
error: (context, message) => {
getLogger().error(context, message);
},
info: (context, message) => {
getLogger().info(context, message);
},
trace: (context, message) => {
getLogger().trace(context, message);
},
warn: (context, message) => {
getLogger().warn(context, message);
},
};
};
exports.logger = createDelegatingLogger(() => {
return { package: 'global-agent' };
});