bflutter 0.1.7 copy "bflutter: ^0.1.7" to clipboard
bflutter: ^0.1.7 copied to clipboard

discontinued
outdated

BeeSight Soft Flutter core package, bloc, caching, auth, network, lifecycle, utils

example/lib/main.dart

/*
 * Developed by Nhan Cao on 10/24/19 5:19 PM.
 * Last modified 10/9/19 4:38 PM.
 * Copyright (c) 2019 Beesight Soft. All rights reserved.
 */

import 'package:bflutter/bflutter.dart';
import 'package:bflutter/libs/bcache.dart';
import 'package:bflutter/provider/main_bloc.dart';
import 'package:bflutter/widgets/app_loading.dart';
import 'package:bflutter_poc/pages/login/login_screen.dart';
import 'package:flutter/material.dart';

void main() async {
  // @nhancv 2019-10-24: Start services later
  WidgetsFlutterBinding.ensureInitialized();
  // @nhancv 10/23/2019: Init bflutter caching
  await BCache().init();
  // @nhancv 10/23/2019: Run Application
  runApp(MyApp());
}

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  @override
  Widget build(BuildContext context) {
    /**
     * App flow:
     * - First, login
     * - Second, navigate to Home with auto fetch beesightsoft github info
     * - Then, navigate Search screen
     * - Last, navigate to Detail screen
     */
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: AppContent(),
    );
  }
}

class AppContent extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    WidgetsBinding.instance.addPostFrameCallback((_) => onAfterBuild(context));

    return Scaffold(
      backgroundColor: Colors.transparent,
      body: Stack(
        children: <Widget>[
          LoginScreen(),
          StreamBuilder(
            stream: MainBloc().appLoading.stream,
            builder: (context, snapshot) =>
                snapshot.hasData && snapshot.data ? AppLoading() : SizedBox(),
          ),
        ],
      ),
    );
  }

  // @nhancv 10/25/2019: After widget initialized.
  void onAfterBuild(BuildContext context) {
    MainBloc().initContext(context);
  }
}
2
likes
0
pub points
0%
popularity

Publisher

verified publishernhancv.com

BeeSight Soft Flutter core package, bloc, caching, auth, network, lifecycle, utils

Repository (GitHub)
View/report issues

License

unknown (LICENSE)

Dependencies

cached_network_image, connectivity, flutter, flutter_spinkit, http, path, rxdart, sqflite, uuid

More

Packages that depend on bflutter