From 187cc47da334ce055b6c31d4e720c90c37353878 Mon Sep 17 00:00:00 2001 From: Laurent Date: Tue, 17 Jun 2025 08:28:51 +0200 Subject: [PATCH] Adds a noSync way to delete tournaments --- PadelClubData/Data/DataStore.swift | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/PadelClubData/Data/DataStore.swift b/PadelClubData/Data/DataStore.swift index 45ed01e..f81af68 100644 --- a/PadelClubData/Data/DataStore.swift +++ b/PadelClubData/Data/DataStore.swift @@ -186,12 +186,20 @@ public class DataStore: ObservableObject { } - public func deleteTournament(_ tournament: Tournament) { + public func deleteTournament(_ tournament: Tournament, noSync: Bool = false) { let event = tournament.eventObject() let isLastTournament = event?.tournaments.count == 1 - self.tournaments.delete(instance: tournament) - if let event, isLastTournament { - self.events.delete(instance: event) + + if noSync { + self.tournaments.deleteNoSync(instance: tournament, cascading: true) + if let event, isLastTournament { + self.events.deleteNoSync(instance: event, cascading: true) + } + } else { + self.tournaments.delete(instance: tournament) + if let event, isLastTournament { + self.events.delete(instance: event) + } } StoreCenter.main.destroyStore(identifier: tournament.id) }