mirror of
https://github.com/immich-app/immich.git
synced 2026-07-10 06:03:14 -07:00
cb1af3a8ec
* chore: cleanup partner action test * feat: favorite bottom sheet action * review suggestions * implicit favorite handling * feat: viewer favorite icon to action (#29321) * feat: viewer favorite icon to action * feat: advance info action * implicit favorite handling * feat: viewer favorite icon to action # Conflicts: # mobile/lib/presentation/widgets/asset_viewer/viewer_top_app_bar.widget.dart --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> * chore: timeline action test (#29324) Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> * clear selection only on success --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
40 lines
1.5 KiB
Dart
40 lines
1.5 KiB
Dart
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
|
import 'package:immich_mobile/domain/services/asset.service.dart';
|
|
import 'package:immich_mobile/infrastructure/repositories/local_asset.repository.dart';
|
|
import 'package:immich_mobile/infrastructure/repositories/remote_asset.repository.dart';
|
|
import 'package:immich_mobile/infrastructure/repositories/trashed_local_asset.repository.dart';
|
|
import 'package:immich_mobile/providers/infrastructure/db.provider.dart';
|
|
import 'package:immich_mobile/providers/user.provider.dart';
|
|
import 'package:immich_mobile/repositories/asset_api.repository.dart';
|
|
|
|
final localAssetRepository = Provider<DriftLocalAssetRepository>(
|
|
(ref) => DriftLocalAssetRepository(ref.watch(driftProvider)),
|
|
);
|
|
|
|
final remoteAssetRepositoryProvider = Provider<RemoteAssetRepository>(
|
|
(ref) => RemoteAssetRepository(ref.watch(driftProvider)),
|
|
);
|
|
|
|
final trashedLocalAssetRepository = Provider<DriftTrashedLocalAssetRepository>(
|
|
(ref) => DriftTrashedLocalAssetRepository(ref.watch(driftProvider)),
|
|
);
|
|
|
|
final assetServiceProvider = Provider(
|
|
(ref) => AssetService(
|
|
remoteRepository: ref.watch(remoteAssetRepositoryProvider),
|
|
localRepository: ref.watch(localAssetRepository),
|
|
apiRepository: ref.watch(assetApiRepositoryProvider),
|
|
),
|
|
);
|
|
|
|
final placesProvider = FutureProvider<List<(String, String)>>((ref) {
|
|
final assetService = ref.watch(assetServiceProvider);
|
|
final auth = ref.watch(currentUserProvider);
|
|
|
|
if (auth == null) {
|
|
return Future.value(const []);
|
|
}
|
|
|
|
return assetService.getPlaces(auth.id);
|
|
});
|