File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -51,6 +51,18 @@ final class SQLFavoriteManager {
5151 return result
5252 }
5353
54+ func deleteFavorites( ids: [ UUID ] ) async {
55+ for id in ids {
56+ let result = await storage. deleteFavorite ( id: id)
57+ if result {
58+ SyncChangeTracker . shared. markDeleted ( . favorite, id: id. uuidString)
59+ }
60+ }
61+ if !ids. isEmpty {
62+ postUpdateNotification ( )
63+ }
64+ }
65+
5466 func fetchFavorites(
5567 connectionId: UUID ? = nil ,
5668 folderId: UUID ? = nil ,
Original file line number Diff line number Diff line change @@ -128,6 +128,12 @@ final class FavoritesSidebarViewModel {
128128 }
129129 }
130130
131+ func deleteFavorites( _ favorites: [ SQLFavorite ] ) {
132+ Task {
133+ await manager. deleteFavorites ( ids: favorites. map ( \. id) )
134+ }
135+ }
136+
131137 func createFolder( parentId: UUID ? = nil ) {
132138 if let parentId {
133139 expandedFolderIds. insert ( parentId)
Original file line number Diff line number Diff line change @@ -101,9 +101,8 @@ struct FavoritesTabView: View {
101101 private func deleteSelectedFavorites( ) {
102102 let allFavorites = collectFavorites ( from: viewModel. treeItems)
103103 let toDelete = allFavorites. filter { selectedFavoriteIds. contains ( " fav- \( $0. id) " ) }
104- for fav in toDelete {
105- viewModel. deleteFavorite ( fav)
106- }
104+ guard !toDelete. isEmpty else { return }
105+ viewModel. deleteFavorites ( toDelete)
107106 selectedFavoriteIds. removeAll ( )
108107 }
109108
You can’t perform that action at this time.
0 commit comments