Refactor StoreKit 2 subscription system and add interactive vote widget
## StoreKit 2 Refactor - Rewrote IAPManager with clean enum-based state model (SubscriptionState) - Added native SubscriptionStoreView for iOS 17+ purchase UI - Subscription status now checked on every app launch - Synced subscription status to UserDefaults for widget access - Simplified PurchaseButtonView and IAPWarningView - Removed unused StatusInfoView ## Interactive Vote Widget - New FeelsVoteWidget with App Intents for mood voting - Subscribers can vote directly from widget, shows stats after voting - Non-subscribers see "Tap to subscribe" which opens subscription store - Added feels:// URL scheme for deep linking ## Firebase Removal - Commented out Firebase imports and initialization - EventLogger now prints to console in DEBUG mode only ## Other Changes - Added fallback for Core Data when App Group unavailable - Added new localization strings for subscription UI - Updated entitlements and Info.plist 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -6,10 +6,14 @@
|
||||
//
|
||||
|
||||
import Foundation
|
||||
import Firebase
|
||||
// import Firebase // Firebase removed
|
||||
|
||||
class EventLogger {
|
||||
static func log(event: String, withData data: [String: Any]? = nil) {
|
||||
Analytics.logEvent(event, parameters: data)
|
||||
// Firebase Analytics disabled
|
||||
// Analytics.logEvent(event, parameters: data)
|
||||
#if DEBUG
|
||||
print("[EventLogger] \(event)", data ?? "")
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user