UNPKG

@coursebuilder/core

Version:

Core package for Course Builder

51 lines (49 loc) 1.58 kB
import { CourseBuilderError } from "./chunk-F32UWPXN.js"; import { __name } from "./chunk-VLQXSCFN.js"; // src/lib/utils/logger.ts var red = "\x1B[31m"; var yellow = "\x1B[33m"; var grey = "\x1B[38;5;246m"; var reset = "\x1B[0m"; var logger = { error(error) { const name = error instanceof CourseBuilderError ? error.type : error.name; console.error(`${red}[coursebuilder][error]${reset} ${name}: ${error.message}`); if (error.cause && typeof error.cause === "object" && "err" in error.cause && error.cause.err instanceof Error) { const { err, ...data } = error.cause; console.error(`${red}[coursebuilder][cause]${reset}:`, err.stack); if (data) console.error(`${red}[coursebuilder][details]${reset}:`, JSON.stringify(data, null, 2)); } else if (error.stack) { console.error(error.stack.replace(/.*/, "").substring(1)); } }, warn(code) { const url = `https://warnings.coursebuilder.dev#${code}`; console.warn(`${yellow}[coursebuilder][warn][${code}]${reset}`, `Read more: ${url}`); }, debug(message, metadata) { console.log(`${grey}[coursebuilder][debug]:${reset} ${message}`, JSON.stringify(metadata, null, 2)); } }; function setLogger(newLogger = {}, debug) { if (!debug) logger.debug = () => { }; if (newLogger.error) logger.error = newLogger.error; if (newLogger.warn) logger.warn = newLogger.warn; if (newLogger.debug) logger.debug = newLogger.debug; } __name(setLogger, "setLogger"); export { logger, setLogger }; //# sourceMappingURL=chunk-B73XG2UO.js.map