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.
53 lines
1.4 KiB
Dart
53 lines
1.4 KiB
Dart
import 'package:curved_navigation_bar/curved_navigation_bar.dart';
|
|
import 'package:flutter/material.dart';
|
|
import 'package:get/get.dart';
|
|
import 'package:inventory_app/home.dart';
|
|
import 'package:inventory_app/controllers/home_controller.dart';
|
|
import 'package:inventory_app/views/panoramic.dart';
|
|
import 'package:inventory_app/views/profile.dart';
|
|
|
|
class MyApp extends StatefulWidget {
|
|
const MyApp({super.key});
|
|
|
|
@override
|
|
State<MyApp> createState() => _MyAppState();
|
|
}
|
|
|
|
class _MyAppState extends State<MyApp> {
|
|
int _selectedIndex = 0;
|
|
late final HomeController controller;
|
|
|
|
@override
|
|
void initState() {
|
|
super.initState();
|
|
Get.lazyPut(() => HomeController());
|
|
}
|
|
|
|
final List<Widget> _screens = [
|
|
Home(), // Your main inventory/home screen
|
|
ProfilePage(), // Profile page
|
|
Panoramic(),
|
|
];
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return Scaffold(
|
|
body: IndexedStack(index: _selectedIndex, children: _screens),
|
|
bottomNavigationBar: CurvedNavigationBar(
|
|
backgroundColor: Colors.transparent,
|
|
color: Colors.blue,
|
|
onTap: (index) {
|
|
setState(() {
|
|
_selectedIndex = index;
|
|
});
|
|
},
|
|
items: const [
|
|
Icon(Icons.home, color: Colors.white),
|
|
Icon(Icons.person, color: Colors.white),
|
|
Icon(Icons.image, color: Colors.white),
|
|
],
|
|
),
|
|
);
|
|
}
|
|
}
|