{"version":3,"file":"winston-adapter.mjs","sources":["../../../../src/logger/handler/winston-adapter.ts"],"sourcesContent":["import type { Handler, HandlerOptions, LogRecord, Formatter, LogLevelName } from '../../types/logger'\nimport { LogLevel } from '../../types/logger'\nimport { AbstractHandler } from './abstract-handler'\n\nexport interface WinstonAdapterOptions extends HandlerOptions {\n  winstonLogger: any\n}\n\n/**\n * Adapter for Winston\n *\n * @memo Winston has its own formatter\n * @link https://github.com/winstonjs/winston\n */\nexport class WinstonAdapter extends AbstractHandler implements Handler {\n  private winstonLogger: any\n\n  constructor(\n    level: LogLevel = LogLevel.DEBUG,\n    options: WinstonAdapterOptions\n  ) {\n    const opts = {\n      bubble: true,\n      ...options\n    }\n\n    super(level, opts.bubble)\n    this.winstonLogger = opts.winstonLogger\n  }\n\n  public override setFormatter(_formatter: Formatter): void {\n    // Consola has its own formatter\n  }\n\n  public override getFormatter(): Formatter | null {\n    return null\n  }\n\n  public override async handle(record: LogRecord): Promise<boolean> {\n    const levelMap: Record<LogLevelName, string> = {\n      DEBUG: 'debug',\n      INFO: 'info',\n      NOTICE: 'notice',\n      WARNING: 'warn',\n      ERROR: 'error',\n      CRITICAL: 'error',\n      ALERT: 'error',\n      EMERGENCY: 'error'\n    }\n\n    const winstonLevel = levelMap[record.levelName] || levelMap.INFO\n\n    this.winstonLogger.log({\n      level: winstonLevel,\n      channel: record.channel,\n      message: record.message,\n      context: record.context,\n      extra: record.extra,\n      timestamp: record.timestamp\n    })\n\n    return true\n  }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;AAcO,MAAM,uBAAuB,eAAA,CAAmC;AAAA,EAdvE;AAcuE,IAAA,MAAA,CAAA,IAAA,EAAA,gBAAA,CAAA;AAAA;AAAA,EAC7D,aAAA;AAAA,EAER,WAAA,CACE,KAAA,GAAkB,QAAA,CAAS,KAAA,EAC3B,OAAA,EACA;AACA,IAAA,MAAM,IAAA,GAAO;AAAA,MACX,MAAA,EAAQ,IAAA;AAAA,MACR,GAAG;AAAA,KACL;AAEA,IAAA,KAAA,CAAM,KAAA,EAAO,KAAK,MAAM,CAAA;AACxB,IAAA,IAAA,CAAK,gBAAgB,IAAA,CAAK,aAAA;AAAA,EAC5B;AAAA,EAEgB,aAAa,UAAA,EAA6B;AAAA,EAE1D;AAAA,EAEgB,YAAA,GAAiC;AAC/C,IAAA,OAAO,IAAA;AAAA,EACT;AAAA,EAEA,MAAsB,OAAO,MAAA,EAAqC;AAChE,IAAA,MAAM,QAAA,GAAyC;AAAA,MAC7C,KAAA,EAAO,OAAA;AAAA,MACP,IAAA,EAAM,MAAA;AAAA,MACN,MAAA,EAAQ,QAAA;AAAA,MACR,OAAA,EAAS,MAAA;AAAA,MACT,KAAA,EAAO,OAAA;AAAA,MACP,QAAA,EAAU,OAAA;AAAA,MACV,KAAA,EAAO,OAAA;AAAA,MACP,SAAA,EAAW;AAAA,KACb;AAEA,IAAA,MAAM,YAAA,GAAe,QAAA,CAAS,MAAA,CAAO,SAAS,KAAK,QAAA,CAAS,IAAA;AAE5D,IAAA,IAAA,CAAK,cAAc,GAAA,CAAI;AAAA,MACrB,KAAA,EAAO,YAAA;AAAA,MACP,SAAS,MAAA,CAAO,OAAA;AAAA,MAChB,SAAS,MAAA,CAAO,OAAA;AAAA,MAChB,SAAS,MAAA,CAAO,OAAA;AAAA,MAChB,OAAO,MAAA,CAAO,KAAA;AAAA,MACd,WAAW,MAAA,CAAO;AAAA,KACnB,CAAA;AAED,IAAA,OAAO,IAAA;AAAA,EACT;AACF;;;;"}