Implement Writer as interface

This commit is contained in:
2024-05-15 21:15:02 +02:00
parent 1f4e08ed8c
commit 6dff689ed7
+13 -8
View File
@@ -1,15 +1,12 @@
import logger, {Writer, Level, type WriterOptions} from 'log'
import logger, {type Writer, Level, type WriterOptions} from 'log'
export * as log from 'log'
export default logger
export class Console extends Writer {
public constructor(options: WriterOptions) {
super(options)
}
protected write(level: Level, ...data: any[]) : void {
Console.get_logger(level)(...data)
}
export class Console implements Writer {
public constructor(
readonly _options: WriterOptions
) {}
private static get_logger(level: Level) {
switch (level) {
@@ -20,4 +17,12 @@ export class Console extends Writer {
case Level.ERROR: return console.error
}
}
log(level: Level, ...data: any[]): void {
Console.get_logger(level)(...data)
}
get options() : WriterOptions {
return this._options;
}
}