From 82624b097903f0a1bc3f9847dbcb1abba0dde353 Mon Sep 17 00:00:00 2001 From: Alex Date: Sun, 9 Mar 2025 20:30:58 -0500 Subject: [PATCH] chore(mobile): upgrade riverpod (#16742) --- mobile/lib/providers/activity.provider.g.dart | 4 +- .../providers/activity_service.provider.dart | 3 +- .../activity_service.provider.g.dart | 4 +- .../activity_statistics.provider.g.dart | 4 +- .../album_sort_by_options.provider.g.dart | 2 +- .../album/current_album.provider.g.dart | 2 +- mobile/lib/providers/api.provider.dart | 3 +- mobile/lib/providers/api.provider.g.dart | 4 +- .../lib/providers/app_settings.provider.dart | 4 +- .../providers/app_settings.provider.g.dart | 4 +- mobile/lib/providers/asset.provider.dart | 2 +- .../asset_viewer/asset_people.provider.g.dart | 4 +- .../asset_viewer/asset_stack.provider.dart | 2 +- .../asset_viewer/asset_stack.provider.g.dart | 4 +- .../current_asset.provider.g.dart | 2 +- .../backup_verification.provider.g.dart | 2 +- .../lib/providers/immich_logo_provider.dart | 3 +- .../lib/providers/immich_logo_provider.g.dart | 4 +- .../providers/infrastructure/db.provider.dart | 3 +- .../infrastructure/db.provider.g.dart | 4 +- .../infrastructure/exif.provider.dart | 3 +- .../infrastructure/exif.provider.g.dart | 4 +- .../infrastructure/store.provider.dart | 3 +- .../infrastructure/store.provider.g.dart | 4 +- .../providers/map/map_marker.provider.dart | 3 +- .../providers/map/map_marker.provider.g.dart | 4 +- .../providers/map/map_service.provider.dart | 4 +- .../providers/map/map_service.provider.g.dart | 4 +- .../providers/map/map_state.provider.g.dart | 2 +- .../search/paginated_search.provider.dart | 2 +- .../search/paginated_search.provider.g.dart | 4 +- .../lib/providers/search/people.provider.dart | 7 +- .../providers/search/people.provider.g.dart | 8 +- .../search/search_filter.provider.dart | 3 +- .../search/search_filter.provider.g.dart | 4 +- mobile/lib/routing/router.gr.dart | 81 +++++++++++-------- mobile/lib/services/person.service.dart | 3 +- mobile/lib/services/person.service.g.dart | 4 +- mobile/pubspec.lock | 32 ++++---- mobile/pubspec.yaml | 10 +-- 40 files changed, 157 insertions(+), 96 deletions(-) diff --git a/mobile/lib/providers/activity.provider.g.dart b/mobile/lib/providers/activity.provider.g.dart index 9c20a09793..af574b991a 100644 --- a/mobile/lib/providers/activity.provider.g.dart +++ b/mobile/lib/providers/activity.provider.g.dart @@ -187,6 +187,8 @@ class AlbumActivityProvider extends AutoDisposeAsyncNotifierProviderImpl< } } +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element mixin AlbumActivityRef on AutoDisposeAsyncNotifierProviderRef> { /// The parameter `albumId` of this provider. String get albumId; @@ -206,4 +208,4 @@ class _AlbumActivityProviderElement String? get assetId => (origin as AlbumActivityProvider).assetId; } // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/activity_service.provider.dart b/mobile/lib/providers/activity_service.provider.dart index 6bd139c565..2d63e55354 100644 --- a/mobile/lib/providers/activity_service.provider.dart +++ b/mobile/lib/providers/activity_service.provider.dart @@ -1,3 +1,4 @@ +import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:immich_mobile/repositories/activity_api.repository.dart'; import 'package:immich_mobile/services/activity.service.dart'; import 'package:riverpod_annotation/riverpod_annotation.dart'; @@ -5,5 +6,5 @@ import 'package:riverpod_annotation/riverpod_annotation.dart'; part 'activity_service.provider.g.dart'; @riverpod -ActivityService activityService(ActivityServiceRef ref) => +ActivityService activityService(Ref ref) => ActivityService(ref.watch(activityApiRepositoryProvider)); diff --git a/mobile/lib/providers/activity_service.provider.g.dart b/mobile/lib/providers/activity_service.provider.g.dart index d42b2a39e4..1a08a6f8aa 100644 --- a/mobile/lib/providers/activity_service.provider.g.dart +++ b/mobile/lib/providers/activity_service.provider.g.dart @@ -20,6 +20,8 @@ final activityServiceProvider = AutoDisposeProvider.internal( allTransitiveDependencies: null, ); +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element typedef ActivityServiceRef = AutoDisposeProviderRef; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/activity_statistics.provider.g.dart b/mobile/lib/providers/activity_statistics.provider.g.dart index 16a3c0e81b..d2de32c0aa 100644 --- a/mobile/lib/providers/activity_statistics.provider.g.dart +++ b/mobile/lib/providers/activity_statistics.provider.g.dart @@ -186,6 +186,8 @@ class ActivityStatisticsProvider } } +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element mixin ActivityStatisticsRef on AutoDisposeNotifierProviderRef { /// The parameter `albumId` of this provider. String get albumId; @@ -205,4 +207,4 @@ class _ActivityStatisticsProviderElement String? get assetId => (origin as ActivityStatisticsProvider).assetId; } // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/album/album_sort_by_options.provider.g.dart b/mobile/lib/providers/album/album_sort_by_options.provider.g.dart index 9a05bb6c7d..ba20e7eb66 100644 --- a/mobile/lib/providers/album/album_sort_by_options.provider.g.dart +++ b/mobile/lib/providers/album/album_sort_by_options.provider.g.dart @@ -40,4 +40,4 @@ final albumSortOrderProvider = typedef _$AlbumSortOrder = AutoDisposeNotifier; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/album/current_album.provider.g.dart b/mobile/lib/providers/album/current_album.provider.g.dart index 50e8854637..60ebe3e333 100644 --- a/mobile/lib/providers/album/current_album.provider.g.dart +++ b/mobile/lib/providers/album/current_album.provider.g.dart @@ -22,4 +22,4 @@ final currentAlbumProvider = typedef _$CurrentAlbum = AutoDisposeNotifier; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/api.provider.dart b/mobile/lib/providers/api.provider.dart index 8e48324c92..a994dacf2f 100644 --- a/mobile/lib/providers/api.provider.dart +++ b/mobile/lib/providers/api.provider.dart @@ -1,7 +1,8 @@ +import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:immich_mobile/services/api.service.dart'; import 'package:riverpod_annotation/riverpod_annotation.dart'; part 'api.provider.g.dart'; @Riverpod(keepAlive: true) -ApiService apiService(ApiServiceRef ref) => ApiService(); +ApiService apiService(Ref ref) => ApiService(); diff --git a/mobile/lib/providers/api.provider.g.dart b/mobile/lib/providers/api.provider.g.dart index 421d554314..2573f3d291 100644 --- a/mobile/lib/providers/api.provider.g.dart +++ b/mobile/lib/providers/api.provider.g.dart @@ -19,6 +19,8 @@ final apiServiceProvider = Provider.internal( allTransitiveDependencies: null, ); +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element typedef ApiServiceRef = ProviderRef; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/app_settings.provider.dart b/mobile/lib/providers/app_settings.provider.dart index a598be7a1f..81c5c8e201 100644 --- a/mobile/lib/providers/app_settings.provider.dart +++ b/mobile/lib/providers/app_settings.provider.dart @@ -1,8 +1,8 @@ +import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:immich_mobile/services/app_settings.service.dart'; import 'package:riverpod_annotation/riverpod_annotation.dart'; part 'app_settings.provider.g.dart'; @Riverpod(keepAlive: true) -AppSettingsService appSettingsService(AppSettingsServiceRef ref) => - AppSettingsService(); +AppSettingsService appSettingsService(Ref ref) => AppSettingsService(); diff --git a/mobile/lib/providers/app_settings.provider.g.dart b/mobile/lib/providers/app_settings.provider.g.dart index a9954382a7..1d2fe173b1 100644 --- a/mobile/lib/providers/app_settings.provider.g.dart +++ b/mobile/lib/providers/app_settings.provider.g.dart @@ -21,6 +21,8 @@ final appSettingsServiceProvider = Provider.internal( allTransitiveDependencies: null, ); +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element typedef AppSettingsServiceRef = ProviderRef; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/asset.provider.dart b/mobile/lib/providers/asset.provider.dart index f093d90071..53fe0338ce 100644 --- a/mobile/lib/providers/asset.provider.dart +++ b/mobile/lib/providers/asset.provider.dart @@ -31,7 +31,7 @@ class AssetNotifier extends StateNotifier { final SyncService _syncService; final ETagService _etagService; final ExifService _exifService; - final StateNotifierProviderRef _ref; + final Ref _ref; final log = Logger('AssetNotifier'); bool _getAllAssetInProgress = false; bool _deleteInProgress = false; diff --git a/mobile/lib/providers/asset_viewer/asset_people.provider.g.dart b/mobile/lib/providers/asset_viewer/asset_people.provider.g.dart index df6ee779cc..ebe8a14186 100644 --- a/mobile/lib/providers/asset_viewer/asset_people.provider.g.dart +++ b/mobile/lib/providers/asset_viewer/asset_people.provider.g.dart @@ -171,6 +171,8 @@ class AssetPeopleNotifierProvider extends AutoDisposeAsyncNotifierProviderImpl< } } +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element mixin AssetPeopleNotifierRef on AutoDisposeAsyncNotifierProviderRef> { /// The parameter `asset` of this provider. @@ -186,4 +188,4 @@ class _AssetPeopleNotifierProviderElement Asset get asset => (origin as AssetPeopleNotifierProvider).asset; } // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/asset_viewer/asset_stack.provider.dart b/mobile/lib/providers/asset_viewer/asset_stack.provider.dart index d7049e4e1e..0edefde526 100644 --- a/mobile/lib/providers/asset_viewer/asset_stack.provider.dart +++ b/mobile/lib/providers/asset_viewer/asset_stack.provider.dart @@ -39,6 +39,6 @@ final assetStackStateProvider = StateNotifierProvider.autoDispose ); @riverpod -int assetStackIndex(AssetStackIndexRef ref, Asset asset) { +int assetStackIndex(Ref ref, Asset asset) { return -1; } diff --git a/mobile/lib/providers/asset_viewer/asset_stack.provider.g.dart b/mobile/lib/providers/asset_viewer/asset_stack.provider.g.dart index 142e46d322..da49c11429 100644 --- a/mobile/lib/providers/asset_viewer/asset_stack.provider.g.dart +++ b/mobile/lib/providers/asset_viewer/asset_stack.provider.g.dart @@ -142,6 +142,8 @@ class AssetStackIndexProvider extends AutoDisposeProvider { } } +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element mixin AssetStackIndexRef on AutoDisposeProviderRef { /// The parameter `asset` of this provider. Asset get asset; @@ -155,4 +157,4 @@ class _AssetStackIndexProviderElement extends AutoDisposeProviderElement Asset get asset => (origin as AssetStackIndexProvider).asset; } // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/asset_viewer/current_asset.provider.g.dart b/mobile/lib/providers/asset_viewer/current_asset.provider.g.dart index 96628dab58..53b02c2ace 100644 --- a/mobile/lib/providers/asset_viewer/current_asset.provider.g.dart +++ b/mobile/lib/providers/asset_viewer/current_asset.provider.g.dart @@ -22,4 +22,4 @@ final currentAssetProvider = typedef _$CurrentAsset = AutoDisposeNotifier; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/backup/backup_verification.provider.g.dart b/mobile/lib/providers/backup/backup_verification.provider.g.dart index 9b52698847..bae3ec366b 100644 --- a/mobile/lib/providers/backup/backup_verification.provider.g.dart +++ b/mobile/lib/providers/backup/backup_verification.provider.g.dart @@ -24,4 +24,4 @@ final backupVerificationProvider = typedef _$BackupVerification = AutoDisposeNotifier; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/immich_logo_provider.dart b/mobile/lib/providers/immich_logo_provider.dart index c5c65fcfe0..a52aba5f9e 100644 --- a/mobile/lib/providers/immich_logo_provider.dart +++ b/mobile/lib/providers/immich_logo_provider.dart @@ -1,12 +1,13 @@ import 'dart:convert'; import 'package:flutter/services.dart'; +import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:riverpod_annotation/riverpod_annotation.dart'; part 'immich_logo_provider.g.dart'; @riverpod -Future immichLogo(ImmichLogoRef ref) async { +Future immichLogo(Ref ref) async { final json = await rootBundle.loadString('assets/immich-logo.json'); final j = jsonDecode(json); return base64Decode(j['content']); diff --git a/mobile/lib/providers/immich_logo_provider.g.dart b/mobile/lib/providers/immich_logo_provider.g.dart index 1a95814e35..9f2d81b46a 100644 --- a/mobile/lib/providers/immich_logo_provider.g.dart +++ b/mobile/lib/providers/immich_logo_provider.g.dart @@ -19,6 +19,8 @@ final immichLogoProvider = AutoDisposeFutureProvider.internal( allTransitiveDependencies: null, ); +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element typedef ImmichLogoRef = AutoDisposeFutureProviderRef; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/infrastructure/db.provider.dart b/mobile/lib/providers/infrastructure/db.provider.dart index 447039478e..84010b3b96 100644 --- a/mobile/lib/providers/infrastructure/db.provider.dart +++ b/mobile/lib/providers/infrastructure/db.provider.dart @@ -1,7 +1,8 @@ +import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:isar/isar.dart'; import 'package:riverpod_annotation/riverpod_annotation.dart'; part 'db.provider.g.dart'; @Riverpod(keepAlive: true) -Isar isar(IsarRef ref) => throw UnimplementedError('isar'); +Isar isar(Ref ref) => throw UnimplementedError('isar'); diff --git a/mobile/lib/providers/infrastructure/db.provider.g.dart b/mobile/lib/providers/infrastructure/db.provider.g.dart index 1bfe7b0ad5..d35c2202ec 100644 --- a/mobile/lib/providers/infrastructure/db.provider.g.dart +++ b/mobile/lib/providers/infrastructure/db.provider.g.dart @@ -19,6 +19,8 @@ final isarProvider = Provider.internal( allTransitiveDependencies: null, ); +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element typedef IsarRef = ProviderRef; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/infrastructure/exif.provider.dart b/mobile/lib/providers/infrastructure/exif.provider.dart index 7c95fd1a20..ecb67dd2fe 100644 --- a/mobile/lib/providers/infrastructure/exif.provider.dart +++ b/mobile/lib/providers/infrastructure/exif.provider.dart @@ -1,3 +1,4 @@ +import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:immich_mobile/domain/interfaces/exif.interface.dart'; import 'package:immich_mobile/infrastructure/repositories/exif.repository.dart'; import 'package:immich_mobile/providers/infrastructure/db.provider.dart'; @@ -6,5 +7,5 @@ import 'package:riverpod_annotation/riverpod_annotation.dart'; part 'exif.provider.g.dart'; @Riverpod(keepAlive: true) -IExifInfoRepository exifRepository(ExifRepositoryRef ref) => +IExifInfoRepository exifRepository(Ref ref) => IsarExifRepository(ref.watch(isarProvider)); diff --git a/mobile/lib/providers/infrastructure/exif.provider.g.dart b/mobile/lib/providers/infrastructure/exif.provider.g.dart index a9e60ca463..5eec1bd23e 100644 --- a/mobile/lib/providers/infrastructure/exif.provider.g.dart +++ b/mobile/lib/providers/infrastructure/exif.provider.g.dart @@ -20,6 +20,8 @@ final exifRepositoryProvider = Provider.internal( allTransitiveDependencies: null, ); +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element typedef ExifRepositoryRef = ProviderRef; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/infrastructure/store.provider.dart b/mobile/lib/providers/infrastructure/store.provider.dart index cb7024ad51..2712208e76 100644 --- a/mobile/lib/providers/infrastructure/store.provider.dart +++ b/mobile/lib/providers/infrastructure/store.provider.dart @@ -1,3 +1,4 @@ +import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:immich_mobile/domain/interfaces/store.interface.dart'; import 'package:immich_mobile/infrastructure/repositories/store.repository.dart'; import 'package:immich_mobile/providers/infrastructure/db.provider.dart'; @@ -6,5 +7,5 @@ import 'package:riverpod_annotation/riverpod_annotation.dart'; part 'store.provider.g.dart'; @riverpod -IStoreRepository storeRepository(StoreRepositoryRef ref) => +IStoreRepository storeRepository(Ref ref) => IsarStoreRepository(ref.watch(isarProvider)); diff --git a/mobile/lib/providers/infrastructure/store.provider.g.dart b/mobile/lib/providers/infrastructure/store.provider.g.dart index f53d677384..0551793b80 100644 --- a/mobile/lib/providers/infrastructure/store.provider.g.dart +++ b/mobile/lib/providers/infrastructure/store.provider.g.dart @@ -20,6 +20,8 @@ final storeRepositoryProvider = AutoDisposeProvider.internal( allTransitiveDependencies: null, ); +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element typedef StoreRepositoryRef = AutoDisposeProviderRef; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/map/map_marker.provider.dart b/mobile/lib/providers/map/map_marker.provider.dart index c8e8a77c17..23342b77b3 100644 --- a/mobile/lib/providers/map/map_marker.provider.dart +++ b/mobile/lib/providers/map/map_marker.provider.dart @@ -1,3 +1,4 @@ +import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:immich_mobile/models/map/map_marker.model.dart'; import 'package:immich_mobile/providers/map/map_service.provider.dart'; import 'package:immich_mobile/providers/map/map_state.provider.dart'; @@ -6,7 +7,7 @@ import 'package:riverpod_annotation/riverpod_annotation.dart'; part 'map_marker.provider.g.dart'; @riverpod -Future> mapMarkers(MapMarkersRef ref) async { +Future> mapMarkers(Ref ref) async { final service = ref.read(mapServiceProvider); final mapState = ref.read(mapStateNotifierProvider); DateTime? fileCreatedAfter; diff --git a/mobile/lib/providers/map/map_marker.provider.g.dart b/mobile/lib/providers/map/map_marker.provider.g.dart index ce11b4ebff..c79292aa61 100644 --- a/mobile/lib/providers/map/map_marker.provider.g.dart +++ b/mobile/lib/providers/map/map_marker.provider.g.dart @@ -19,6 +19,8 @@ final mapMarkersProvider = AutoDisposeFutureProvider>.internal( allTransitiveDependencies: null, ); +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element typedef MapMarkersRef = AutoDisposeFutureProviderRef>; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/map/map_service.provider.dart b/mobile/lib/providers/map/map_service.provider.dart index 2773f7dcc9..0d998c5173 100644 --- a/mobile/lib/providers/map/map_service.provider.dart +++ b/mobile/lib/providers/map/map_service.provider.dart @@ -1,3 +1,4 @@ +import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:immich_mobile/services/map.service.dart'; import 'package:immich_mobile/providers/api.provider.dart'; import 'package:riverpod_annotation/riverpod_annotation.dart'; @@ -5,5 +6,4 @@ import 'package:riverpod_annotation/riverpod_annotation.dart'; part 'map_service.provider.g.dart'; @riverpod -MapSerivce mapService(MapServiceRef ref) => - MapSerivce(ref.watch(apiServiceProvider)); +MapSerivce mapService(Ref ref) => MapSerivce(ref.watch(apiServiceProvider)); diff --git a/mobile/lib/providers/map/map_service.provider.g.dart b/mobile/lib/providers/map/map_service.provider.g.dart index 7b4e68eaee..b7adb96ab9 100644 --- a/mobile/lib/providers/map/map_service.provider.g.dart +++ b/mobile/lib/providers/map/map_service.provider.g.dart @@ -19,6 +19,8 @@ final mapServiceProvider = AutoDisposeProvider.internal( allTransitiveDependencies: null, ); +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element typedef MapServiceRef = AutoDisposeProviderRef; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/map/map_state.provider.g.dart b/mobile/lib/providers/map/map_state.provider.g.dart index 23a570d1c8..85a237099c 100644 --- a/mobile/lib/providers/map/map_state.provider.g.dart +++ b/mobile/lib/providers/map/map_state.provider.g.dart @@ -23,4 +23,4 @@ final mapStateNotifierProvider = typedef _$MapStateNotifier = Notifier; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/search/paginated_search.provider.dart b/mobile/lib/providers/search/paginated_search.provider.dart index 990bd3f74a..bac5c5e77e 100644 --- a/mobile/lib/providers/search/paginated_search.provider.dart +++ b/mobile/lib/providers/search/paginated_search.provider.dart @@ -45,7 +45,7 @@ class PaginatedSearchNotifier extends StateNotifier { @riverpod Future paginatedSearchRenderList( - PaginatedSearchRenderListRef ref, + Ref ref, ) { final result = ref.watch(paginatedSearchProvider); final timelineService = ref.watch(timelineServiceProvider); diff --git a/mobile/lib/providers/search/paginated_search.provider.g.dart b/mobile/lib/providers/search/paginated_search.provider.g.dart index 5682795ea1..86061675dc 100644 --- a/mobile/lib/providers/search/paginated_search.provider.g.dart +++ b/mobile/lib/providers/search/paginated_search.provider.g.dart @@ -22,6 +22,8 @@ final paginatedSearchRenderListProvider = allTransitiveDependencies: null, ); +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element typedef PaginatedSearchRenderListRef = AutoDisposeFutureProviderRef; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/search/people.provider.dart b/mobile/lib/providers/search/people.provider.dart index 7c956f0a37..d1370f498f 100644 --- a/mobile/lib/providers/search/people.provider.dart +++ b/mobile/lib/providers/search/people.provider.dart @@ -1,3 +1,4 @@ +import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:immich_mobile/interfaces/person_api.interface.dart'; import 'package:immich_mobile/widgets/asset_grid/asset_grid_data_structure.dart'; import 'package:immich_mobile/services/person.service.dart'; @@ -9,7 +10,7 @@ part 'people.provider.g.dart'; @riverpod Future> getAllPeople( - GetAllPeopleRef ref, + Ref ref, ) async { final PersonService personService = ref.read(personServiceProvider); @@ -19,7 +20,7 @@ Future> getAllPeople( } @riverpod -Future personAssets(PersonAssetsRef ref, String personId) async { +Future personAssets(Ref ref, String personId) async { final PersonService personService = ref.read(personServiceProvider); final assets = await personService.getPersonAssets(personId); @@ -31,7 +32,7 @@ Future personAssets(PersonAssetsRef ref, String personId) async { @riverpod Future updatePersonName( - UpdatePersonNameRef ref, + Ref ref, String personId, String updatedName, ) async { diff --git a/mobile/lib/providers/search/people.provider.g.dart b/mobile/lib/providers/search/people.provider.g.dart index c5ff6287cd..51295f991a 100644 --- a/mobile/lib/providers/search/people.provider.g.dart +++ b/mobile/lib/providers/search/people.provider.g.dart @@ -19,6 +19,8 @@ final getAllPeopleProvider = AutoDisposeFutureProvider>.internal( allTransitiveDependencies: null, ); +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element typedef GetAllPeopleRef = AutoDisposeFutureProviderRef>; String _$personAssetsHash() => r'3dfecb67a54d07e4208bcb9581b2625acd2e1832'; @@ -156,6 +158,8 @@ class PersonAssetsProvider extends AutoDisposeFutureProvider { } } +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element mixin PersonAssetsRef on AutoDisposeFutureProviderRef { /// The parameter `personId` of this provider. String get personId; @@ -296,6 +300,8 @@ class UpdatePersonNameProvider extends AutoDisposeFutureProvider { } } +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element mixin UpdatePersonNameRef on AutoDisposeFutureProviderRef { /// The parameter `personId` of this provider. String get personId; @@ -314,4 +320,4 @@ class _UpdatePersonNameProviderElement String get updatedName => (origin as UpdatePersonNameProvider).updatedName; } // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/providers/search/search_filter.provider.dart b/mobile/lib/providers/search/search_filter.provider.dart index 9086fc861f..2a81060522 100644 --- a/mobile/lib/providers/search/search_filter.provider.dart +++ b/mobile/lib/providers/search/search_filter.provider.dart @@ -1,3 +1,4 @@ +import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:immich_mobile/services/search.service.dart'; import 'package:openapi/api.dart'; import 'package:riverpod_annotation/riverpod_annotation.dart'; @@ -6,7 +7,7 @@ part 'search_filter.provider.g.dart'; @riverpod Future> getSearchSuggestions( - GetSearchSuggestionsRef ref, + Ref ref, SearchSuggestionType type, { String? locationCountry, String? locationState, diff --git a/mobile/lib/providers/search/search_filter.provider.g.dart b/mobile/lib/providers/search/search_filter.provider.g.dart index d5cdaa0312..a5e70b01e8 100644 --- a/mobile/lib/providers/search/search_filter.provider.g.dart +++ b/mobile/lib/providers/search/search_filter.provider.g.dart @@ -189,6 +189,8 @@ class GetSearchSuggestionsProvider } } +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element mixin GetSearchSuggestionsRef on AutoDisposeFutureProviderRef> { /// The parameter `type` of this provider. SearchSuggestionType get type; @@ -226,4 +228,4 @@ class _GetSearchSuggestionsProviderElement String? get model => (origin as GetSearchSuggestionsProvider).model; } // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/lib/routing/router.gr.dart b/mobile/lib/routing/router.gr.dart index e120f512ae..f2f169247e 100644 --- a/mobile/lib/routing/router.gr.dart +++ b/mobile/lib/routing/router.gr.dart @@ -788,6 +788,53 @@ class FilterImageRouteArgs { } } +/// generated route for +/// [FolderPage] +class FolderRoute extends PageRouteInfo { + FolderRoute({ + Key? key, + RecursiveFolder? folder, + List? children, + }) : super( + FolderRoute.name, + args: FolderRouteArgs( + key: key, + folder: folder, + ), + initialChildren: children, + ); + + static const String name = 'FolderRoute'; + + static PageInfo page = PageInfo( + name, + builder: (data) { + final args = + data.argsAs(orElse: () => const FolderRouteArgs()); + return FolderPage( + key: args.key, + folder: args.folder, + ); + }, + ); +} + +class FolderRouteArgs { + const FolderRouteArgs({ + this.key, + this.folder, + }); + + final Key? key; + + final RecursiveFolder? folder; + + @override + String toString() { + return 'FolderRouteArgs{key: $key, folder: $folder}'; + } +} + /// generated route for /// [GalleryViewerPage] class GalleryViewerRoute extends PageRouteInfo { @@ -1175,40 +1222,6 @@ class PartnerRoute extends PageRouteInfo { ); } -/// manually written (with love) route for -/// [FolderPage] -class FolderRoute extends PageRouteInfo { - FolderRoute({ - RecursiveFolder? folder, - List? children, - }) : super( - FolderRoute.name, - args: FolderRouteArgs(folder: folder), - initialChildren: children, - ); - - static const String name = 'FolderRoute'; - - static PageInfo page = PageInfo( - name, - builder: (data) { - final args = data.argsAs(); - return FolderPage(folder: args.folder); - }, - ); -} - -class FolderRouteArgs { - const FolderRouteArgs({this.folder}); - - final RecursiveFolder? folder; - - @override - String toString() { - return 'FolderRouteArgs{folder: $folder}'; - } -} - /// generated route for /// [PeopleCollectionPage] class PeopleCollectionRoute extends PageRouteInfo { diff --git a/mobile/lib/services/person.service.dart b/mobile/lib/services/person.service.dart index 5b325acdc5..a8289ac37d 100644 --- a/mobile/lib/services/person.service.dart +++ b/mobile/lib/services/person.service.dart @@ -1,3 +1,4 @@ +import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:immich_mobile/entities/asset.entity.dart'; import 'package:immich_mobile/interfaces/asset.interface.dart'; import 'package:immich_mobile/interfaces/asset_api.interface.dart'; @@ -11,7 +12,7 @@ import 'package:riverpod_annotation/riverpod_annotation.dart'; part 'person.service.g.dart'; @riverpod -PersonService personService(PersonServiceRef ref) => PersonService( +PersonService personService(Ref ref) => PersonService( ref.watch(personApiRepositoryProvider), ref.watch(assetApiRepositoryProvider), ref.read(assetRepositoryProvider), diff --git a/mobile/lib/services/person.service.g.dart b/mobile/lib/services/person.service.g.dart index 9a24069fbf..c7352606b3 100644 --- a/mobile/lib/services/person.service.g.dart +++ b/mobile/lib/services/person.service.g.dart @@ -20,6 +20,8 @@ final personServiceProvider = AutoDisposeProvider.internal( allTransitiveDependencies: null, ); +@Deprecated('Will be removed in 3.0. Use Ref instead') +// ignore: unused_element typedef PersonServiceRef = AutoDisposeProviderRef; // ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member +// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package diff --git a/mobile/pubspec.lock b/mobile/pubspec.lock index db1a335adf..44f8d1627a 100644 --- a/mobile/pubspec.lock +++ b/mobile/pubspec.lock @@ -516,10 +516,10 @@ packages: dependency: "direct main" description: name: flutter_hooks - sha256: cde36b12f7188c85286fba9b38cc5a902e7279f36dd676967106c041dc9dde70 + sha256: b772e710d16d7a20c0740c4f855095026b31c7eb5ba3ab67d2bd52021cd9461d url: "https://pub.dev" source: hosted - version: "0.20.5" + version: "0.21.2" flutter_launcher_icons: dependency: "direct dev" description: @@ -585,10 +585,10 @@ packages: dependency: transitive description: name: flutter_riverpod - sha256: "0f1974eff5bbe774bf1d870e406fc6f29e3d6f1c46bd9c58e7172ff68a785d7d" + sha256: "9532ee6db4a943a1ed8383072a2e3eeda041db5657cdf6d2acecf3c21ecbe7e1" url: "https://pub.dev" source: hosted - version: "2.5.1" + version: "2.6.1" flutter_svg: dependency: "direct main" description: @@ -728,10 +728,10 @@ packages: dependency: "direct main" description: name: hooks_riverpod - sha256: "45b2030a18bcd6dbd680c2c91bc3b33e3fe7c323e3acb5ecec93a613e2fbaa8a" + sha256: "70bba33cfc5670c84b796e6929c54b8bc5be7d0fe15bb28c2560500b9ad06966" url: "https://pub.dev" source: hosted - version: "2.5.1" + version: "2.6.1" hotreloader: dependency: transitive description: @@ -1292,42 +1292,42 @@ packages: dependency: transitive description: name: riverpod - sha256: f21b32ffd26a36555e501b04f4a5dca43ed59e16343f1a30c13632b2351dfa4d + sha256: "59062512288d3056b2321804332a13ffdd1bf16df70dcc8e506e411280a72959" url: "https://pub.dev" source: hosted - version: "2.5.1" + version: "2.6.1" riverpod_analyzer_utils: dependency: transitive description: name: riverpod_analyzer_utils - sha256: ee72770090078e6841d51355292335f1bc254907c6694283389dcb8156d99a4d + sha256: "0dcb0af32d561f8fa000c6a6d95633c9fb08ea8a8df46e3f9daca59f11218167" url: "https://pub.dev" source: hosted - version: "0.5.3" + version: "0.5.6" riverpod_annotation: dependency: "direct main" description: name: riverpod_annotation - sha256: e5e796c0eba4030c704e9dae1b834a6541814963292839dcf9638d53eba84f5c + sha256: e14b0bf45b71326654e2705d462f21b958f987087be850afd60578fcd502d1b8 url: "https://pub.dev" source: hosted - version: "2.3.5" + version: "2.6.1" riverpod_generator: dependency: "direct dev" description: name: riverpod_generator - sha256: "1ad626afbd8b01d168870b13c0b036f8a5bdb57c14cd426dc5b4595466bd6e2f" + sha256: "851aedac7ad52693d12af3bf6d92b1626d516ed6b764eb61bf19e968b5e0b931" url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.6.1" riverpod_lint: dependency: "direct dev" description: name: riverpod_lint - sha256: b95a8cdc6102397f7d51037131c25ce7e51be900be021af4bf0c2d6f1b8f7aa7 + sha256: "0684c21a9a4582c28c897d55c7b611fa59a351579061b43f8c92c005804e63a8" url: "https://pub.dev" source: hosted - version: "2.3.12" + version: "2.6.1" rxdart: dependency: transitive description: diff --git a/mobile/pubspec.yaml b/mobile/pubspec.yaml index 1d16359f9a..2715c0cfd3 100644 --- a/mobile/pubspec.yaml +++ b/mobile/pubspec.yaml @@ -17,9 +17,9 @@ dependencies: path_provider_ios: photo_manager: ^3.6.1 photo_manager_image_provider: ^2.2.0 - flutter_hooks: ^0.20.4 - hooks_riverpod: ^2.4.9 - riverpod_annotation: ^2.3.3 + flutter_hooks: ^0.21.2 + hooks_riverpod: ^2.6.1 + riverpod_annotation: ^2.6.1 cached_network_image: ^3.3.1 flutter_cache_manager: ^3.3.1 intl: ^0.19.0 @@ -108,8 +108,8 @@ dev_dependencies: integration_test: sdk: flutter custom_lint: ^0.6.4 - riverpod_lint: ^2.3.7 - riverpod_generator: ^2.3.9 + riverpod_lint: ^2.6.1 + riverpod_generator: ^2.6.1 mocktail: ^1.0.3 immich_mobile_immich_lint: path: './immich_lint'