From 4552df375a539ed9b229058fd703b55ed30e9c5b Mon Sep 17 00:00:00 2001 From: LeoLox <58687994+leo-lox@users.noreply.github.com> Date: Thu, 12 Dec 2024 13:14:30 +0100 Subject: [PATCH] use cache for deletion --- .../repositories/note_repository_impl.dart | 5 +++-- lib/domain_layer/repositories/note_repository.dart | 1 + lib/domain_layer/usecases/user_reactions.dart | 12 +++++++----- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/lib/data_layer/repositories/note_repository_impl.dart b/lib/data_layer/repositories/note_repository_impl.dart index 2d2cd5a..dd40a90 100644 --- a/lib/data_layer/repositories/note_repository_impl.dart +++ b/lib/data_layer/repositories/note_repository_impl.dart @@ -237,6 +237,7 @@ class NoteRepositoryImpl implements NoteRepository { Future> getReactions({ required String postId, required List authors, + bool useCache = false, }) async { ndk.Filter filter = ndk.Filter( eTags: [postId], @@ -248,8 +249,8 @@ class NoteRepositoryImpl implements NoteRepository { timeout: Duration(seconds: 5), filters: [filter], name: 'getReactions-${postId.substring(5, 10)}-', - cacheRead: false, - cacheWrite: false, + cacheRead: useCache, + cacheWrite: useCache, ); final events = await response.future; diff --git a/lib/domain_layer/repositories/note_repository.dart b/lib/domain_layer/repositories/note_repository.dart index 405b614..e5c8714 100644 --- a/lib/domain_layer/repositories/note_repository.dart +++ b/lib/domain_layer/repositories/note_repository.dart @@ -65,6 +65,7 @@ abstract class NoteRepository { Future> getReactions({ required String postId, required List authors, + bool useCache = false, }); Future> getReposts({ diff --git a/lib/domain_layer/usecases/user_reactions.dart b/lib/domain_layer/usecases/user_reactions.dart index dedac18..0ca4eba 100644 --- a/lib/domain_layer/usecases/user_reactions.dart +++ b/lib/domain_layer/usecases/user_reactions.dart @@ -25,11 +25,10 @@ class UserReactions { Future isPostLiked({ required String likedByPubkey, required String postId, + bool useCache = false, }) async { final reactions = await _noteRepository.getReactions( - postId: postId, - authors: [likedByPubkey], - ); + postId: postId, authors: [likedByPubkey], useCache: useCache); if (reactions.isEmpty) { return null; } @@ -74,8 +73,11 @@ class UserReactions { } // get the reaction to delete - final reaction = - await isPostLiked(likedByPubkey: selfPubkey!, postId: postId); + final reaction = await isPostLiked( + likedByPubkey: selfPubkey!, + postId: postId, + useCache: true, + ); if (reaction == null) { throw Exception("Reaction not found"); }