fix(mobile): memory lane rebuild (#21350)

* avoid unnecessary timeline rebuild

* add key

* handle disabled memories

* avoid rebuild if no memories
This commit is contained in:
Mert 2025-08-27 22:16:41 -04:00 committed by GitHub
parent dc6ac3aaec
commit a5841a8bf4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 24 additions and 28 deletions

View file

@ -14,13 +14,12 @@ final driftMemoryServiceProvider = Provider<DriftMemoryService>(
(ref) => DriftMemoryService(ref.watch(driftMemoryRepositoryProvider)),
);
final driftMemoryFutureProvider = FutureProvider.autoDispose<List<DriftMemory>>((ref) async {
final user = ref.watch(currentUserProvider);
if (user == null) {
return [];
final driftMemoryFutureProvider = FutureProvider.autoDispose<List<DriftMemory>>((ref) {
final (userId, enabled) = ref.watch(currentUserProvider.select((user) => (user?.id, user?.memoryEnabled ?? true)));
if (userId == null || !enabled) {
return const [];
}
final service = ref.watch(driftMemoryServiceProvider);
return service.getMemoryLane(user.id);
return service.getMemoryLane(userId);
});