Files
2025-12-12 20:23:28 +08:00

31 lines
769 B
TypeScript

import { ENV } from './config'
type Level = 'log' | 'info' | 'warn' | 'error' | 'debug'
const isRelease = ENV === 'release'
function emit(level: Exclude<Level, 'debug'>, args: any[]): void {
if (isRelease && level !== 'error') return
if (level === 'log') {
console.log(...args)
} else if (level === 'info') {
console.info(...args)
} else if (level === 'warn') {
console.warn(...args)
} else {
console.error(...args)
}
}
const logger = {
log: (...args: any[]) => emit('log', args),
info: (...args: any[]) => emit('info', args),
warn: (...args: any[]) => emit('warn', args),
error: (...args: any[]) => emit('error', args),
debug: (...args: any[]) => emit('log', ['[DEBUG]', ...args]),
}
export default logger
export { logger }