private constructor()

in src/libs/logger.ts [36:76]


  private constructor() {
    const { combine, timestamp, label, printf } = format;
    const customFormat = printf(
      ({ level, message, label: printLabel, timestamp: printTimestamp }) => {
        let colorizedLevel: string;
        switch (level) {
          case 'error':
            colorizedLevel = chalk.bgRed(' ERROR ');
            return `❌ ${colorizedLevel} ${chalk.red(message)}`;
          case 'verbose':
            colorizedLevel = chalk.magenta(level);
            break;
          case 'debug':
            colorizedLevel = chalk.grey(level);
            break;
          case 'silly':
            colorizedLevel = chalk.white(level);
            break;
          default:
            colorizedLevel = level;
        }
        return `${printTimestamp} [${chalk.green(
          printLabel
        )}] ${colorizedLevel}: ${message}`;
      }
    );

    this.logger = createLogger({
      level: 'info',
      format: combine(label({ label: 'Esa' }), timestamp(), customFormat),
      transports: [
        new transports.Console(),
        new transports.File({
          filename: path.join(os.homedir(), '.asea-logs/esa-debug.log'),
          level: 'error'
        })
      ]
    });

    this.spinner = ora('Loading...');
  }