// Author: fengshengxiong
// Date: 2024/5/7
// Description: 日志打印

import 'package:logger/logger.dart';

final _logger = Logger(
  printer: PrettyPrinter(
    // 要显示的方法调用的数量
    methodCount: 0,
    // 如果提供了stacktrace，则方法调用的数量
    errorMethodCount: 8,
    // 输出的宽度
    lineLength: 160,
    // 丰富多彩的日志消息
    colors: true,
    // 是否打印表情符号
    printEmojis: true,
    // 日期时间格式
    dateTimeFormat: DateTimeFormat.onlyTime,
  ),
);

class LogUtil {
  static const String _tag = 'LogUtil';

  LogUtil.t(dynamic msg, {String tag = _tag}) {
    _logger.t('[$tag]: $msg');
  }

  LogUtil.d(dynamic msg, {String tag = _tag}) {
    _logger.d('[$tag]: $msg');
  }

  LogUtil.i(dynamic msg, {String tag = _tag}) {
    _logger.i('[$tag]: $msg');
  }

  LogUtil.w(dynamic msg, {String tag = _tag}) {
    _logger.w('[$tag]: $msg');
  }

  LogUtil.e(dynamic msg, {String tag = _tag}) {
    _logger.e('[$tag]: $msg');
  }

  LogUtil.f(dynamic msg, {String tag = _tag}) {
    _logger.f('[$tag]: $msg');
  }
}