UNPKG

@tencentcloud/roomkit-web-vue3

Version:

<h1 align="center"> TUIRoomKit</h1> Conference (TUIRoomKit) is a product suitable for multi-person audio and video conversation scenarios such as business meetings, webinars, and online education. By integrating this product, you can add room management,

69 lines (64 loc) 1.86 kB
/* * @Description: logger * @Date: 2022-04-11 19:39:55 * @LastEditTime: 2022-04-12 11:37:24 */ import { EUserEventNames } from './logger-constants'; import { LogLevelType, LogContext, getLogPrefix } from './logger-utils'; let currentLogLevel = LogLevelType.LOG_LEVEL_DEBUG; const logger = { debug(...args: any[]) { if (currentLogLevel <= LogLevelType.LOG_LEVEL_DEBUG) { console.debug(`${getLogPrefix(LogContext.RENDER)}`, ...args); } }, log(...args: any[]) { if (currentLogLevel <= LogLevelType.LOG_LEVEL_LOG) { console.log(`${getLogPrefix(LogContext.RENDER)}`, ...args); } }, info(...args: any[]) { if (currentLogLevel <= LogLevelType.LOG_LEVEL_INFO) { console.info(`${getLogPrefix(LogContext.RENDER)}`, ...args); } }, warn(...args: any[]) { if (currentLogLevel <= LogLevelType.LOG_LEVEL_WARN) { console.warn(`${getLogPrefix(LogContext.RENDER)}`, ...args); } }, error(...args: any[]) { if (currentLogLevel <= LogLevelType.LOG_LEVEL_ERROR) { console.error(`${getLogPrefix(LogContext.RENDER)}`, ...args); } }, setLevel(newLevel: number) { if ( newLevel >= LogLevelType.LOG_LEVEL_DEBUG && newLevel <= LogLevelType.LOG_LEVEL_NON_LOGGING ) { console.log( `${getLogPrefix( LogContext.RENDER )} set log level from ${currentLogLevel} to ${newLevel}` ); currentLogLevel = newLevel; if ((window as any).electron?.ipcRenderer) { (window as any).electron.ipcRenderer.send( EUserEventNames.ON_CHANGE_LOG_LEVEL, newLevel ); } } else { console.error( `${getLogPrefix( LogContext.RENDER )} logger.setLevel() invalid params:${newLevel}` ); } }, getLevel() { return currentLogLevel; }, }; export default logger;