import { __ID__ } from "../consts.mjs"; const augmentedProps = new Set([ `debug`, `log`, `error`, `info`, `warn`, `group`, `time`, `timeEnd`, `timeLog`, `timeStamp`, ]); const happensInProd = new Set([ `warn`, `error`, ]); 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 && !happensInProd.has(prop)) { return noop; }; if (augmentedProps.has(prop)) { return target[prop].bind(target, __ID__, `|`); }; return target[prop]; }, });