Commit Graph
254 Commits
Author SHA1 Message Date
Facundo Menzella 8cb6322184 feat: Add onClose handler support for CustomerCenter (#4850) 2025-03-04 21:34:53 +01:00
Antonio Pallares 69fa618a9f fix: correctly set PaywallsTester app API key by the CI (#4822) 2025-02-26 08:36:17 +01:00
Antonio Pallares 1af9f8f6f4 fix: consider empty strings in proxyURL parameters in Local.xcconfig (#4818) 2025-02-25 11:03:25 +01:00
Antonio Pallares f208ea1c30 fix: workaround to allow using proxyURL in Local.xcconfig (#4810) 2025-02-24 10:43:57 +01:00
Antonio Pallares b077e9e0b9 Config item rename (#4798)
* add deeper explanation to `refreshableDisabled()` modifier introduce in #4793

* refactor: rename `ConfigItem` to `Constants` in PaywallsTester app

* fix lint warnings
2025-02-19 12:41:15 +01:00
Antonio Pallares 7785df9afb Fix paywall refreshable bug (#4793)
* add refreshable action to paywalls list in PaywallsTester app

* fix: disable refreshable action in PaywallView

* chore: add comment explaining why `refreshable` action was added to `APIKeyDashboardList`
2025-02-19 10:08:19 +01:00
Antonio Pallares af30b55cae Use RC API key for local development from local.xcconfig (#4795)
* feat: have testing apps take RevenueCat API key and Proxy URL from local.xcconfig file

* fix wording mistakes in `Local.xcconfig.SAMPLE`

* chore: include `ConfigItem.swift` file in `verify_no_included_apikeys` check

* fix more mistakes in comments
2025-02-19 09:48:25 +01:00
Josh Holtz 2cd5621736 Hooks up purchase handler preference keys for Paywalls V2 (#4780) 2025-02-12 07:22:40 -06:00
Josh Holtz f1c4205c56 [Paywalls V2] Add full cover option to Paywalls Tester (#4745)
* Adds full cover option to paywalls tester

* Fixes from PR
2025-01-30 05:34:58 -06:00
Josh Holtz 3d86d7dbbb [Paywalls V2] Remove/replace PAYWALL_COMPONENTS compiler flag and fix OS/platform compile issues (#4727)
* We can't just remove PAYWALL_COMPONENT because we don't support macos and tv and things were failing

* Move PartialComponent outside of PaywallComponent extension

* Fix some lint errors

* Wrong thing

* Undid things i shouldn't have done

* Removed more

* Added comment

* Removed/fix some places for the check thingies

* RevenueCat module compiles on all the things

* RevenueCatUI compiles in all the platforms now

* Make all the things compile again

* Make work for visionOS

* Fix some platform and xcode version issues

* Fix failing spm ios 15 test

* Undo circleci changes

* Replace smooth with easeInOut

* Only run the thing i want

* Attempt to remove circular

* Explicit returns

* Does this pass

* This is it

* Swift 5.9 for this

* All tests again

* Undid public testing processor stuff

* Undo this too

* Swift compiler check out pill style circular

* Fixes from PR review

* Fix compile for mac
2025-01-29 11:53:25 -06:00
Facundo Menzella 5079d1323a fix: PaywalTester successful archive (#4736) 2025-01-29 13:31:30 +01:00
Josh Holtz cf47528c81 [Paywalls V2] Rename paywallFooter to originalTemplatePaywallFooter (#4721)
* Deprecate paywallFooter for paywallFooterForV1

* Updated some comments

* Fix lint

* Rename to originalTemplatePaywallFooter
2025-01-28 06:02:15 -06:00
Facundo Menzella 1669e30b3b feat: Add paywall tester examples for simpler testing (#4710) 2025-01-27 17:48:02 +01:00
Cody Kerns 7bca3bc39c Add convenience method for setting PostHog User ID (#4679) 2025-01-17 09:04:05 -05:00
Josh Holtz 0e37a9cf42 [Paywalls V2] Optionalizing padding, margin, and corner radius properties for safety (#4644)
* I thought I removed this change but did so oops

* Optional properties on padding/margin for safety

* Optionalizing properties that can easily default to zero for safety
2025-01-09 12:05:58 -06:00
Josh Holtz 069df52867 [Paywalls V2] Decode rectangle corners as optional (#4640)
* Decode rectangle corners as optional

* And fix for shape

* Added tests
2025-01-09 11:16:20 -06:00
Mark Villacampa 7f22a15c2d [Paywalls] Fix PaywallTester build (#4636) 2025-01-07 17:46:19 +01:00
Josh Holtz f6f365b7cd Fix some border math for overlapping borders (#4523) 2024-12-12 11:18:37 -06:00
Mark Villacampa 2fdafa3116 [Paywals] Update paywalls tester Package.resolved (#4570) 2024-12-11 16:15:13 +01:00
Mark Villacampa e05feb4885 [Paywalls] Fix iOS 13/14 tests (#4568) 2024-12-11 14:59:40 +01:00
Cesar de la Vega 14880e44b7 Fix paywalls tester build in main (#4565) 2024-12-10 10:41:17 +01:00
Will Taylor 451b8cfbfd expose Customer Center to UIKit 2024-12-09 13:02:41 -06:00
Cesar de la Vega 2bb7bd80e6 Revert "Remove PaywallsTesterTests" (#4557) 2024-12-06 13:34:37 +01:00
RevenueCat Git BotandCesar de la Vega 2cf1535646 [AUTOMATIC] Release/5.13.0 (#4545)
Co-authored-by: Cesar de la Vega <cesarvegaro@gmail.com>
2024-12-06 13:16:27 +01:00
Toni Rico c24de73950 WebPurchaseRedemption: Rename alreadyRedeemed result to purchaseBelongsToOtherUser (#4542) 2024-12-05 17:44:08 +01:00
Mark Villacampa 9b98944292 [Paywalls] Fix PaywallTester compilation on Xcode 15 (#4540) 2024-12-04 21:22:51 +01:00
33a718cd44 [Paywalls] Add Emerge Snapshot Tests (#4529)
* Add preview test target (#4405)

* Fix crashing preview (#4406)

* Build test app (#4407)

* Add emerge_purchases_ui_snapshot_tests circleci job

* Enable PAYWALL_COMPONENTS compilation condition when building paywalls tester for emerge

* fix fastfile

* Set emerge snapshot dependency up to next major and include PaywallsTesterTests file in main xcodeproj

* dont run emerge snapshot tests on every PR

* Update .circleci/config.yml

Co-authored-by: Josh Holtz <me@joshholtz.com>

* Update fastlane/Fastfile

Co-authored-by: Josh Holtz <me@joshholtz.com>

* run snapshot tests on every PR

* fix ci

---------

Co-authored-by: Noah Martin <noahm444@gmail.com>
Co-authored-by: Josh Holtz <me@joshholtz.com>
2024-12-03 21:36:32 +01:00
Toni Rico d3aa9768df Add new view modifier to redeem web purchases (#4446) 2024-11-25 17:21:46 +01:00
98e4a33225 Support anonymous web purchase redemptions (#4439)
Co-authored-by: RevenueCat Git Bot <72824662+RCGitBot@users.noreply.github.com>
Co-authored-by: andy boedo <andresboedo@gmail.com>
Co-authored-by: Cesar de la Vega <cesarvegaro@gmail.com>
2024-11-25 16:14:32 +01:00
Mark Villacampa c85c6ecb62 [Paywalls] Add button and shortcut to refresh the presented live paywall (#4509)
* [Paywalls] Add button and shortcut to refresh the presented live paywall

* use swift task instead of GCD
2024-11-21 21:36:23 +01:00
Will Taylor f46bea2565 fix transaction metadata in purchase tester app 2024-11-20 17:51:08 -06:00
Will Taylor 6a363db8df make PurchaseParams & Win-Back APIs public 2024-11-19 13:18:21 -06:00
Josh Holtz 60e3bca6d4 Enable Paywall Tester to build with Paywalls V2 (#4487)
* DON'T COMMIT THIS

* Maybe this

* Maybe this

* This will do it

* This should do it

* Oops, remove one more thing

* One more time

* One more time

* Maybe this

* Ths is it
2024-11-13 16:14:32 -06:00
Josh Holtz 15dfde21ff Fix paywalls tester for non-v2 (#4481) 2024-11-13 10:25:37 -06:00
Mark Villacampa bc05121219 [Paywalls V2] Fix typo in CI script (#4480)
* Enable PAYWALL_COMPONENTS compiler flag when building PaywallTestes in Xcode Cloud

* typo
2024-11-13 22:50:56 +07:00
Mark Villacampa e61c5719c1 Enable PAYWALL_COMPONENTS compiler flag when building PaywallTestes in Xcode Cloud (#4479) 2024-11-13 09:35:56 -06:00
Josh Holtz 9ab56917b7 [Paywalls V2] Store decoding errors in individual paywall (instead of failing entire offerings response) (#4473)
* Better strat logic around flex and lazy stacks

* Add Package.resolved again

* Store decoding errors in individual paywall

* Fix lint
2024-11-13 06:52:46 -06:00
Josh Holtz 44dde1eebb Part 1: Respec color (#4468) 2024-11-11 14:12:02 -06:00
Josh Holtz 7f513b92bd Create paywall component view models in a factory (#4455)
* Fixes for paywall tester

* Some previewer fixes when testing

* Frozen and lint

* Updated some spec values

* Remove @frozen

* Factory pattern for the view models

* Paywalls v2 factory works
2024-11-07 20:14:40 -06:00
Josh Holtz 319fde3af6 Fixes for paywalls v2 renderer after testing some real life paywalls (#4436)
* Fixes for paywall tester

* Some previewer fixes when testing

* Frozen and lint

* Updated some spec values

* Remove @frozen
2024-11-07 09:07:19 -06:00
Mark VillacampaandToni Rico 72b06f6943 Introduce PurchaseParams to allow passing extra configuration info when making a purchase (#4400)
* Introduce PurchaseParams to allow passing extra configuration info when making a purchase

* simplify naming

* fallback to old method when flag is not enabled

* Add $(inherited) to the test targets so they pick up compiler flags from Local.xcconfig

* Include product/package inside PurchaseParams

* fix tests

* add compiler flag check

* update purchase tester

* fix docs

* add tests

* Update Sources/Networking/Operations/PostReceiptDataOperation.swift

Co-authored-by: Toni Rico <toni.rico.diez@revenuecat.com>

---------

Co-authored-by: Toni Rico <toni.rico.diez@revenuecat.com>
2024-11-06 16:05:37 +07:00
Toni Rico a4e42e6d0a Add tenjinAnalyticsInstallationId setter property (#4437) 2024-11-05 09:39:34 +01:00
Josh Holtz 54f45839b9 Apply state and conditions ONLY for text component (#4417)
* Improved JSON format for ButtonComponent codables

* Started to remove PackageGroup

* Removed PackageGroup and added Template 5 SwiftUI preview

* Remove PackageGroup

* Fixed some thread, lint, and selection stuff

* PurchaseButton is now a stack like button

* Added image partials

* Added stack partials

* Apply localized partials (state and conditions) for text component

* Added visible and updated example in paywalls tester to test things out

* A bit more cleanup

* Code improvements

* Fix tests and lint

* Partials are now in one ComponenOverrides struct with states, conditions, and intro offer

* Improvements

* Fix lint
2024-11-01 10:08:07 -05:00
Josh Holtz 4586c43da3 PurchaseButtonComponent is now just a container/stack like ButtonComponent (#4415)
* Improved JSON format for ButtonComponent codables

* Started to remove PackageGroup

* Removed PackageGroup and added Template 5 SwiftUI preview

* Remove PackageGroup

* Fixed some thread, lint, and selection stuff

* PurchaseButton is now a stack like button

* Passing onDismiss

* Lint
2024-10-31 13:27:38 -05:00
Josh Holtz ee3fb188f3 Remove PackageGroup (#4413)
* Improved JSON format for ButtonComponent codables

* Started to remove PackageGroup

* Removed PackageGroup and added Template 5 SwiftUI preview

* Remove PackageGroup

* Fixed some thread, lint, and selection stuff

* Made renames and some code improvements
2024-10-31 10:46:23 -05:00
JayShortway 3dfd43ef2b The StackComponent has an optional shadow (#4429) 2024-10-31 14:32:34 +01:00
JayShortway 2ad11a5d87 Adds long sample paywall with sticky footer to PaywallsTester (#4412) 2024-10-30 15:35:55 +01:00
JayShortway 714d7eabe5 Adds scaffolding for StickyFooterComponent (#4409) 2024-10-28 18:02:28 +01:00
Cesar de la Vega cb9d5fc67a Fix PaywallsTester compilation (#4389) 2024-10-21 13:16:24 +02:00
Josh Holtz 17529fa0e9 Paywall component containers are all stacks (#4380)
* Root paywalls is/has a stack

* Stacks on stacks

* Cleaned up some left over

* Removed commented out thing
2024-10-18 11:52:02 -05:00