toConsoleString method

String toConsoleString()

Implementation

String toConsoleString() {
  final buffer = StringBuffer();
  final hasPath = location != null && location!.isNotEmpty;

  if (hasPath) {
    buffer.write('[');
    if (icon != null) {
      buffer.write('$icon ');
    }
    buffer.write(location);
    if (showTimestamp) {
      final isoString = timestamp.toLocal().toIso8601String();
      final timeStr = isoString.substring(11, 23);
      buffer.write(' @$timeStr');
    }
    buffer.write('] ');
  }

  if (message != null) {
    buffer.write(message.toString().trim());
  }

  if (showTags && tags.isNotEmpty) {
    final tagStrings = tags.map((s) => '#${_unmangleSymbol(s)}').join(' ');
    buffer.write(' $tagStrings');
  }

  if (showId) {
    buffer.write(' <$id>');
  }

  return buffer.toString().trim();
}