|
@@ -1,3 +1,8 @@
|
|
|
+/**
|
|
|
+ * Logger utility for TresJS
|
|
|
+ * @module logger
|
|
|
+ */
|
|
|
+
|
|
|
/* eslint-disable no-console */
|
|
|
export const isProd = import.meta.env.MODE === 'production'
|
|
|
|
|
@@ -5,13 +10,11 @@ const logPrefix = '[TresJS ▲ ■ ●] '
|
|
|
|
|
|
type OneOrMore<T> = { 0: T } & Array<T>
|
|
|
|
|
|
-interface LoggerComposition {
|
|
|
- logError: (...args: OneOrMore<any>) => void
|
|
|
- logWarning: (...args: OneOrMore<any>) => void
|
|
|
- logMessage: (name: string, value: any) => void
|
|
|
-}
|
|
|
-
|
|
|
-function logError(...args: OneOrMore<any>) {
|
|
|
+/**
|
|
|
+ * Logs an error message with the TresJS prefix
|
|
|
+ * @param args - Arguments to log
|
|
|
+ */
|
|
|
+export function logError(...args: OneOrMore<any>): void {
|
|
|
if (typeof args[0] === 'string') {
|
|
|
// NOTE: Don't break console string substitution
|
|
|
args[0] = logPrefix + args[0]
|
|
@@ -22,7 +25,11 @@ function logError(...args: OneOrMore<any>) {
|
|
|
console.error(...args)
|
|
|
}
|
|
|
|
|
|
-function logWarning(...args: OneOrMore<any>) {
|
|
|
+/**
|
|
|
+ * Logs a warning message with the TresJS prefix
|
|
|
+ * @param args - Arguments to log
|
|
|
+ */
|
|
|
+export function logWarning(...args: OneOrMore<any>): void {
|
|
|
if (typeof args[0] === 'string') {
|
|
|
// NOTE: Don't break console string substitution
|
|
|
args[0] = logPrefix + args[0]
|
|
@@ -33,16 +40,14 @@ function logWarning(...args: OneOrMore<any>) {
|
|
|
console.warn(...args)
|
|
|
}
|
|
|
|
|
|
-function logMessage(name: string, value: any) {
|
|
|
+/**
|
|
|
+ * Logs a message with the TresJS prefix (only in development mode)
|
|
|
+ * @param name - Name of the message
|
|
|
+ * @param value - Value to log
|
|
|
+ */
|
|
|
+export function logMessage(name: string, value: any): void {
|
|
|
if (!isProd) {
|
|
|
console.log(`${logPrefix} - ${name}:`, value)
|
|
|
}
|
|
|
}
|
|
|
/* eslint-enable no-console */
|
|
|
-export function useLogger(): LoggerComposition {
|
|
|
- return {
|
|
|
- logError,
|
|
|
- logWarning,
|
|
|
- logMessage,
|
|
|
- }
|
|
|
-}
|