om_console 0.0.13 copy "om_console: ^0.0.13" to clipboard
om_console: ^0.0.13 copied to clipboard

A flutter console widget showing in the ui like vscode console

example/lib/main.dart

import 'dart:math';

import 'package:flutter/material.dart';
import 'package:testapp/om_console.dart';
import 'package:testapp/console_wrapper.dart';

void main() {
  Console.consoleLisitener(() {
    runApp(const MyApp());
  });
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return ConsoleWrapper(
      showConsole: true,
      child: MaterialApp(
          title: 'Flutter Demo',
          theme: ThemeData(
            colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
            useMaterial3: true,
          ),
          home: const MyHomePage(title: "My Flutter HomePage")),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key, required this.title});

  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  int _counter = 0;

  void _incrementCounter() {
    // setState(() {
    //   _counter++;
    // });
    Console.logHttp(
      url: "www.example.com",
      method: "POST",
      headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer wawXHzQw35NTwyJ9CSLVWKKd4vv4pNq2lFKrEZPp9EG",
        "X-API-Key": "12345",
        "X-Version": "1.0.0",
        "X-Platform": "flutter",
        "X-Locale": "en_US",
        "X-Screen-Width": "${MediaQuery.of(context).size.width}",
        "X-Screen-Height": "${5000}",
      },
      body: {
        "device_id": "device_id_123",
        "app_version": "1.0.0",
        "locale": "en_US",
        "platform": "flutter",
      },
      textColor: Colors.black,
      statusCode: 200,
      response: {
        "message": "Success",
        "message1": "Success",
        "message2": "Success",
        "message3": "Success",
        "message4": "Success",
        "message5": "Success",
        "message6": "Success",
        "message7": "Success",
        "message8": "Success",
        "message9": "Success",
        "message10": "Success",
        "message11": "Success",
        "message12": "Success",
        "message13": "Success",
        "message14": "Success",
        "message15": "Success",
        "message16": "Success",
        "message17": "Success",
        "message18": "Success",
        "message19": "Success",
        "message20": "Success",
        "message21": "Success",
        "message22": "Success",
        "message23": "Success",
        "message24": "Success",
        "message25": "Success",
        "message26": "Success",
        "message27": "Success",
        "message28": "Success",
        "message29": "Success",
        "message30": "Success",
        "message31": "Success",
        "message32": "Success",
        "message33": "Success",
        "message34": "Success",
      },
    );
    // for (int i = 0; i < 100; i++) {
    //   print(generateRandomString(500));
    // }
  }

  String generateRandomString(int length) {
    const characters =
        'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
    final random = Random();
    return List.generate(
            length, (index) => characters[random.nextInt(characters.length)])
        .join();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        backgroundColor: Theme.of(context).colorScheme.inversePrimary,
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            const Text(
              'You have pushed the button this many times:',
            ),
            Text(
              '$_counter',
              style: Theme.of(context).textTheme.headlineMedium,
            ),
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'Increment',
        child: const Icon(Icons.add),
      ),
    );
  }
}
6
likes
0
points
111
downloads

Publisher

unverified uploader

Weekly Downloads

A flutter console widget showing in the ui like vscode console

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter, flutter_localizations, localization, scrollable_positioned_list

More

Packages that depend on om_console