ig_module_flutter 0.0.7 ig_module_flutter: ^0.0.7 copied to clipboard
Itgee Module for Flutter
import 'dart:developer';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:get/get.dart';
import 'package:ig_module_flutter/ig_module_flutter.dart';
import 'package:ig_module_flutter_example/config/config.dart';
import 'package:ig_module_flutter_example/page/error.dart';
import 'package:ig_module_flutter_example/page/loading.dart';
import 'package:ig_module_flutter_example/page/main.dart';
// main
Future<void> main() async {
runApp(const Main());
}
class Main extends StatelessWidget {
const Main({
super.key,
});
@override
Widget build(BuildContext context) {
return MApplication(
option: MApplicationOption(
applicationName: "example",
environment: "local-dev",
configPath: "asset/config",
plugin: MApplicationPluginOption(
grpcClient: true,
gps: true,
sound: true,
),
),
configLoader: ConfigWrap().load,
pages: (appContext) => [
GetPage(
name: "/",
page: () => MainPage(
appContext: appContext,
),
),
],
loadingPage: (appContext, theme) => LoadingPage(appContext: appContext, theme: theme),
errorPage: (appContext, theme) => ErrorPage(appContext: appContext, theme: theme),
initialRoute: "/",
initState: () {
SystemChrome.setSystemUIOverlayStyle(
const SystemUiOverlayStyle(
statusBarColor: Colors.black,
statusBarIconBrightness: Brightness.light,
),
);
},
setup: (appContext) async {
final exampleConfig = config;
log(exampleConfig!.applicationConfig.environmentConfig.environment.toString());
await Future.delayed(const Duration(seconds: 1), () {});
},
);
}
}