Commit Graph
505 Commits
Author SHA1 Message Date
Facundo Menzella 8cb6322184 feat: Add onClose handler support for CustomerCenter (#4850) 2025-03-04 21:34:53 +01:00
Josh Holtz 28aa6765ac Add activity indicator to restore purchases button behavior (#4848)
* Add activity indicator to restore purchases

* Start of smarter indicatoring

* Fixed

* Don't add progress indicators to all the things

* Fix pod lint
2025-03-04 09:40:31 -06:00
Antonio Pallares 81aaf6a051 Offering hasPaywall getter (#4847)
* feat: add `hasPaywall` getter to `Offering`

Returns `true` if the offering has either a v1 or a v2 paywall

* docs: update some methods references changing `PaywallData` with "paywall", as `PaywallData` only refers to v1 paywalls

* docs: improve reference of `Offering`'s `paywall` and `paywallComponents` to mention the new `hasPaywall` property

* lint

* tests: add unit tests that check the `hasPaywall` property of `Offering`

* api tests: add `paywallComponents` and `hasPaywall` to SwiftAPITester
2025-03-04 12:09:53 +01:00
Mark Villacampa 6322c486de Always use normal stack if the relevant axis size is fit (#4842) 2025-03-03 20:11:41 +01:00
Andy Boedo 18b758ca1e fixed an ambiguous reference in xcode beta (#4840) 2025-02-28 16:45:17 -03:00
Facundo Menzella 6b5c430082 chore: Enable force_unwrapping for SwiftLint (#4820)
* enable force_unwrapping

* avoid force unwrap

* fixed all errors

* remove extra disable
2025-02-26 12:40:49 +01:00
Facundo Menzella d2271db8c5 chore: Delete .orig file and ignore in git ignore (#4821)
* chore: Remove .orig file

* ignore orig files
2025-02-26 12:21:35 +01:00
Facundo Menzella 8c4bb07e08 feat: Hide refund for purchases in trial period (#4823) 2025-02-26 12:04:21 +01:00
Facundo Menzella c1e96e00d6 feat: Don't show refund if free subscription (#4805)
* Added refund_window

* missing tests

* feat: Support refund_window to hide refund path

* removed docs

* removed docs

* fixed previews

* fixed RC tests

* Update Tests/TestingApps/PaywallsTester/PaywallsTester/Config/ConfigItem.swift

* nits

* Use customercenter reuqested date

* feat: Don't show refund if free

* add comments

* requestDate from customerInfo
2025-02-25 13:31:58 +01:00
Facundo Menzella 75471965de feat: Introduce refund window to control if a refund is offered for a purchase (#4784) 2025-02-25 13:13:49 +01:00
JayShortway f9708b61fc Adds a note on publishing to the missing paywall error. (#4817) 2025-02-25 12:38:57 +01:00
Mark Villacampa 8d0475842a Use CSS linear-gradient spec to compute gradient start/end points (#4789) 2025-02-24 16:27:32 +01:00
Mark Villacampa aa746eeae5 [Paywalls] Add support for shadows in image components (#4797)
* Add support for shadows in image components

* add border support to image component

* fix
2025-02-24 15:02:26 +01:00
Mark Villacampa a57a32abd6 [Paywalls] Fix badge background not using the new background field instead of ba… (#4811)
* Fix badge background not using the new background field instead of backgroundColor

* switch order of background properties: background is preferred over backgroundColor
2025-02-24 12:39:27 +01:00
Will Taylor 33e0a78973 fix SDK compilation on Xcode 16.3 beta/iOS 18.4 beta 1 2025-02-22 06:38:31 -06:00
Facundo Menzella ed20901ae1 fix: [AppUpdateWarningView] Tweak buttons bottom alignment and padding (#4807) 2025-02-21 13:53:12 +01:00
Mark Villacampa 55d21a9042 fix onRestoreComplete callback not being called (#4803) 2025-02-20 21:48:48 +01:00
JayShortway 636ba9e414 Fixes parsing generic fonts. (#4801) 2025-02-20 11:11:27 +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
Facundo Menzella 2dfc56dd10 fix: Remove force unwrapping from PurchaseHistoryView (#4794)
* fix: Remove force unwrapping from PurchaseHistoryView

* Update .swiftlint.yml
2025-02-18 15:42:36 +01:00
Facundo Menzella 1de4d9e676 fix: Remove NavigationView/NavigationStack from AppWarningView (#4792) 2025-02-18 15:00:21 +01:00
498d7a8329 [AUTOMATIC] Release/5.17.0 (#4783)
* Version bump for 5.17.0

* Update RevenueCat-Swift.h for version 5.17.0

* fix FeedbackSurveyViewModelTests

* Group SwiftUI previews

---------

Co-authored-by: Cesar de la Vega <cesarvegaro@gmail.com>
Co-authored-by: Mark Villacampa <m@markvillacampa.com>
2025-02-17 17:32:16 +01:00
Josh Holtz b4c81d1ff6 [Paywalls V2] Carousel component (#4722)
* This mostly works

* Some cleanup and todos

* Fixed

* BROKEN but need to rebase

* The rework happened

* This is feeling pretty good

* This works

* Fix lint

* Oops

* Or this

* Removed size and implemented top and bottom pager

* Added a todo and compile error

* Made page control optional and added optional size that defaults to fit fit

* Fixes from PR review

* Fix podlint
2025-02-17 09:34:15 +01:00
Josh Holtz d2e9127b81 [Paywalls V2] Scroll fix for background/padding/border (#4788)
* A scroll fix for correct background/padding/border

* Fix lint
2025-02-14 13:07:29 -06:00
Josh Holtz 6331687993 [Paywalls V2] Add purchase button activity indicator (#4787)
* This mostly works

* Improved the code and added preview

* Add some comments and cleanup code

* More lint

* Make word for macos

* Maybe this

* This will work
2025-02-14 11:51:12 -06:00
Josh Holtz adaaf63a52 [Paywalls V2] Added overflow property to stack (#4767)
* works ish

* Added overflow property to stack

* Rename to default and make it work better
2025-02-14 07:52:51 -06:00
Josh Holtz 09f9646b6e [Paywalls V2] Add visible property to all components (and overrides to ones that were missing) (#4781)
* Visible property

* Added visible property to components

* Removed the EmptyView() from visibles which was necessary

* New VisisbleIfNeeded view

* Removed new VisibleIfNeeded view and made the thing apply functions a ViewBuilder

* Removed extra lint rule
2025-02-14 06:56:56 -06:00
Antonio Pallares 24ada6079b Add Internal support for draft paywall previews (#4761)
* feat: add support for presenting draft paywalls under `@_spi(Internal)` attribute

* fix: initialize `useDraftPaywall` property of `PaywallView`

* feat: have `PaywallView` actually show draft paywall when `useDraftPaywall` is `true`

* remove lint warning

* silence linter warning

* tests: add unit tests for `paywallComponents` and `draftPaywallComponents` in `OfferingsResponse`

* tests: move test offerings with v2 paywalls into a new file not to affect existing decode + encode test

* remove unnecessary property wrapper

* silence lint warning
2025-02-13 18:37:04 +01:00
Facundo Menzella 84172d47ef fix: Track impression in CustomerCenter only once (#4778)
* fix: Track impression in CustomerCenter only once

* add extra tracks
2025-02-12 16:54:29 +01:00
Josh Holtz 2cd5621736 Hooks up purchase handler preference keys for Paywalls V2 (#4780) 2025-02-12 07:22:40 -06:00
Cesar de la Vega ce5be1b895 Fix for survey answered event not being tracked when not setting a customerCenterActionHandler (#4777)
* fix event not being tracked

* add tests
2025-02-10 17:37:09 +01:00
Josh Holtz 7b8c11a1ed [Paywalls V2] Support generic fonts (#4766)
* Support generic fonts

* Removed unused efault

* This should fix pod lib lint issue
2025-02-07 15:24:25 -06:00
Josh Holtz b98555679e Fix period abbreviated when multiple days/weeks/months/years (#4769)
* Fix period abbreviated when multiple days/weeks/months/years

* This is much easier

* Ooops

* Removed uncessary stuff
2025-02-07 15:20:45 -06:00
Josh Holtz e0a5737b3d Fixed issues with finding some locales (ex: zh-Hans and zh-Hant) (#4771)
* Fixed issues with finding some locales

* Added tests

* PR review and one more safety check
2025-02-07 10:13:54 -06:00
Facundo Menzella 5354cbe62c feat: Dont show cancel path if lifetime subscription (#4755)
* feat: Dont show cancel path if lifetime subscription

* added variable + tests

* add lifetime sub check

* nits

* remove extra loding path

* Renamed isLifetime

* Added docs
2025-02-07 11:14:37 +01:00
Facundo Menzella ed529c9a66 feat: Enable cancellation in CustomerCenter for catalyst (#4768) 2025-02-07 11:13:13 +01:00
Will Taylor fcd71e1cf8 fix GradientView preview on iOS 15 2025-02-05 11:41:38 -06:00
Antonio Borrero Granell e3c08fd956 Rename to Web Billing (#4734) 2025-02-05 09:26:10 +01:00
Mark Villacampa 55dedb701d add extra gradient previews (#4750) 2025-01-30 07:30:23 -06:00
Josh Holtz cf8ae65bf7 Fix for footer bottom positioning and padding (#4746) 2025-01-30 06:34:42 -06:00
Mark Villacampa 5df8220b73 Fix ZStack alignment (#4748) 2025-01-30 12:44:03 +01:00
Josh Holtz ca12ad7c06 [Paywalls V2] Ignore top safe area edges for image (#4744)
* Ignore top safe area edges for image

* Fixed lint and supported more things

* These feels better I think

* Fix lint

* Fix from PR review
2025-01-30 05:04:56 -06:00
Mark Villacampa 4c957eadec [Paywalls] Add background property to Stack component (#4743)
* Add background property to Stack component which will supersede the backgroundColor property

* fix
2025-01-29 21:41:25 -06:00
Josh Holtz 56bf2c5101 [Paywalls V2] Support variable mapping (#4740)
* Support variable mapping

* Added support for variable mapping

* Better
2025-01-29 13:48:09 -06:00
Mark Villacampa 65916c8874 Do not embed the badge in an extra stack (#4742) 2025-01-29 19:43:37 +01: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 df8dc08ba1 fix: Revisit environment values for CustomerCenter (#4723) 2025-01-29 17:08:09 +01:00
Josh Holtz 0dc908e8da [Paywalls V2] Fix footer spacing issues (#4730)
* Fix footer spacing issues

* Fix lint
2025-01-29 08:38:24 -06:00
Facundo Menzella 5079d1323a fix: PaywalTester successful archive (#4736) 2025-01-29 13:31:30 +01:00