MCPcopy Create free account
hub / github.com/altic-dev/FluidVoice / FeedbackView

Struct FeedbackView

Sources/Fluid/UI/FeedbackView.swift:12–320  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

10import SwiftUI
11
12struct FeedbackView: View {
13 @Environment(\.theme) private var theme
14
15 // MARK: - State Variables (moved from ContentView)
16
17 @State private var feedbackText: String = ""
18 @State private var feedbackEmail: String = ""
19 @State private var includeDebugLogs: Bool = false
20 @State private var isSendingFeedback: Bool = false
21 @State private var showFeedbackConfirmation: Bool = false
22 @State private var showFeedbackError: Bool = false
23 @State private var feedbackErrorMessage: String = ""
24 @State private var appear: Bool = false
25
26 var body: some View {
27 ScrollView {
28 VStack(alignment: .leading, spacing: 20) {
29 // Header
30 VStack(alignment: .leading, spacing: 8) {
31 HStack {
32 Image(systemName: "envelope.fill")
33 .font(.system(size: 32))
34 .foregroundStyle(self.theme.palette.accent)
35 VStack(alignment: .leading) {
36 Text("Send Feedback")
37 .font(.system(size: 28, weight: .bold))
38 Text("Help us improve FluidVoice")
39 .font(.system(size: 16))
40 .foregroundStyle(.secondary)
41 }
42 }
43 }
44 .padding(.bottom, 8)
45
46 // Friendly Message & GitHub CTA
47 ThemedCard(style: .prominent, hoverEffect: false) {
48 VStack(alignment: .leading, spacing: 12) {
49 HStack(spacing: 12) {
50 Image(systemName: "heart.fill")
51 .font(.system(size: 28))
52 .foregroundStyle(.pink)
53
54 VStack(alignment: .leading, spacing: 4) {
55 Text("We'd love to hear from you!")
56 .font(.system(size: 18, weight: .semibold))
57 .foregroundStyle(self.theme.palette.primaryText)
58
59 Text("Your feedback helps us make FluidVoice even better")
60 .font(.system(size: 14))
61 .foregroundStyle(self.theme.palette.secondaryText)
62 }
63 }
64
65 Divider()
66 .padding(.vertical, 4)
67
68 HStack(spacing: 12) {
69 Image(systemName: "star.fill")

Callers 2

ContentViewStruct · 0.85
FeedbackView.swiftFile · 0.85

Calls 8

sendFeedbackMethod · 0.95
ThemedCardStruct · 0.85
GlassToggleStyleStruct · 0.85
CardAppearAnimationStruct · 0.85
buttonHoverEffectMethod · 0.80
fluidButtonMethod · 0.80
fillMethod · 0.80
onAppearMethod · 0.45

Tested by

no test coverage detected