proste_logger 1.0.0 copy "proste_logger: ^1.0.0" to clipboard
proste_logger: ^1.0.0 copied to clipboard

Flutter ultra-long text log printing, displaying all log information on the output platform.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:proste_logger/proste_logger.dart';

class Demo {
  Demo(this.title);
  String title;

  @override
  String toString() {
    return 'title is $title';
  }
}

void main() {
  runApp(const Application());
  SystemChrome.setPreferredOrientations(
      [DeviceOrientation.portraitUp, DeviceOrientation.portraitDown]);
  const SystemUiOverlayStyle style = SystemUiOverlayStyle(
    statusBarColor: Colors.transparent,
  );
  SystemChrome.setSystemUIOverlayStyle(style);
}

class Application extends StatelessWidget {
  const Application({Key? key}) : super(key: key);
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Proste_Logger'),
        ),
        body: MyBody(),
      ),
    );
  }
}

class MyBody extends StatelessWidget {
  MyBody({Key? key}) : super(key: key);

  final logger = ProsteLogger();
  final demoMap = {
    'key': 'key',
    'val': 'msg',
    'cus': {'k': '123', 'd': Demo('555')},
  };
  final demoList = [
    1,
    2,
    3,
    4,
    5,
    '6',
    '7',
    [
      99,
      100,
      {'key': 'k'},
      Demo('1234'),
    ]
  ];

  @override
  Widget build(BuildContext context) {
    return Center(
      child: SingleChildScrollView(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            ElevatedButton(
              onPressed: () {
                logger.i('this is info msg');
              },
              child: const Text('info'),
            ),
            ElevatedButton(
              onPressed: () {
                logger.d('this is debug msg');
              },
              child: const Text('debug'),
            ),
            ElevatedButton(
              onPressed: () {
                logger.w('this is warning msg');
              },
              child: const Text('warn'),
            ),
            ElevatedButton(
              onPressed: () {
                logger.e('this is error msg');
              },
              child: const Text('error'),
            ),
            ElevatedButton(
              onPressed: () {
                logger.d('custom title', title: 'custom');
              },
              child: const Text('custom title'),
            ),
            ElevatedButton(
              onPressed: () {
                logger.i(
                  'this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,this is long text,',
                );
              },
              child: const Text('long text'),
            ),
            ElevatedButton(
              onPressed: () {
                logger.i('汉字内容', title: '汉字title');
              },
              child: const Text('中文汉字'),
            ),
            ElevatedButton(
              onPressed: () {
                logger.i(demoList);
              },
              child: const Text('List'),
            ),
            ElevatedButton(
              onPressed: () {
                logger.i(demoMap);
              },
              child: const Text('Map'),
            ),
            ElevatedButton(
              onPressed: () {
                final map = {"k": 'key', 'v': 'val'};
                final list = ['1', 2, 3, 4, '5'];

                logger
                  ..d(map)
                  ..i(list);
              },
              child: const Text('simple Map and List'),
            ),
            ElevatedButton(
              onPressed: () {
                const longText =
                    'longTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongTextlongText';

                final map = {'k': 'key', 'v': 'val', 'text': longText};
                final list = ['1', 2, 3, '4', longText];

                logger
                  ..d(map, format: true)
                  ..i(list, format: true);
              },
              child: const Text('long text map and list'),
            ),
            ElevatedButton(
              onPressed: () {
                logger.i(demoList, format: true);
              },
              child: const Text('format list'),
            ),
            ElevatedButton(
              onPressed: () {
                logger.i(demoMap, format: true);
              },
              child: const Text('format map'),
            ),
            ElevatedButton(
              onPressed: () {
                final privateLogger = ProsteLogger(
                  basic: const BasicConfig(
                    title: 'config',
                    limitLength: 100,
                  ),
                  colors: const ColorConfig(
                    debug: Colors.white,
                    info: Colors.pink,
                    warning: Colors.green,
                    error: Colors.yellow,
                  ),
                );

                privateLogger.d('this is debug log');
                privateLogger.i('this is info log');
                privateLogger.e('this is error log');
                privateLogger.w('this is warning log');
              },
              child: const Text('custom config'),
            ),
          ],
        ),
      ),
    );
  }
}
4
likes
140
pub points
45%
popularity

Publisher

unverified uploader

Flutter ultra-long text log printing, displaying all log information on the output platform.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (LICENSE)

Dependencies

ansicolor, flutter

More

Packages that depend on proste_logger