optimizations
This commit is contained in:
@@ -4,10 +4,7 @@ class Marker {
|
||||
final LatLng location;
|
||||
final String assetId;
|
||||
|
||||
const Marker({
|
||||
required this.location,
|
||||
required this.assetId,
|
||||
});
|
||||
const Marker({required this.location, required this.assetId});
|
||||
|
||||
@override
|
||||
bool operator ==(covariant Marker other) {
|
||||
|
||||
@@ -2,37 +2,22 @@ import 'package:immich_mobile/domain/models/map.model.dart';
|
||||
import 'package:immich_mobile/infrastructure/repositories/map.repository.dart';
|
||||
import 'package:maplibre_gl/maplibre_gl.dart';
|
||||
|
||||
typedef MapMarkerSource = Stream<List<Marker>> Function(LatLngBounds? bounds);
|
||||
typedef MapMarkerSource = Future<List<Marker>> Function(LatLngBounds? bounds);
|
||||
|
||||
typedef MapQuery = ({
|
||||
MapMarkerSource markerSource,
|
||||
});
|
||||
typedef MapQuery = ({MapMarkerSource markerSource});
|
||||
|
||||
class MapFactory {
|
||||
final DriftMapRepository _mapRepository;
|
||||
|
||||
const MapFactory({
|
||||
required DriftMapRepository mapRepository,
|
||||
}) : _mapRepository = mapRepository;
|
||||
const MapFactory({required DriftMapRepository mapRepository}) : _mapRepository = mapRepository;
|
||||
|
||||
MapService remote(String ownerId) =>
|
||||
MapService(_mapRepository.remote(ownerId));
|
||||
MapService remote(String ownerId) => MapService(_mapRepository.remote(ownerId));
|
||||
}
|
||||
|
||||
class MapService {
|
||||
final MapMarkerSource _markerSource;
|
||||
|
||||
MapService(MapQuery query)
|
||||
: this._(
|
||||
markerSource: query.markerSource,
|
||||
);
|
||||
MapService(MapQuery query) : _markerSource = query.markerSource;
|
||||
|
||||
MapService._({
|
||||
required MapMarkerSource markerSource,
|
||||
}) : _markerSource = markerSource;
|
||||
|
||||
Stream<List<Marker>> Function(LatLngBounds? bounds) get watchMarkers =>
|
||||
_markerSource;
|
||||
|
||||
Future<void> dispose() async {}
|
||||
Future<List<Marker>> Function(LatLngBounds? bounds) get getMarkers => _markerSource;
|
||||
}
|
||||
|
||||
@@ -59,8 +59,7 @@ class TimelineFactory {
|
||||
|
||||
TimelineService fromAssets(List<BaseAsset> assets) => TimelineService(_timelineRepository.fromAssets(assets));
|
||||
|
||||
TimelineService map(LatLngBounds bounds) =>
|
||||
TimelineService(_timelineRepository.map(bounds, groupBy));
|
||||
TimelineService map(LatLngBounds bounds) => TimelineService(_timelineRepository.map(bounds, groupBy));
|
||||
}
|
||||
|
||||
class TimelineService {
|
||||
|
||||
Reference in New Issue
Block a user