b45cb2a530
Paywall: - Redesigned PremiumView with yearly/monthly/lifetime side by side - 7-day free trial badge with savings % vs monthly - Social proof line, BEST VALUE highlight on yearly - StoreManager: new yearlyProduct, lifetimeProduct, yearlySavingsPercent, hasTrialAvailable Funnel: - Paywall step added to onboarding (PaywallStepView) - Contextual modal at dish limit (replaces silent block) - Visible "X/15 dishes" counter in DishListView - BottomPromoBanner rotates AdMob with internal "Remove ads" CTA (1 in 4) - Free dish limit lowered 20 → 15 - Review prompt earlier: 2 weeks → 1 week Analytics: - paywall_viewed/dismissed with source + seconds_on_screen - dish_limit_hit, week_limit_hit, free_trial_started events - Every PremiumView call site now passes its source StoreKit: - MealMood.storekit: added yearly $19.99 + 7d trial, monthly trial, lifetime $39.99 - AppStoreConnect-1.1.5-setup.md with full manual setup instructions Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
fastlane documentation
Installation
Make sure you have the latest version of the Xcode command line tools installed:
xcode-select --install
For fastlane installation instructions, see Installing fastlane
Available Actions
iOS
ios beta
[bundle exec] fastlane ios beta
Push a new beta build to TestFlight
ios release
[bundle exec] fastlane ios release
Push a new release build to the App Store
This README.md is auto-generated and will be re-generated every time fastlane is run.
More information about fastlane can be found on fastlane.tools.
The documentation of fastlane can be found on docs.fastlane.tools.