import SwiftUI @MainActor @Observable final class PaywallViewModel { var selectedPlan = PaywallPlan(productID: SubscriptionProductID.yearly) func selectPlan(_ plan: PaywallPlan) { selectedPlan = plan } func syncSelectedPlan(with availablePlans: [PaywallPlan]) { guard !availablePlans.isEmpty else { return } if !availablePlans.contains(selectedPlan) { let yearly = PaywallPlan(productID: SubscriptionProductID.yearly) selectedPlan = availablePlans.contains(yearly) ? yearly : availablePlans[0] } } }