This commit is contained in:
Trey t
2022-12-23 11:20:33 -06:00
parent 488832b777
commit 2c8772f79a
7 changed files with 114 additions and 133 deletions

View File

@@ -81,9 +81,6 @@ struct DayView: View {
})
}
}
.onAppear{
iapManager.decideShowIAP()
}
}

View File

@@ -99,7 +99,6 @@ struct MonthView: View {
}
.onAppear(perform: {
EventLogger.log(event: "show_month_view")
iapManager.decideShowIAP()
})
.padding([.top])
.background(

View File

@@ -9,12 +9,6 @@ import SwiftUI
import StoreKit
struct PurchaseButtonView: View {
enum ViewStatus: String {
case needToBuy
case error
case success
case subscribed
}
@AppStorage(UserDefaultsStore.Keys.theme.rawValue, store: GroupUserDefaults.groupDefaults) private var theme: Theme = .system
@AppStorage(UserDefaultsStore.Keys.textColor.rawValue, store: GroupUserDefaults.groupDefaults) private var textColor: Color = DefaultTextColor.textColor
@AppStorage(UserDefaultsStore.Keys.firstLaunchDate.rawValue, store: GroupUserDefaults.groupDefaults) private var firstLaunchDate = Date()
@@ -24,15 +18,7 @@ struct PurchaseButtonView: View {
private let height: Float
private let showCountdownTimer: Bool
private let showManageSubClosure: (() -> Void)?
@State var isPurchasing: Bool = false
@State private var viewStatus: ViewStatus = .needToBuy {
didSet {
isPurchasing = false
}
}
public init(height: Float, iapManager: IAPManager, showManageSubClosure: (() -> Void)? = nil, showCountdownTimer: Bool = false) {
self.height = height
self.showManageSubClosure = showManageSubClosure
@@ -42,24 +28,15 @@ struct PurchaseButtonView: View {
var body: some View {
ZStack {
switch viewStatus {
case .needToBuy, .error:
switch iapManager.showIAP {
case true:
buyOptionsView
.frame(height: CGFloat(height))
.background(theme.currentTheme.secondaryBGColor)
case .success:
case false:
subscribedView
.frame(height: CGFloat(height))
.background(theme.currentTheme.secondaryBGColor)
case .subscribed:
subscribedView
.frame(height: CGFloat(height))
.background(theme.currentTheme.secondaryBGColor)
}
}
.onAppear{
if let _ = iapManager.currentSubscription {
viewStatus = .subscribed
}
}
}
@@ -173,21 +150,7 @@ struct PurchaseButtonView: View {
.frame(minWidth: 0, maxWidth: .infinity)
.background(.clear)
}
private var successView: some View {
HStack {
Text("it worked")
}
.background(.green)
}
private var errorView: some View {
HStack {
Text("something broke")
}
.background(.red)
}
private var subscribedView: some View {
VStack(alignment: .leading) {
Text(String(localized: "purchase_view_current_subscription"))
@@ -253,23 +216,9 @@ struct PurchaseButtonView: View {
.padding([.leading, .trailing])
}
private var purchasingView: some View {
HStack {
Text("purcasing")
}
.background(.yellow)
}
private func purchase(product: Product) {
isPurchasing = true
Task {
do {
if let _ = try await iapManager.purchase(product) {
viewStatus = .success
}
} catch {
viewStatus = .error
}
try await iapManager.purchase(product)
}
}
}

View File

@@ -77,7 +77,6 @@ struct SettingsView: View {
}
.onAppear(perform: {
EventLogger.log(event: "show_settings_view")
iapManager.setUpdateTimer()
})
.background(
theme.currentTheme.bg
@@ -162,7 +161,6 @@ struct SettingsView: View {
Spacer()
Button(action: {
EventLogger.log(event: "tap_settings_close")
iapManager.decideShowIAP()
dismiss()
}, label: {
Text(String(localized: "settings_view_exit"))
@@ -545,7 +543,7 @@ struct SettingsView: View {
if let windowScene = UIApplication.shared.connectedScenes.first as? UIWindowScene{
do {
try await StoreKit.AppStore.showManageSubscriptions(in: windowScene)
iapManager.refresh()
iapManager.updateEverything()
} catch {
print("Sheet can not be opened")
}

View File

@@ -74,7 +74,6 @@ struct YearView: View {
}
.onAppear(perform: {
self.viewModel.filterEntries(startDate: Date(timeIntervalSince1970: 0), endDate: Date())
iapManager.decideShowIAP()
})
.background(
theme.currentTheme.bg