52 lines
1.5 KiB
Dart
52 lines
1.5 KiB
Dart
import "package:flutter/material.dart";
|
|
import "package:provider/provider.dart";
|
|
|
|
import "src/local_state.dart";
|
|
import "src/project_store.dart";
|
|
import "ui/app.dart";
|
|
import "ui/providers/chat_provider.dart";
|
|
import "ui/providers/cost_provider.dart";
|
|
import "ui/providers/home_coordinator.dart";
|
|
import "ui/providers/projects_provider.dart";
|
|
import "ui/providers/session_provider.dart";
|
|
import "ui/providers/settings_provider.dart";
|
|
|
|
void main() async {
|
|
WidgetsFlutterBinding.ensureInitialized();
|
|
|
|
final settingsStore = await SettingsStore.load();
|
|
final projectStore = await ProjectStore.load();
|
|
|
|
runApp(
|
|
MultiProvider(
|
|
providers: [
|
|
ChangeNotifierProvider(
|
|
create: (_) => SettingsProvider(settingsStore),
|
|
),
|
|
ChangeNotifierProvider(
|
|
create: (_) => ProjectsProvider(projectStore),
|
|
),
|
|
ChangeNotifierProvider(
|
|
create: (_) => CostProvider(),
|
|
),
|
|
ChangeNotifierProvider(
|
|
create: (_) => SessionProvider(projectStore),
|
|
),
|
|
ChangeNotifierProvider(
|
|
create: (context) => ChatProvider(
|
|
context.read<SettingsProvider>(),
|
|
),
|
|
),
|
|
ChangeNotifierProvider(
|
|
create: (context) => HomeCoordinator(
|
|
context.read<ProjectsProvider>(),
|
|
context.read<SessionProvider>(),
|
|
context.read<ChatProvider>(),
|
|
context.read<SettingsProvider>(),
|
|
),
|
|
),
|
|
],
|
|
child: const ClawdApp(),
|
|
),
|
|
);
|
|
}
|