Confirmation of deleting events

This commit is contained in:
Selim Mustafaev 2025-02-16 22:10:24 +03:00
parent 495245427b
commit 237c6db863
2 changed files with 18 additions and 1 deletions

View File

@ -14,6 +14,8 @@ struct EventsScreen: View {
@State var viewModel: EventsViewModel @State var viewModel: EventsViewModel
@State var selectedEvent: EventModel? @State var selectedEvent: EventModel?
@State var deleteConfirmationPresented: Bool = false
@State var eventToDelete: EventModel?
init(viewModel: EventsViewModel) { init(viewModel: EventsViewModel) {
self.viewModel = viewModel self.viewModel = viewModel
@ -58,6 +60,18 @@ struct EventsScreen: View {
} message: { event in } message: { event in
Text(viewModel.getConfirmMessge(from: event)) Text(viewModel.getConfirmMessge(from: event))
} }
.confirmationDialog(eventToDelete?.address ?? "",
isPresented: $deleteConfirmationPresented,
titleVisibility: .visible) {
Button("Delete", role: .destructive) {
if let eventToDelete {
Task { await viewModel.deleteEvent(eventToDelete) }
}
}
} message: {
Text("Are you sure you want to delete this event?")
}
} }
@ -131,7 +145,8 @@ struct EventsScreen: View {
} }
Button(role: .destructive) { Button(role: .destructive) {
Task { await viewModel.deleteEvent(event) } eventToDelete = event
deleteConfirmationPresented = true
} label: { } label: {
Label(useLabels ? "Delete" : "", systemImage: "trash") Label(useLabels ? "Delete" : "", systemImage: "trash")
} }

View File

@ -419,3 +419,5 @@
"Open in Maps" = "Открыть на карте"; "Open in Maps" = "Открыть на карте";
"Something went wrong" = "Что-то пошло не так"; "Something went wrong" = "Что-то пошло не так";
"Are you sure you want to delete this event?" = "Вы уверены, что хотите удалить это событие?";