Commit Graph
341 Commits
Author SHA1 Message Date
RevenueCat Git Bot 925c4a8577 Preparing for next version (#6782) 2026-05-14 08:58:12 +02:00
RevenueCat Git Bot 3188ebd13b Version bump for 5.73.0 (#6781) 2026-05-13 20:59:57 +02:00
RevenueCat Git Bot c845a60ce0 Preparing for next version (#6750) 2026-05-08 08:40:27 +02:00
RevenueCat Git Bot 2cbb6e80e7 [AUTOMATIC] Release/5.72.0 (#6749)
* Version bump for 5.72.0

* Update RevenueCat-Swift.h for version 5.72.0
2026-05-07 22:16:19 +02:00
RevenueCat Git Bot e0c2a7a047 Preparing for next version (#6741) 2026-05-07 07:03:45 +00:00
RevenueCat Git Bot 1ae0a9cd8f Version bump for 5.71.0 (#6740) 2026-05-07 08:50:23 +02:00
RevenueCat Git Bot d9121a7f6c Preparing for next version (#6719) 2026-04-30 14:34:03 +02:00
RevenueCat Git Bot ce418f56c4 [AUTOMATIC] Release/5.70.0 (#6714)
* Version bump for 5.70.0

* Update RevenueCat-Swift.h for version 5.70.0
2026-04-30 14:19:01 +02:00
RevenueCat Git Bot 54799570a5 Preparing for next version (#6676) 2026-04-23 10:28:24 +00:00
RevenueCat Git Bot 6eac8fd663 [AUTOMATIC] Release/5.69.0 (#6673)
* Version bump for 5.69.0

* Update RevenueCat-Swift.h for version 5.69.0
2026-04-23 12:16:57 +02:00
RevenueCat Git Bot d28d3ced0b Preparing for next version (#6619) 2026-04-16 09:54:37 +00:00
RevenueCat Git BotandCesar de la Vega 9f58e4190a [AUTOMATIC] Release/5.68.0 (#6617)
* Version bump for 5.68.0

* Revert PaywallsV2 header component addition

Revert addition of PaywallsV2 header component and update related entries.

* Update CHANGELOG.md

---------

Co-authored-by: Cesar de la Vega <664544+vegaro@users.noreply.github.com>
2026-04-16 11:43:43 +02:00
RevenueCat Git BotandToni Rico e16d775fbb Preparing for next version (#6573)
Co-authored-by: Toni Rico <toni.rico.diez@revenuecat.com>
2026-04-09 18:11:57 +00:00
RevenueCat Git Bot 36a2be6d3b Version bump for 5.67.2 (#6571) 2026-04-09 12:48:50 +02:00
RevenueCat Git Bot c5affa0bde Preparing for next version (#6546) 2026-04-02 11:52:48 +02:00
RevenueCat Git Bot 6caea73abf [AUTOMATIC] Release/5.67.1 (#6545)
* Version bump for 5.67.1

* Update RevenueCat-Swift.h for version 5.67.1
2026-04-02 11:40:47 +02:00
RevenueCat Git Bot b5cc386f96 Preparing for next version (#6521) 2026-03-26 15:42:51 +01:00
RevenueCat Git Bot 597d0dc968 Version bump for 5.67.0 (#6518) 2026-03-26 14:26:22 +01:00
RevenueCat Git BotandAntonio Pallares da297fedc8 Preparing for next version (#6479)
Co-authored-by: Antonio Pallares <ajpallares@users.noreply.github.com>
2026-03-19 07:13:37 +00:00
RevenueCat Git Bot 648da03146 Version bump for 5.66.0 (#6478) 2026-03-18 20:50:04 +01:00
RevenueCat Git Bot c82fd93cef Preparing for next version (#6468) 2026-03-16 20:12:52 +00:00
RevenueCat Git Bot 53901af6af [AUTOMATIC] Release/5.65.0 (#6467)
* Version bump for 5.65.0

* Update RevenueCat-Swift.h for version 5.65.0
2026-03-16 20:54:58 +01:00
RevenueCat Git Bot 51eef0e9ff Preparing for next version (#6457) 2026-03-13 11:31:30 +00:00
RevenueCat Git Bot 5600530989 Version bump for 5.64.0 (#6453) 2026-03-13 12:11:30 +01:00
RevenueCat Git Bot bfbca163c7 Preparing for next version (#6448) 2026-03-12 12:49:12 +00:00
RevenueCat Git Bot 674a8eac97 [AUTOMATIC] Release/5.63.0 (#6447)
* Version bump for 5.63.0

* Update RevenueCat-Swift.h for version 5.63.0
2026-03-12 13:29:21 +01:00
RevenueCat Git Bot 4d815a828d Preparing for next version (#6445) 2026-03-12 07:42:11 +00:00
RevenueCat Git Bot c720d7b1ae Version bump for 5.62.0 (#6432) 2026-03-12 08:16:45 +01:00
RevenueCat Git Bot 189b76aa6a Preparing for next version (#6418) 2026-03-09 09:01:03 +01:00
51f8f8f43a [AUTOMATIC] Release/5.61.0 (#6414)
* Version bump for 5.61.0

* Update RevenueCat-Swift.h for version 5.61.0

* Fix exit offer crash in MY_APP mode

* Fix exit offer crash in MY_APP mode

* fix deploy to spm

---------

Co-authored-by: Toni Rico <toni.rico.diez@revenuecat.com>
Co-authored-by: Cesar de la Vega <664544+vegaro@users.noreply.github.com>
2026-03-06 16:51:18 +01:00
993669c545 Add default/fallback paywall UI components and assets (#6342)
* Add color computation helpers for WCAG-compliant contrast calculations

Adds ColorComputationHelpers.swift with pure utility functions for:
- WCAG 2.1 relative luminance and contrast ratio calculations
- sRGB linearization (gamma correction removal)
- Platform-agnostic RGB component extraction
- Best-contrast color selection from a candidate set

These will be used by the upcoming fallback paywall to adaptively
choose text colors with sufficient contrast against backgrounds.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Add app style extractor for icon color extraction

Adds AppStyleExtractor which extracts the app icon, display name,
and prominent colors from the host app bundle. Uses pixel sampling
with color quantization to identify 1-2 dominant colors from the
app icon, filtering transparent/extreme brightness pixels.

Also adds:
- DualColorImageGenerator (DEBUG only) for creating deterministic
  test images with known color splits
- AppStyleExtractorTests covering accuracy for multiple color
  combinations and edge cases (nil, transparent, dark/bright)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* PR Feedback

* Create AppIconDetailProvider.swift

* Update project.pbxproj

* Remove duplicate instance methods and qualify test calls

Remove unreachable non-static instance methods from
ColorComputationHelpers enum (dead code left over from
global-to-enum conversion). Update tests to use qualified
ColorComputationHelpers.method() calls.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Add @MainActor, fix watchOS icon guards, fix typo

- Add @MainActor to AppIconDetailProvider since it is an
  ObservableObject with @Published properties
- Add #if !os(watchOS) guards in AppStyleExtractor for icon
  loading — watchOS app icons are system-managed with no
  runtime API to load them
- Fix toAppIconDetailprovider -> toAppIconDetailProvider typo

Co-authored-by: Cursor <cursoragent@cursor.com>

* correct use of main actor

* address cursor comment about brightness filter

* import Combine needed for watchos to compile and build -> @Published

* Add PaywallWarning model and validation documentation

Adds PaywallWarning enum that maps PaywallValidationError cases to
user-facing titles, body text, and help URLs linking to the
RevenueCat dashboard or docs. This model will power the debug
warning banner in the upcoming fallback paywall.

Also adds comprehensive documentation to PaywallData+Validation.swift
explaining each validation error case, when it occurs, and how to
resolve it.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Fix typo and add missing helpURL for missingLocalization

Fix "Unkown" -> "Unknown" in invalidTemplate title.
Add .missingLocalization to the helpURL case group so it
returns the paywalls docs URL instead of nil.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Add default/fallback paywall UI components and assets

Adds the complete UI layer for the fallback paywall:

- DefaultPaywallView: Main view with app icon, color-adaptive
  background gradient, package list, and purchase/restore buttons.
  Adapts text colors using WCAG contrast calculations against the
  extracted app icon colors.

- DefaultPaywallWarning: DEBUG-only error banner showing validation
  error details with links to the RevenueCat dashboard.

- DefaultProductCell: Radio-button-style package selection row
  showing product title and localized price.

- AppIconDetailProvider: ObservableObject managing async color
  extraction from the app icon.

- DefaultPaywallPreviews: DEBUG-only preview provider with 6+
  color variants and 4+ warning state previews.

- Media.xcassets: Warning illustration assets for the debug banner.

The view is self-contained and not yet wired into PaywallView.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Fix StateObject, error handling, and qualified calls

- Change @ObservedObject to @StateObject for appIconDetailProvider
  to prevent re-creation on parent re-renders
- Add do-catch to purchase/restore Task blocks so errors are not
  silently swallowed
- Qualify selectColorWithBestContrast calls with ColorComputationHelpers

Co-authored-by: Cursor <cursoragent@cursor.com>

* Fix typo call sites and add @MainActor to DefaultPaywallView

- Fix toAppIconDetailprovider -> toAppIconDetailProvider in
  all 10 preview call sites
- Add @MainActor to DefaultPaywallView to match MainActor-
  isolated AppIconDetailProvider
- Change iconDetailProvider param to optional with nil default
  so AppIconDetailProvider() is created inside the MainActor
  init body rather than as a default parameter expression

Co-authored-by: Cursor <cursoragent@cursor.com>

* Apply suggestion from @JZDesign

* simplify initializer

* trigger checks:

request-checks: true

* revert whatever the AI did…

* fix media inclusion

* attempt to appease iOS 15 compilers

* Add swiftlint rules to prevent the issue of state vars being set without wrapping it in a state object first

* Update RevenueCatUI.podspec

* Update DefaultPaywallView.swift

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-03-04 11:40:23 -06:00
RevenueCat Git Bot 174aa0d792 Preparing for next version (#6360) 2026-02-26 09:30:19 +01:00
RevenueCat Git Bot 54264a7996 Version bump for 5.60.0 (#6358) 2026-02-26 09:00:12 +01:00
RevenueCat Git Bot 998038930d Preparing for next version (#6305) 2026-02-19 20:21:34 +01:00
RevenueCat Git Bot ff2cc0fd45 Version bump for 5.59.2 (#6298) 2026-02-19 19:51:35 +01:00
RevenueCat Git Bot 2f94fb1d93 Preparing for next version (#6296) 2026-02-19 12:46:07 +01:00
RevenueCat Git Bot fdcac4362c Version bump for 5.59.1 (#6294) 2026-02-19 12:19:37 +01:00
RevenueCat Git Bot b08aba75ae Preparing for next version (#6262) 2026-02-13 17:12:55 +01:00
RevenueCat Git Bot be27b7ae8e Version bump for 5.59.0 (#6259) 2026-02-13 16:39:31 +01:00
RevenueCat Git Bot 8f299d1287 Preparing for next version (#6252) 2026-02-12 09:00:36 -08:00
RevenueCat Git Bot 71ac1d841a Version bump for 5.58.1 (#6246) 2026-02-12 17:22:54 +01:00
RevenueCat Git Bot 7d66f5d8a8 Preparing for next version (#6236) 2026-02-06 21:41:34 +01:00
RevenueCat Git Bot a3f2fe6e91 [AUTOMATIC] Release/5.58.0 (#6235)
* Version bump for 5.58.0

* Update RevenueCat-Swift.h for version 5.58.0
2026-02-06 13:48:15 -06:00
RevenueCat Git Bot f55e9b6454 Preparing for next version (#6232) 2026-02-06 17:12:49 +02:00
RevenueCat Git Bot 9da0ba01c8 [AUTOMATIC] Release/5.57.2 (#6231)
* Version bump for 5.57.2

* Update RevenueCat-Swift.h for version 5.57.2
2026-02-06 15:43:00 +01:00
RevenueCat Git Bot 3fdfe6832d Preparing for next version (#6206) 2026-02-05 10:01:41 +01:00
RevenueCat Git Bot e25c0c405c Version bump for 5.57.1 (#6197) 2026-02-05 09:35:30 +01:00
RevenueCat Git Bot 7f6cbc1f65 Preparing for next version (#6183) 2026-02-02 12:57:29 +01:00
RevenueCat Git Bot e0273f98bc [AUTOMATIC] Release/5.57.0 (#6181)
* Version bump for 5.57.0

* Update RevenueCat-Swift.h for version 5.57.0
2026-02-02 10:46:59 +01:00
RevenueCat Git Bot 2439a115af Preparing for next version (#6151) 2026-01-29 10:09:54 +01:00