1.0.0 for iOS is ready to ship

This commit is contained in:
2025-09-14 23:07:32 -06:00
parent 61384623bd
commit ff9f0d6cc6
33 changed files with 2646 additions and 251 deletions

View File

@@ -1,9 +1,3 @@
//
// SessionsView.swift
// OpenClimb
//
// Created by OpenClimb on 2025-01-17.
//
import Combine
import SwiftUI
@@ -127,6 +121,7 @@ struct ActiveSessionBanner: View {
struct SessionsList: View {
@EnvironmentObject var dataManager: ClimbingDataManager
@State private var sessionToDelete: ClimbSession?
private var completedSessions: [ClimbSession] {
dataManager.sessions
@@ -139,8 +134,29 @@ struct SessionsList: View {
NavigationLink(destination: SessionDetailView(sessionId: session.id)) {
SessionRow(session: session)
}
.swipeActions(edge: .trailing, allowsFullSwipe: false) {
Button(role: .destructive) {
sessionToDelete = session
} label: {
Label("Delete", systemImage: "trash")
}
}
}
.alert("Delete Session", isPresented: .constant(sessionToDelete != nil)) {
Button("Cancel", role: .cancel) {
sessionToDelete = nil
}
Button("Delete", role: .destructive) {
if let session = sessionToDelete {
dataManager.deleteSession(session)
sessionToDelete = nil
}
}
} message: {
Text(
"Are you sure you want to delete this session? This will also delete all attempts associated with this session."
)
}
.listStyle(.plain)
}
}
@@ -179,7 +195,7 @@ struct SessionRow: View {
.lineLimit(2)
}
}
.padding(.vertical, 4)
.padding(.vertical, 8)
}
private func formatDate(_ date: Date) -> String {