Breaking Changes
- Adds
PaywallInfo
toSuperwallDelegate
methodspaywallWillPresent(withInfo:)
,paywallDidPresent(withInfo:)
,paywallWillDismiss(withInfo:)
andpaywallDidDismiss(withInfo:)
. - Renames
SuperwallDelegate
methoddidTrackSuperwallEventInfo(_:SuperwallEventInfo)
tohandleSuperwallEvent(withInfo eventInfo: SuperwallEventInfo)
for clarity - Renames
SuperwallDelegate
methodswillOpenURL(url:)
andwillOpenDeepLink(url:)
topaywallWillOpenURL(url:)
andpaywallWillOpenDeepLink(url:)
respectively - Decouples associated value of
.dismissed
inSuperwall.shared.track()
closure toPaywallInfo
andDismissState
. - Changes
subscription_status_did_change
tosubscriptionStatus_didChange
. - Renames
TrackResult
toPresentationResult
Enhancements
- Introducing
Superwall.shared.register(event:params:handler:feature)
, Superwall's most powerful feature yet. Wrap your features with this method to conditionally show paywalls, lock features and more. - Adds a drawer display option which displays the paywall at 70% screen height on iOS 16 iPhones.
- Adds warning if setting subscription status without passing through a PurchaseController during config.
- Adds
$is_feature_gatable
standard property to register and track calls - Cleans up and reformats SDK logs
Fixes
- Fixes a long term bug where tracking an event to show a paywall and tracking an event that results in noRuleMatch would interfere with each other and cause the trigger session to be set to
nil
. This resulted in some paywall data being incorrect on the dashboard.