Adds the Flutter inventory app source, cleaned up for a shared repo: generic package name, no hardcoded ERP endpoints (moved to gitignored local config), no dead auth code, no debug logging of session data.
64 lines
2.0 KiB
Dart
64 lines
2.0 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:flutter/services.dart';
|
|
import 'package:get/get.dart';
|
|
import 'package:get_storage/get_storage.dart';
|
|
import 'package:inventory_app/auth.dart';
|
|
import 'package:inventory_app/controllers/theme_controller.dart';
|
|
import 'package:inventory_app/controllers/home_controller.dart';
|
|
|
|
import 'controllers/user_controller.dart';
|
|
|
|
void main() async {
|
|
WidgetsFlutterBinding.ensureInitialized();
|
|
await GetStorage.init();
|
|
|
|
SystemChrome.setEnabledSystemUIMode(SystemUiMode.immersiveSticky);
|
|
debugDisableShadows = true;
|
|
|
|
final themeController = Get.put(ThemeController()); // inject globally
|
|
Get.lazyPut(() => HomeController());
|
|
Get.put(UserController()); // Register it ONE TIME globally
|
|
|
|
runApp(MyApp(themeController: themeController));
|
|
}
|
|
|
|
class MyApp extends StatelessWidget {
|
|
final ThemeController themeController;
|
|
|
|
const MyApp({super.key, required this.themeController});
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return GetMaterialApp(
|
|
debugShowCheckedModeBanner: false,
|
|
title: 'Inventory App',
|
|
themeMode: themeController.theme,
|
|
theme: ThemeData(
|
|
brightness: Brightness.light,
|
|
primarySwatch: Colors.blue,
|
|
scaffoldBackgroundColor: const Color(0xFFF6F8FC),
|
|
cardColor: Colors.white,
|
|
appBarTheme: const AppBarTheme(
|
|
backgroundColor: Colors.white,
|
|
foregroundColor: Colors.black87,
|
|
elevation: 0,
|
|
titleTextStyle: TextStyle(color: Colors.black),
|
|
),
|
|
),
|
|
darkTheme: ThemeData(
|
|
brightness: Brightness.dark,
|
|
primarySwatch: Colors.blue,
|
|
scaffoldBackgroundColor: const Color(0xFF121212),
|
|
cardColor: const Color(0xFF1E1E1E),
|
|
appBarTheme: const AppBarTheme(
|
|
backgroundColor: Color(0xFF1E1E1E),
|
|
foregroundColor: Colors.white,
|
|
elevation: 0,
|
|
titleTextStyle: TextStyle(color: Colors.white),
|
|
),
|
|
),
|
|
home: const Auth(),
|
|
);
|
|
}
|
|
}
|