|
@@ -115,35 +115,60 @@ struct SidebarView: View {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private var upgradeButton: some View {
|
|
private var upgradeButton: some View {
|
|
|
- Button(action: {}) {
|
|
|
|
|
- HStack(spacing: 8) {
|
|
|
|
|
- Image(systemName: "sparkles")
|
|
|
|
|
- .font(.system(size: 13, weight: .semibold))
|
|
|
|
|
- .foregroundStyle(AppTheme.accent)
|
|
|
|
|
|
|
+ VStack(spacing: 0) {
|
|
|
|
|
+ VStack(spacing: 5) {
|
|
|
|
|
+ Image(systemName: "crown.fill")
|
|
|
|
|
+ .font(.system(size: 15))
|
|
|
|
|
+ .foregroundStyle(AppTheme.upgradeCrown)
|
|
|
|
|
|
|
|
- Text("Upgrade to pro")
|
|
|
|
|
- .font(.system(size: 13, weight: .semibold))
|
|
|
|
|
|
|
+ Text("Unlock Pro")
|
|
|
|
|
+ .font(.system(size: 13, weight: .bold))
|
|
|
.foregroundStyle(AppTheme.textPrimary)
|
|
.foregroundStyle(AppTheme.textPrimary)
|
|
|
|
|
|
|
|
- Spacer()
|
|
|
|
|
-
|
|
|
|
|
- Image(systemName: "chevron.right")
|
|
|
|
|
- .font(.system(size: 10, weight: .bold))
|
|
|
|
|
- .foregroundStyle(AppTheme.textSecondary)
|
|
|
|
|
|
|
+ Text("Upgrade to Pro for unlimited chats, advanced AI models, and all features.")
|
|
|
|
|
+ .font(.system(size: 10))
|
|
|
|
|
+ .foregroundStyle(AppTheme.upgradeDescription)
|
|
|
|
|
+ .multilineTextAlignment(.center)
|
|
|
|
|
+ .lineSpacing(1)
|
|
|
|
|
+ .fixedSize(horizontal: false, vertical: true)
|
|
|
}
|
|
}
|
|
|
- .padding(.horizontal, 14)
|
|
|
|
|
- .padding(.vertical, 12)
|
|
|
|
|
- .background(
|
|
|
|
|
- RoundedRectangle(cornerRadius: AppTheme.cornerRadiusMedium, style: .continuous)
|
|
|
|
|
- .stroke(AppTheme.accent.opacity(0.45), lineWidth: 1)
|
|
|
|
|
- .background(
|
|
|
|
|
- RoundedRectangle(cornerRadius: AppTheme.cornerRadiusMedium, style: .continuous)
|
|
|
|
|
- .fill(Color.white)
|
|
|
|
|
- )
|
|
|
|
|
- )
|
|
|
|
|
|
|
+ .padding(.horizontal, 10)
|
|
|
|
|
+ .padding(.top, 12)
|
|
|
|
|
+ .padding(.bottom, 10)
|
|
|
|
|
+
|
|
|
|
|
+ Button(action: {}) {
|
|
|
|
|
+ HStack(spacing: 4) {
|
|
|
|
|
+ Text("Upgrade Now")
|
|
|
|
|
+ .font(.system(size: 12, weight: .bold))
|
|
|
|
|
+ Image(systemName: "arrow.up.right")
|
|
|
|
|
+ .font(.system(size: 9, weight: .bold))
|
|
|
|
|
+ }
|
|
|
|
|
+ .foregroundStyle(AppTheme.accentDark)
|
|
|
|
|
+ .frame(maxWidth: .infinity)
|
|
|
|
|
+ .padding(.vertical, 8)
|
|
|
|
|
+ .background(
|
|
|
|
|
+ RoundedRectangle(cornerRadius: 8, style: .continuous)
|
|
|
|
|
+ .fill(Color.white)
|
|
|
|
|
+ )
|
|
|
|
|
+ .overlay(
|
|
|
|
|
+ RoundedRectangle(cornerRadius: 8, style: .continuous)
|
|
|
|
|
+ .stroke(AppTheme.upgradeButtonBorder, lineWidth: 1)
|
|
|
|
|
+ )
|
|
|
|
|
+ }
|
|
|
|
|
+ .buttonStyle(.plain)
|
|
|
|
|
+ .padding(.horizontal, 10)
|
|
|
|
|
+ .padding(.bottom, 10)
|
|
|
|
|
+ .accessibilityLabel("Upgrade Now")
|
|
|
}
|
|
}
|
|
|
- .buttonStyle(.plain)
|
|
|
|
|
- .accessibilityLabel("Upgrade to pro")
|
|
|
|
|
|
|
+ .background(
|
|
|
|
|
+ RoundedRectangle(cornerRadius: 10, style: .continuous)
|
|
|
|
|
+ .fill(AppTheme.upgradeCardBackground)
|
|
|
|
|
+ )
|
|
|
|
|
+ .overlay(
|
|
|
|
|
+ RoundedRectangle(cornerRadius: 10, style: .continuous)
|
|
|
|
|
+ .stroke(AppTheme.upgradeBorder, lineWidth: 1)
|
|
|
|
|
+ )
|
|
|
|
|
+ .accessibilityElement(children: .contain)
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|