Updates
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
import { ccol } from "../console-colors";
|
||||
|
||||
const LogTypes = ["error", "warning"] as const;
|
||||
|
||||
type Param = {
|
||||
/**
|
||||
* data to be logged.
|
||||
*/
|
||||
log: any;
|
||||
/**
|
||||
* Log Title. Could be name of function or name of variable
|
||||
*/
|
||||
title?: string;
|
||||
/**
|
||||
* Label for the log
|
||||
*/
|
||||
label?: string;
|
||||
/**
|
||||
* Log type. `error` or `warning` or default
|
||||
*/
|
||||
type?: (typeof LogTypes)[number];
|
||||
/**
|
||||
* Whether to add a time stamp
|
||||
*/
|
||||
addTime?: boolean;
|
||||
};
|
||||
|
||||
export default function debugLog({ log, label, title, type, addTime }: Param) {
|
||||
const logType = (() => {
|
||||
switch (type) {
|
||||
case "error":
|
||||
return ccol.FgRed;
|
||||
|
||||
case "warning":
|
||||
return ccol.FgYellow;
|
||||
|
||||
default:
|
||||
return ccol.FgGreen;
|
||||
}
|
||||
})();
|
||||
|
||||
let logTxt = `${logType}DEBUG${ccol.Reset}:::`;
|
||||
|
||||
const date = new Date();
|
||||
const time = date.toLocaleTimeString("en-US", {
|
||||
hour: "numeric",
|
||||
minute: "numeric",
|
||||
second: "numeric",
|
||||
hour12: true,
|
||||
});
|
||||
|
||||
const logTime = `${date.toLocaleDateString()}][${time}`;
|
||||
|
||||
if (addTime) logTxt = `${ccol.BgWhite}[${logTime}]${ccol.Reset} ` + logTxt;
|
||||
if (title) logTxt += `${ccol.FgBlue}${title}${ccol.Reset}::`;
|
||||
if (label)
|
||||
logTxt += `${ccol.FgWhite}${ccol.Bright}${label}${ccol.Reset} =>`;
|
||||
|
||||
console.log(logTxt, log);
|
||||
}
|
||||
Reference in New Issue
Block a user