import SwiftUI import ProxyCore struct MoreView: View { @Environment(AppState.self) private var appState var body: some View { List { Section { NavigationLink { SetupGuideView() } label: { Label { VStack(alignment: .leading) { Text("Setup Guide") Text(setupStatusText) .font(.caption) .foregroundStyle(setupStatusColor) } } icon: { Image(systemName: "checkmark.shield.fill") .foregroundStyle(setupStatusColor) } } NavigationLink { CertificateView() } label: { Label("Certificate", systemImage: "lock.shield") } } Section("Rules") { NavigationLink { SSLProxyingListView() } label: { Label("SSL Proxying List", systemImage: "lock.fill") } NavigationLink { BlockListView() } label: { Label("Block List", systemImage: "xmark.shield") } NavigationLink { MapLocalView() } label: { Label("Map Local", systemImage: "doc.on.doc") } NavigationLink { NoCachingView() } label: { Label("No Caching", systemImage: "arrow.clockwise.circle") } NavigationLink { DNSSpoofingView() } label: { Label("DNS Spoofing", systemImage: "network") } NavigationLink { PinnedDomainsView() } label: { Label("Pinned Domains", systemImage: "pin.slash") } } Section("Settings") { NavigationLink { AdvancedSettingsView() } label: { Label("Advanced", systemImage: "gearshape.2") } NavigationLink { AppSettingsView() } label: { Label("App Settings", systemImage: "gearshape") } NavigationLink { AppLockView() } label: { Label("App Lock", systemImage: "lock.fill") } } } .navigationTitle("More") } private var setupStatusText: String { if appState.isHTTPSInspectionVerified { return "HTTPS Verified" } if appState.isVPNConnected && appState.hasSharedCertificate { return "Ready to Capture" } return "Setup Required" } private var setupStatusColor: Color { if appState.isVPNConnected && appState.hasSharedCertificate { return .green } return .orange } }