import { Logger } from '../domain/use-cases/logger' ; import { Injectable } from '../domain/di/injectable' ; import { Inject } from '../domain/di/inject' ; import { TYPES } from '../types' ; @ Injectable ( ) export class ConsoleLogger implements Logger { constructor ( @ Inject ( TYPES . WINDOW ) private readonly window ) { } object < T > ( object ) { this . window . console . dir ( object ) ; } groupEnd ( ) { this . window . console . groupEnd ( ) ; } info ( message ) { this . window . console . info ( message ) ; } group ( label ) { this . window . console . group ( label ) ; } log ( message ) { this . window . console . log ( message ) ; } }