mirror of
https://github.com/vleeuwenmenno/supplements.git
synced 2025-09-11 18:29:12 +02:00
feat: adds RDA for intake of vitamins and certain elements based on
canada health values
This commit is contained in:
@@ -3,16 +3,23 @@ import 'package:flutter/material.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
import 'providers/settings_provider.dart';
|
||||
import 'providers/supplement_provider.dart';
|
||||
import 'providers/simple_sync_provider.dart';
|
||||
import 'providers/supplement_provider.dart';
|
||||
import 'screens/home_screen.dart';
|
||||
import 'screens/profile_setup_screen.dart';
|
||||
|
||||
void main() {
|
||||
runApp(const MyApp());
|
||||
void main() async {
|
||||
WidgetsFlutterBinding.ensureInitialized();
|
||||
final settingsProvider = SettingsProvider();
|
||||
await settingsProvider.initialize();
|
||||
|
||||
runApp(MyApp(settingsProvider: settingsProvider));
|
||||
}
|
||||
|
||||
class MyApp extends StatelessWidget {
|
||||
const MyApp({super.key});
|
||||
final SettingsProvider settingsProvider;
|
||||
|
||||
const MyApp({super.key, required this.settingsProvider});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
@@ -21,8 +28,8 @@ class MyApp extends StatelessWidget {
|
||||
ChangeNotifierProvider(
|
||||
create: (context) => SupplementProvider()..initialize(),
|
||||
),
|
||||
ChangeNotifierProvider(
|
||||
create: (context) => SettingsProvider()..initialize(),
|
||||
ChangeNotifierProvider.value(
|
||||
value: settingsProvider,
|
||||
),
|
||||
ChangeNotifierProvider(
|
||||
create: (context) => SimpleSyncProvider(),
|
||||
@@ -34,7 +41,7 @@ class MyApp extends StatelessWidget {
|
||||
// and initialize auto-sync integration
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||
final supplementProvider = context.read<SupplementProvider>();
|
||||
|
||||
|
||||
// Set up sync completion callback
|
||||
syncProvider.setOnSyncCompleteCallback(() async {
|
||||
if (kDebugMode) {
|
||||
@@ -46,10 +53,10 @@ class MyApp extends StatelessWidget {
|
||||
print('SupplementsLog: UI data refreshed after sync');
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// Initialize auto-sync service
|
||||
syncProvider.initializeAutoSync(settingsProvider);
|
||||
|
||||
|
||||
// Set up auto-sync callback for data changes
|
||||
supplementProvider.setOnDataChangedCallback(() {
|
||||
syncProvider.triggerAutoSyncIfEnabled();
|
||||
@@ -73,7 +80,9 @@ class MyApp extends StatelessWidget {
|
||||
useMaterial3: true,
|
||||
),
|
||||
themeMode: settingsProvider.themeMode,
|
||||
home: const HomeScreen(),
|
||||
home: (settingsProvider.age == null || settingsProvider.gender == null)
|
||||
? const ProfileSetupScreen()
|
||||
: const HomeScreen(),
|
||||
debugShowCheckedModeBanner: false,
|
||||
);
|
||||
},
|
||||
|
Reference in New Issue
Block a user