Telegram Web K with changes to work inside I2P https://web.telegram.i2p/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

44 lines
1.2 KiB

export enum LogLevels {
log = 1,
warn = 2,
error = 4,
debug = 8
};
var _logTimer = Date.now();
function dT() {
return '[' + ((Date.now() - _logTimer) / 1000).toFixed(3) + ']'
}
export function logger(prefix: string, level = LogLevels.log | LogLevels.warn | LogLevels.error) {
// @ts-ignore
if(process.env.NODE_ENV == 'production'/* || true */) {
level = LogLevels.error;
}
function Log(...args: any[]) {
return level & LogLevels.log && console.log(dT(), '[' + prefix + ']:', ...args);
}
Log.warn = function(...args: any[]) {
return level & LogLevels.warn && console.warn(dT(), '[' + prefix + ']:', ...args);
};
Log.info = function(...args: any[]) {
return level & LogLevels.log && console.info(dT(), '[' + prefix + ']:', ...args);
};
Log.error = function(...args: any[]) {
return level & LogLevels.error && console.error(dT(), '[' + prefix + ']:', ...args);
};
Log.trace = function(...args: any[]) {
return level & LogLevels.log && console.trace(dT(), '[' + prefix + ']:', ...args);
};
Log.debug = function(...args: any[]) {
return level & LogLevels.debug && console.debug(dT(), '[' + prefix + ']:', ...args);
};
return Log;
};