cookie-ai-cli
Version:
A command-line interface tool designed to bridge the gap between natural language processing and command-line operations.
51 lines • 1.7 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.debug = void 0;
const colors_1 = require("./colors");
function debugLog(message, level = "log", overridePrefix) {
const prefix = overridePrefix || "[cookie-ai-cli]";
const prefixColor = "\x1b[32m";
const messagePrefix = (() => {
switch (level) {
case "error":
return colors_1.colors.red;
case "warn":
return colors_1.colors.yellow;
case "info":
return colors_1.colors.cyan;
default:
return "";
}
})();
const reset = "\x1b[0m"; // Resets the color
const levelPrefix = (() => {
switch (level) {
case "error":
return colors_1.colors.red;
case "warn":
return colors_1.colors.yellow;
default:
return "";
}
})();
// eslint-disable-next-line no-console -- this is a utility for logging
console[level](`${prefixColor}${prefix}${reset}${levelPrefix}${reset} ${messagePrefix}${typeof message === "object"
? `\n${JSON.stringify(message, null, 2)}`
: message}${reset}`);
}
const debug = {
log: (message, overridePrefix) => {
debugLog(message, "log", overridePrefix);
},
error: (message, overridePrefix) => {
debugLog(message, "error", overridePrefix);
},
warn: (message, overridePrefix) => {
debugLog(message, "warn", overridePrefix);
},
info: (message, overridePrefix) => {
debugLog(message, "info", overridePrefix);
},
};
exports.debug = debug;
//# sourceMappingURL=debug-log.js.map
;