mirror of
https://github.com/immich-app/immich.git
synced 2024-12-25 10:43:13 +02:00
e6c0f0e3aa
* chore: maplibre gl pubspec * refactor(wip): maplibre for maps * refactor(wip): dual pane + location button * chore: remove flutter_map and deps * refactor(wip): map zoom to location * refactor: location picker * open gallery_viewer on marker tap * remove detectScaleGesture param * test: debounce and throttle * chore: rename get location method * feat(mobile): Adds gps locator to map prompt for easy geolocation (#6282) * Refactored get gps coords * Use var for linter's sake, should handle errors better * Cleanup * Fix linter issues * chore(dep): update maplibre to official lib --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> Co-authored-by: Joshua Herrera <joshua.herrera227@gmail.com>
37 lines
1.0 KiB
Dart
37 lines
1.0 KiB
Dart
import 'package:immich_mobile/modules/map/models/map_marker.dart';
|
|
import 'package:immich_mobile/modules/map/providers/map_service.provider.dart';
|
|
import 'package:immich_mobile/modules/map/providers/map_state.provider.dart';
|
|
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
|
|
|
part 'map_marker.provider.g.dart';
|
|
|
|
@riverpod
|
|
Future<List<MapMarker>> mapMarkers(MapMarkersRef ref) async {
|
|
final service = ref.read(mapServiceProvider);
|
|
final mapState = ref.read(mapStateNotifierProvider);
|
|
DateTime? fileCreatedAfter;
|
|
bool? isFavorite;
|
|
bool? isIncludeArchived;
|
|
|
|
if (mapState.relativeTime != 0) {
|
|
fileCreatedAfter =
|
|
DateTime.now().subtract(Duration(days: mapState.relativeTime));
|
|
}
|
|
|
|
if (mapState.showFavoriteOnly) {
|
|
isFavorite = true;
|
|
}
|
|
|
|
if (!mapState.includeArchived) {
|
|
isIncludeArchived = false;
|
|
}
|
|
|
|
final markers = await service.getMapMarkers(
|
|
isFavorite: isFavorite,
|
|
withArchived: isIncludeArchived,
|
|
fileCreatedAfter: fileCreatedAfter,
|
|
);
|
|
|
|
return markers.toList();
|
|
}
|