logResponse static method

void logResponse({
  1. required String url,
  2. required int statusCode,
  3. required Duration responseTime,
  4. dynamic body,
  5. String? requestId,
})

Implementation

static void logResponse({
  required String url,
  required int statusCode,
  required Duration responseTime,
  dynamic body,
  String? requestId,
}) {
  if (!_on) return;
  final ok = statusCode >= 200 && statusCode < 300;
  final c = ok ? _C.grn : _C.red;
  final icon = ok ? '✅' : '❌';
  final id = requestId != null ? ' ${_C.gray}[$requestId]${_C.rst}' : '';
  _line(c);
  _p('$c│${_C.rst} ${_C.bold}$c$icon RESPONSE$id${_C.rst}  ${_C.gray}${_ts()}${_C.rst}');
  _p('$c│${_C.rst}  ${_C.bold}Status: $statusCode${_C.rst}  ${_C.gray}⏱ ${responseTime.inMilliseconds}ms${_C.rst}');
  _p('$c│${_C.rst}  ${_C.blu}$url${_C.rst}');
  if (_payload && body != null) {
    _p('$c│${_C.rst}  ${_C.yel}⊳ Payload${_C.rst}');
    for (final l in _fmt(body).split('\n')) {
      _p('$c│${_C.rst}    ${_C.wht}$l${_C.rst}');
    }
  }
  _line(c);
}