UNPKG

@randajan/simple-lib

Version:

Supersimple start for developing custom js library

28 lines (26 loc) 953 B
// src/tools/logger.js import chalkNative from "chalk"; var chalkProps = Object.getOwnPropertyNames(Object.getPrototypeOf(chalkNative)).filter((v) => v !== "constructor"); var Logger = class _Logger extends Function { constructor(formater, chalkInit) { super(); const chalk = chalkInit || chalkNative; const log = (...msgs) => { console.log(chalk(formater(msgs))); }; const self = Object.setPrototypeOf(log.bind(), new.target.prototype); for (const prop of chalkProps) { Object.defineProperty(self, prop, { get: (_) => new _Logger(formater, chalk[prop]), enumerable: false }); } return self; } }; var logger = (...prefixes) => { const now = (_) => (/* @__PURE__ */ new Date()).toLocaleTimeString("cs-CZ"); prefixes = prefixes.filter((v) => !!v).join(" "); return new Logger((msgs) => `${prefixes} | ${now()} | ${msgs.join(" ")}`); }; export { logger }; //# sourceMappingURL=chunk-KF2SC7L5.js.map