Files
supplements/lib/main.dart
2025-08-27 16:17:21 +02:00

59 lines
1.8 KiB
Dart

import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'providers/settings_provider.dart';
import 'providers/supplement_provider.dart';
import 'providers/sync_provider.dart';
import 'screens/home_screen.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MultiProvider(
providers: [
ChangeNotifierProvider(
create: (context) => SupplementProvider()..initialize(),
),
ChangeNotifierProvider(
create: (context) => SettingsProvider()..initialize(),
),
ChangeNotifierProxyProvider<SupplementProvider, SyncProvider>(
create: (context) => SyncProvider(context.read<SupplementProvider>())..initialize(),
update: (context, supplementProvider, syncProvider) =>
syncProvider ?? SyncProvider(supplementProvider)..initialize(),
),
],
child: Consumer<SettingsProvider>(
builder: (context, settingsProvider, child) {
return MaterialApp(
title: 'Supplements Tracker',
theme: ThemeData(
colorScheme: ColorScheme.fromSeed(
seedColor: Colors.blue,
brightness: Brightness.light,
),
useMaterial3: true,
),
darkTheme: ThemeData(
colorScheme: ColorScheme.fromSeed(
seedColor: Colors.blue,
brightness: Brightness.dark,
),
useMaterial3: true,
),
themeMode: settingsProvider.themeMode,
home: const HomeScreen(),
debugShowCheckedModeBanner: false,
);
},
),
);
}
}