import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:hive_ce_flutter/hive_flutter.dart'; import 'app.dart'; /// Main entry point of the application void main() async { // Ensure Flutter binding is initialized WidgetsFlutterBinding.ensureInitialized(); // Initialize Hive await Hive.initFlutter(); // Register Hive adapters // TODO: Register adapters after running code generation // Hive.registerAdapter(ProductModelAdapter()); // Hive.registerAdapter(CategoryModelAdapter()); // Hive.registerAdapter(CartItemModelAdapter()); // Hive.registerAdapter(AppSettingsModelAdapter()); // Open Hive boxes // TODO: Open boxes after registering adapters // await Hive.openBox(StorageConstants.productsBox); // await Hive.openBox(StorageConstants.categoriesBox); // await Hive.openBox(StorageConstants.cartBox); // await Hive.openBox(StorageConstants.settingsBox); // Run the app with Riverpod (no GetIt needed - using Riverpod for DI) runApp( const ProviderScope( child: RetailApp(), ), ); }