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