typescript-assistant
Version:
Combines and integrates professional Typescript tools into your project
27 lines (25 loc) • 667 B
text/typescript
export interface Logger {
log(category: string, message: string): void;
error(category: string, message: string): void;
}
/* eslint-disable no-console */
export let createConsoleLogger = (): Logger => {
let currentCategory: string;
let setCategory = (category: string) => {
if (category !== currentCategory) {
console.log(`${category}:`);
currentCategory = category;
}
};
return {
log: (category, message) => {
setCategory(category);
console.log(` ${message}`);
},
error: (category, message) => {
setCategory(category);
console.error(`! ${message}`);
},
};
};
/* tslint:enable:no-console */