2026-06-11 10:53:32 +08:00
|
|
|
import { Message } from 'cordis'
|
2026-06-22 06:11:00 +08:00
|
|
|
import { ConsoleExporter as Base } from './shared.ts'
|
2026-06-11 10:53:32 +08:00
|
|
|
|
|
|
|
|
/** Re-export shared console exporter config and base implementation. */
|
2026-06-22 06:11:00 +08:00
|
|
|
export * from './shared.ts'
|
2026-06-11 10:53:32 +08:00
|
|
|
|
|
|
|
|
/** Browser console exporter that dispatches to native console methods. */
|
|
|
|
|
export class ConsoleExporter extends Base {
|
|
|
|
|
export(message: Message) {
|
|
|
|
|
const prefix = `[${message.type[0].toUpperCase()}] ${message.name}`
|
|
|
|
|
const method = message.type === 'error' ? 'error' : message.type === 'warn' ? 'warn' : 'log'
|
|
|
|
|
// eslint-disable-next-line no-console
|
|
|
|
|
console[method](prefix, ...message.args)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export default ConsoleExporter
|