Line data Source code
1 : import 'package:matrix/matrix_api_lite.dart';
2 :
3 : extension PrintLogs on LogEvent {
4 38 : void printOut() {
5 38 : var logsStr = title;
6 38 : if (exception != null) {
7 80 : logsStr += ' - ${exception.toString()}';
8 : }
9 38 : if (stackTrace != null) {
10 60 : logsStr += '\n${stackTrace.toString()}';
11 : }
12 76 : if (Logs().nativeColors) {
13 38 : switch (level) {
14 38 : case Level.wtf:
15 1 : logsStr = '\x1B[31m!!!CRITICAL!!! $logsStr\x1B[0m';
16 : break;
17 38 : case Level.error:
18 17 : logsStr = '\x1B[31m$logsStr\x1B[0m';
19 : break;
20 37 : case Level.warning:
21 36 : logsStr = '\x1B[33m$logsStr\x1B[0m';
22 : break;
23 35 : case Level.info:
24 35 : logsStr = '\x1B[32m$logsStr\x1B[0m';
25 : break;
26 33 : case Level.debug:
27 33 : logsStr = '\x1B[34m$logsStr\x1B[0m';
28 : break;
29 33 : case Level.verbose:
30 : break;
31 : }
32 : }
33 : // ignore: avoid_print
34 76 : print('[Matrix] $logsStr');
35 : }
36 : }
|