Add a utility helper to log only when in dev mode

This commit is contained in:
Oliver 2025-12-06 23:12:31 -07:00
parent 857aca3423
commit 7340f981db

38
module/utils/Logger.mjs Normal file
View file

@ -0,0 +1,38 @@
import { __ID } from "../consts.mjs";
const augmentedProps = new Set([
`debug`,
`log`,
`error`,
`info`,
`warn`,
`group`,
`time`,
`timeEnd`,
`timeLog`,
`timeStamp`,
]);
function noop() {};
/** @type {null | boolean} */
let inDev = null;
/** @type {Console} */
export const Logger = new Proxy(console, {
get(target, prop, _receiver) {
if (inDev == null) {
inDev = game.modules.get(__ID).flags.inDev;
};
if (!inDev) {
return noop;
};
if (augmentedProps.has(prop)) {
return target[prop].bind(target, __ID, `|`);
};
return target[prop];
},
});