@catladder/cli
Version:
Panter cli tool for cloud CI/CD and DevOps
68 lines • 2.77 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.logWarning = exports.logError = exports.logLines = void 0;
/**
* Logs multiple lines using the log method of the provided {@link LoggerCmdInstance}.
*
* Line items that are `null` or `undefined` are logged as empty lines.
*
* @param cmd - The logger instance to use. If `null` or `undefined`, `console` will be used.
*
* @example
* ```ts
* logLines(cmd, "line 1", "line 2", null, "line 3");
* logLines(cmd, ...linesArray); // arrays can be spread into the function
* logLines(cmd, linesArray); // but it will flatten the plain array for convenience
* ```
*/
function logLines(cmd = console, ...lines) {
for (const line of lines.flat()) {
(cmd !== null && cmd !== void 0 ? cmd : console).log(`${line !== null && line !== void 0 ? line : ""}`);
}
}
exports.logLines = logLines;
/**
* Logs an error message using the log method of the provided {@link LoggerCmdInstance}.
*
* Line items that are `null` or `undefined` are logged as empty lines.
*
* @example
* ```ts
* logError(cmd, "Message");
* logError(cmd, "Message", "Additional message");
* logError(cmd, "Message", "Additional message", "Another additional message line");
* logError(cmd, "Message", ...additionalMessages); // arrays can be spread into the function
* logError(cmd, "Message", additionalMessages); // but it will flatten the plain array for convenience
* ```
*/
const logError = (cmd = console, message, ...additionalMessages) => {
logLines(cmd, "", `[ERROR] 🙀 :${message}`);
if (additionalMessages === null || additionalMessages === void 0 ? void 0 : additionalMessages.length) {
logLines(cmd, ...additionalMessages.flat());
}
logLines(cmd, "");
};
exports.logError = logError;
/**
* Logs a warning message using the log method of the provided {@link LoggerCmdInstance}.
*
* Line items that are `null` or `undefined` are logged as empty lines.
*
* @example
* ```ts
* logWarning(cmd, "Message");
* logWarning(cmd, "Message", "Additional message");
* logWarning(cmd, "Message", "Additional message", "Another additional message line");
* logWarning(cmd, "Message", ...additionalMessages); // arrays can be spread into the function
* logWarning(cmd, "Message", additionalMessages); // but it will flatten the plain array for convenience
* ```
*/
const logWarning = (cmd = console, message, ...additionalMessages) => {
logLines(cmd, "", `[WARNING] ⚠️ : ${message}`);
if (additionalMessages === null || additionalMessages === void 0 ? void 0 : additionalMessages.length) {
logLines(cmd, ...additionalMessages.flat());
}
logLines(cmd, "");
};
exports.logWarning = logWarning;
//# sourceMappingURL=log.js.map