UNPKG

508 BJavaScriptView Raw
1class Logger {
2 constructor(transport = console) {
3 this.transport = transport;
4 }
5
6 transport(logger) {
7 this.transport = logger;
8 }
9
10 warn(data) {
11 this.transport.warn(data);
12 }
13
14 log(data) {
15 this.transport.log(data);
16 }
17
18 debug(data) {
19 this.transport.debug(data);
20 }
21
22 error(data) {
23 this.transport.error(data);
24 }
25
26 static instance(logger = console) {
27 return new Logger(logger);
28 }
29}
30
31module.exports = Logger;