Files
rog_app/lib/features/services/checkpoint_repo.dart
2024-04-01 09:26:56 +05:30

33 lines
1.2 KiB
Dart

import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:rogapp/features/data/checkpoint.dart';
import 'package:rogapp/features/data/data_provider.dart';
import 'package:rogapp/features/services/checkpoint_service.dart'; // Import your ApiService file
Future<void> storeFetchedFeatures(FeatureCollection featureCollection) async {
final dataProvider =
DataProvider(); // Ensure DataProvider is initialized appropriately
for (Feature feature in featureCollection.features) {
await dataProvider.insertMarker(feature);
}
}
final checkpointProvider = FutureProvider<List<Feature>>((ref) async {
final dataProvider =
DataProvider(); // Assuming you create or access an instance here
final markers = await dataProvider.getMarkers();
return markers;
});
final featureCheckpointCollectionProvider =
FutureProvider<FeatureCollection>((ref) async {
final apiService =
ApiService(); // Ensure ApiService is initialized appropriately
final featureCollection = await apiService.fetchFeatures();
// Store the fetched features in the local database
await storeFetchedFeatures(featureCollection);
return featureCollection; // Return the fetched feature collection
});