UpgradeTarget enum
Where a paywalled user should be sent to resolve their limit.
This encodes the composition rules for B2B monetization:
- Solo users (not a member of any org) always manage their own subscription — on mobile via RevenueCat IAP, on web via Stripe.
- Org admins upgrade the org plan — on web via Stripe Checkout, on mobile via a "manage on web" explainer.
- Org members who aren't admins see a read-only "ask your admin" message with no purchase button. Apple/Google enterprise rules.
- Expired trial users get a stronger "trial over" visual regardless of the category above.
Values
- soloSubscription → const UpgradeTarget
-
Solo user on any platform →
/settings/subscription.The destination screen branches internally between RevenueCat IAP (mobile) and Stripe Checkout (web).
- orgBilling → const UpgradeTarget
-
Org admin →
/org/:orgId/billing.On web the billing screen offers Stripe Checkout; on mobile it shows the "billing is managed on the web" explainer with a link that opens in the OS browser.
- contactOrgAdmin → const UpgradeTarget
-
Org member (non-admin) → show a read-only "ask your admin" message with no CTA.
- none → const UpgradeTarget
-
Special case: no upgrade is possible because the user is signed out or anonymous.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- index → int
-
A numeric identifier for the enumerated value.
no setterinherited
- name → String
-
Available on Enum, provided by the EnumName extension
The name of the enum value.no setter - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Constants
-
values
→ const List<
UpgradeTarget> - A constant List of the values in this enum, in order of their declaration.