mirror of
https://github.com/immich-app/immich.git
synced 2026-08-02 08:58:46 -07:00
* fix(mobile): refresh asset stack after deleting viewer item * fix(mobile): clamp stack index, filter visible stack assets * refactor(mobile): simplify stack asset refresh handling * fix(mobile): revert changes in DeleteLocalActionButton * style(mobile): reformat code * fix(mobile): remove redundant setStack --------- Co-authored-by: Peter Ombodi <peter.ombodi@gmail.com>
22 lines
773 B
Dart
22 lines
773 B
Dart
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
|
import 'package:immich_mobile/domain/models/asset/base_asset.model.dart';
|
|
import 'package:immich_mobile/providers/infrastructure/asset.provider.dart';
|
|
|
|
class StackChildrenNotifier extends AutoDisposeFamilyAsyncNotifier<List<RemoteAsset>, BaseAsset> {
|
|
@override
|
|
Future<List<RemoteAsset>> build(BaseAsset asset) {
|
|
if (asset is! RemoteAsset || asset.stackId == null) {
|
|
return Future.value(const []);
|
|
}
|
|
|
|
return ref.watch(assetServiceProvider).getStack(asset);
|
|
}
|
|
|
|
void setStack(List<RemoteAsset> stack) {
|
|
state = AsyncData(stack);
|
|
}
|
|
}
|
|
|
|
final stackChildrenNotifier = AsyncNotifierProvider.autoDispose
|
|
.family<StackChildrenNotifier, List<RemoteAsset>, BaseAsset>(StackChildrenNotifier.new);
|