UNPKG

@bitrix24/b24jssdk

Version:

Bitrix24 REST API JavaScript SDK

1 lines 3.57 kB
{"version":3,"file":"logger-factory.mjs","sources":["../../../src/logger/logger-factory.ts"],"sourcesContent":["import type { LoggerInterface } from '../types/logger'\nimport { LogLevel } from '../types/logger'\nimport { Logger } from './logger'\nimport { NullLogger } from './null-logger'\nimport { ConsoleV2Handler } from './handler'\n\n// eslint-disable-next-line @typescript-eslint/no-extraneous-class\nexport class LoggerFactory {\n static createNullLogger(): LoggerInterface {\n return NullLogger.create()\n }\n\n static createForBrowser(channel: string, isDevMode: boolean = false): LoggerInterface {\n if (isDevMode) {\n return LoggerFactory.createForBrowserDevelopment(channel)\n }\n\n return LoggerFactory.createForBrowserProduction(channel)\n }\n\n static createForBrowserDevelopment(channel: string, level: LogLevel = LogLevel.DEBUG): LoggerInterface {\n const logger = new Logger(channel)\n const handler = new ConsoleV2Handler(level)\n logger.pushHandler(handler)\n return logger\n }\n\n static createForBrowserProduction(channel: string, level: LogLevel = LogLevel.ERROR): LoggerInterface {\n const logger = new Logger(channel)\n const handler = new ConsoleV2Handler(level)\n logger.pushHandler(handler)\n return logger\n }\n\n static async forcedLog(\n logger: LoggerInterface,\n action: 'debug' | 'info' | 'notice' | 'warning' | 'error' | 'critical' | 'alert' | 'emergency',\n message: string,\n context: Record<string, any>\n ): Promise<void> {\n if (typeof globalThis !== 'undefined' && 'vitest' in globalThis) {\n return\n }\n\n if (logger instanceof NullLogger) {\n switch (action) {\n case 'debug':\n console.log(message, context)\n return\n case 'info':\n case 'notice':\n console.info(message, context)\n return\n case 'warning':\n console.warn(message, context)\n return\n default:\n console.error(message, context)\n return\n }\n }\n\n return logger[action](message, context)\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAOO,MAAM,aAAA,CAAc;AAAA,EAP3B;AAO2B,IAAA,MAAA,CAAA,IAAA,EAAA,eAAA,CAAA;AAAA;AAAA,EACzB,OAAO,gBAAA,GAAoC;AACzC,IAAA,OAAO,WAAW,MAAA,EAAO;AAAA,EAC3B;AAAA,EAEA,OAAO,gBAAA,CAAiB,OAAA,EAAiB,SAAA,GAAqB,KAAA,EAAwB;AACpF,IAAA,IAAI,SAAA,EAAW;AACb,MAAA,OAAO,aAAA,CAAc,4BAA4B,OAAO,CAAA;AAAA,IAC1D;AAEA,IAAA,OAAO,aAAA,CAAc,2BAA2B,OAAO,CAAA;AAAA,EACzD;AAAA,EAEA,OAAO,2BAAA,CAA4B,OAAA,EAAiB,KAAA,GAAkB,SAAS,KAAA,EAAwB;AACrG,IAAA,MAAM,MAAA,GAAS,IAAI,MAAA,CAAO,OAAO,CAAA;AACjC,IAAA,MAAM,OAAA,GAAU,IAAI,gBAAA,CAAiB,KAAK,CAAA;AAC1C,IAAA,MAAA,CAAO,YAAY,OAAO,CAAA;AAC1B,IAAA,OAAO,MAAA;AAAA,EACT;AAAA,EAEA,OAAO,0BAAA,CAA2B,OAAA,EAAiB,KAAA,GAAkB,SAAS,KAAA,EAAwB;AACpG,IAAA,MAAM,MAAA,GAAS,IAAI,MAAA,CAAO,OAAO,CAAA;AACjC,IAAA,MAAM,OAAA,GAAU,IAAI,gBAAA,CAAiB,KAAK,CAAA;AAC1C,IAAA,MAAA,CAAO,YAAY,OAAO,CAAA;AAC1B,IAAA,OAAO,MAAA;AAAA,EACT;AAAA,EAEA,aAAa,SAAA,CACX,MAAA,EACA,MAAA,EACA,SACA,OAAA,EACe;AACf,IAAA,IAAI,OAAO,UAAA,KAAe,WAAA,IAAe,QAAA,IAAY,UAAA,EAAY;AAC/D,MAAA;AAAA,IACF;AAEA,IAAA,IAAI,kBAAkB,UAAA,EAAY;AAChC,MAAA,QAAQ,MAAA;AAAQ,QACd,KAAK,OAAA;AACH,UAAA,OAAA,CAAQ,GAAA,CAAI,SAAS,OAAO,CAAA;AAC5B,UAAA;AAAA,QACF,KAAK,MAAA;AAAA,QACL,KAAK,QAAA;AACH,UAAA,OAAA,CAAQ,IAAA,CAAK,SAAS,OAAO,CAAA;AAC7B,UAAA;AAAA,QACF,KAAK,SAAA;AACH,UAAA,OAAA,CAAQ,IAAA,CAAK,SAAS,OAAO,CAAA;AAC7B,UAAA;AAAA,QACF;AACE,UAAA,OAAA,CAAQ,KAAA,CAAM,SAAS,OAAO,CAAA;AAC9B,UAAA;AAAA;AACJ,IACF;AAEA,IAAA,OAAO,MAAA,CAAO,MAAM,CAAA,CAAE,OAAA,EAAS,OAAO,CAAA;AAAA,EACxC;AACF;;;;"}