@tryheliumai/paywall-sdk-react-native 0.2.22 → 3.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/PaywallSdkReactNative.podspec +2 -2
  2. package/ios/HeliumSwiftInterface.swift +90 -76
  3. package/ios/RCTHeliumBridge.m +1 -0
  4. package/lib/commonjs/handlers/revenuecat.js +1 -1
  5. package/lib/commonjs/handlers/revenuecat.js.map +1 -1
  6. package/lib/commonjs/index.js +0 -18
  7. package/lib/commonjs/index.js.map +1 -1
  8. package/lib/commonjs/native-interface.js +81 -165
  9. package/lib/commonjs/native-interface.js.map +1 -1
  10. package/lib/commonjs/types.js +4 -0
  11. package/lib/commonjs/types.js.map +1 -1
  12. package/lib/module/handlers/revenuecat.js +1 -1
  13. package/lib/module/handlers/revenuecat.js.map +1 -1
  14. package/lib/module/index.js +1 -1
  15. package/lib/module/index.js.map +1 -1
  16. package/lib/module/native-interface.js +81 -161
  17. package/lib/module/native-interface.js.map +1 -1
  18. package/lib/module/types.js +4 -0
  19. package/lib/module/types.js.map +1 -1
  20. package/lib/typescript/commonjs/src/handlers/revenuecat.d.ts.map +1 -1
  21. package/lib/typescript/commonjs/src/index.d.ts +2 -2
  22. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  23. package/lib/typescript/commonjs/src/native-interface.d.ts +2 -21
  24. package/lib/typescript/commonjs/src/native-interface.d.ts.map +1 -1
  25. package/lib/typescript/commonjs/src/types.d.ts +102 -3
  26. package/lib/typescript/commonjs/src/types.d.ts.map +1 -1
  27. package/lib/typescript/module/src/handlers/revenuecat.d.ts.map +1 -1
  28. package/lib/typescript/module/src/index.d.ts +2 -2
  29. package/lib/typescript/module/src/index.d.ts.map +1 -1
  30. package/lib/typescript/module/src/native-interface.d.ts +2 -21
  31. package/lib/typescript/module/src/native-interface.d.ts.map +1 -1
  32. package/lib/typescript/module/src/types.d.ts +102 -3
  33. package/lib/typescript/module/src/types.d.ts.map +1 -1
  34. package/package.json +1 -1
  35. package/src/handlers/revenuecat.ts +0 -1
  36. package/src/index.ts +9 -3
  37. package/src/native-interface.tsx +105 -172
  38. package/src/types.ts +142 -5
@@ -15,16 +15,115 @@ export declare function createCustomPurchaseConfig(callbacks: {
15
15
  makePurchase: (productId: string) => Promise<HeliumPurchaseResult>;
16
16
  restorePurchases: () => Promise<boolean>;
17
17
  }): HeliumPurchaseConfig;
18
+ export type TriggerLoadingConfig = {
19
+ /** Whether to show loading state for this trigger. Set to nil to use the global `useLoadingState` setting. */
20
+ useLoadingState?: boolean;
21
+ /** Maximum seconds to show loading for this trigger. Set to nil to use the global `loadingBudget` setting. */
22
+ loadingBudget?: number;
23
+ };
24
+ export type HeliumPaywallLoadingConfig = {
25
+ /**
26
+ * Whether to show a loading state while fetching paywall configuration.
27
+ * When true, shows a loading view for up to `loadingBudget` seconds before falling back.
28
+ * Default: true
29
+ */
30
+ useLoadingState?: boolean;
31
+ /**
32
+ * Maximum time (in seconds) to show the loading state before displaying fallback.
33
+ * After this timeout, the fallback view will be shown even if the paywall is still downloading.
34
+ * Default: 2.0 seconds
35
+ */
36
+ loadingBudget?: number;
37
+ /**
38
+ * Optional per-trigger loading configuration overrides.
39
+ * Use this to customize loading behavior for specific triggers.
40
+ * Keys are trigger names, values are TriggerLoadingConfig instances.
41
+ * Example: Disable loading for "onboarding" trigger while keeping it for others.
42
+ */
43
+ perTriggerLoadingConfig?: Record<string, TriggerLoadingConfig>;
44
+ };
45
+ export interface PaywallEventHandlers {
46
+ onOpen?: (event: PaywallOpenEvent) => void;
47
+ onClose?: (event: PaywallCloseEvent) => void;
48
+ onDismissed?: (event: PaywallDismissedEvent) => void;
49
+ onPurchaseSucceeded?: (event: PurchaseSucceededEvent) => void;
50
+ }
51
+ export interface PaywallOpenEvent {
52
+ type: 'paywallOpen';
53
+ triggerName: string;
54
+ paywallName: string;
55
+ isSecondTry: boolean;
56
+ viewType?: 'presented' | 'embedded' | 'triggered';
57
+ }
58
+ export interface PaywallCloseEvent {
59
+ type: 'paywallClose';
60
+ triggerName: string;
61
+ paywallName: string;
62
+ isSecondTry: boolean;
63
+ }
64
+ export interface PaywallDismissedEvent {
65
+ type: 'paywallDismissed';
66
+ triggerName: string;
67
+ paywallName: string;
68
+ isSecondTry: boolean;
69
+ }
70
+ export interface PurchaseSucceededEvent {
71
+ type: 'purchaseSucceeded';
72
+ productId: string;
73
+ triggerName: string;
74
+ paywallName: string;
75
+ isSecondTry: boolean;
76
+ }
77
+ export type HeliumPaywallEvent = {
78
+ type: 'paywallOpen' | 'paywallClose' | 'paywallDismissed' | 'paywallOpenFailed' | 'paywallSkipped' | 'paywallButtonPressed' | 'productSelected' | 'purchasePressed' | 'purchaseSucceeded' | 'purchaseCancelled' | 'purchaseFailed' | 'purchaseRestored' | 'purchaseRestoreFailed' | 'purchasePending' | 'initializeStart' | 'paywallsDownloadSuccess' | 'paywallsDownloadError' | 'paywallWebViewRendered';
79
+ triggerName?: string;
80
+ paywallName?: string;
81
+ /**
82
+ * @deprecated Use `paywallName` instead.
83
+ */
84
+ paywallTemplateName?: string;
85
+ productId?: string;
86
+ /**
87
+ * @deprecated Use `productId` instead.
88
+ */
89
+ productKey?: string;
90
+ ctaName?: string;
91
+ paywallDownloadTimeTakenMS?: number;
92
+ templateDownloadTimeTakenMS?: number;
93
+ imagesDownloadTimeTakenMS?: number;
94
+ stylesDownloadTimeTakenMS?: number;
95
+ fontsDownloadTimeTakenMS?: number;
96
+ bundleDownloadTimeMS?: number;
97
+ dismissAll?: boolean;
98
+ isSecondTry?: boolean;
99
+ error?: string;
100
+ /**
101
+ * @deprecated Use `error` instead.
102
+ */
103
+ errorDescription?: string;
104
+ /**
105
+ * Unix timestamp in seconds
106
+ */
107
+ timestamp?: number;
108
+ };
109
+ export type PresentUpsellParams = {
110
+ triggerName: string;
111
+ /** Optional. This will be called when paywall fails to show due to an unsuccessful paywall download or if an invalid trigger is provided. */
112
+ onFallback?: () => void;
113
+ eventHandlers?: PaywallEventHandlers;
114
+ customPaywallTraits?: Record<string, any>;
115
+ };
18
116
  export interface HeliumConfig {
19
117
  /** Your Helium API Key */
20
118
  apiKey: string;
21
119
  /** Configuration for handling purchases. Can be custom functions or a pre-built handler config. */
22
120
  purchaseConfig: HeliumPurchaseConfig;
23
121
  /** Callback for receiving all Helium paywall events. */
24
- onHeliumPaywallEvent: (event: any) => void;
25
- fallbackView?: number;
122
+ onHeliumPaywallEvent: (event: HeliumPaywallEvent) => void;
123
+ /** Fallback bundle in the rare situation that paywall is not ready to be shown. Highly recommended. See docs at https://docs.tryhelium.com/guides/fallback-bundle#react-native */
26
124
  fallbackBundle?: object;
27
- triggers?: string[];
125
+ /** Configure loading behavior for paywalls that are mid-download. */
126
+ paywallLoadingConfig?: HeliumPaywallLoadingConfig;
28
127
  customUserId?: string;
29
128
  customAPIEndpoint?: string;
30
129
  customUserTraits?: Record<string, any>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,uBAAuB,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,CAAC;AACpG,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,QAAQ,GAAG,YAAY,GAAG,YAAY,CAAC;AAItF,8DAA8D;AAE9D,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnE,gBAAgB,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAEzC,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAGD,wBAAgB,0BAA0B,CAAC,SAAS,EAAE;IACpD,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnE,gBAAgB,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1C,GAAG,oBAAoB,CAKvB;AAGD,MAAM,WAAW,YAAY;IAC3B,0BAA0B;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,mGAAmG;IACnG,cAAc,EAAE,oBAAoB,CAAC;IACrC,wDAAwD;IACxD,oBAAoB,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAG3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACvC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAID,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,WAAW;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,OAAO,CAAC;CACrB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,uBAAuB,GAC/B,WAAW,GACX,QAAQ,GACR,WAAW,GACX,SAAS,GACT,UAAU,CAAC;AACf,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,oBAAoB,GAC5B,SAAS,GACT,QAAQ,GACR,YAAY,GACZ,YAAY,CAAC;AAIjB,8DAA8D;AAE9D,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnE,gBAAgB,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAEzC,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAGD,wBAAgB,0BAA0B,CAAC,SAAS,EAAE;IACpD,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnE,gBAAgB,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1C,GAAG,oBAAoB,CAKvB;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,8GAA8G;IAC9G,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,8GAA8G;IAC9G,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;CAChE,CAAC;AAGF,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC3C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC7C,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACrD,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAC;CAC/D;AAGD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,aAAa,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,WAAW,GAAG,UAAU,GAAG,WAAW,CAAC;CACnD;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,cAAc,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,kBAAkB,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EACA,aAAa,GACb,cAAc,GACd,kBAAkB,GAClB,mBAAmB,GACnB,gBAAgB,GAChB,sBAAsB,GACtB,iBAAiB,GACjB,iBAAiB,GACjB,mBAAmB,GACnB,mBAAmB,GACnB,gBAAgB,GAChB,kBAAkB,GAClB,uBAAuB,GACvB,iBAAiB,GACjB,iBAAiB,GACjB,yBAAyB,GACzB,uBAAuB,GACvB,wBAAwB,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,6IAA6I;IAC7I,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC3C,CAAC;AAGF,MAAM,WAAW,YAAY;IAC3B,0BAA0B;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,mGAAmG;IACnG,cAAc,EAAE,oBAAoB,CAAC;IACrC,wDAAwD;IACxD,oBAAoB,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAG1D,kLAAkL;IAClL,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,oBAAoB,CAAC,EAAE,0BAA0B,CAAC;IAClD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACvC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAID,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,WAAW;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,OAAO,CAAC;CACrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"revenuecat.d.ts","sourceRoot":"","sources":["../../../../../src/handlers/revenuecat.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAU3E,wBAAgB,8BAA8B,CAAC,MAAM,CAAC,EAAE;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,oBAAoB,CAOvB;AAED,qBAAa,uBAAuB;IAChC,OAAO,CAAC,yBAAyB,CAAwC;IACzE,OAAO,CAAC,oBAAoB,CAAkB;IAC9C,OAAO,CAAC,qBAAqB,CAA8B;IAE3D,OAAO,CAAC,yBAAyB,CAA6C;gBAElE,MAAM,CAAC,EAAE,MAAM;YAQb,wBAAwB;YAyBxB,wBAAwB;IAQhC,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA+EpE,OAAO,CAAC,eAAe;IAMjB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC;CAS7C"}
1
+ {"version":3,"file":"revenuecat.d.ts","sourceRoot":"","sources":["../../../../../src/handlers/revenuecat.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAU3E,wBAAgB,8BAA8B,CAAC,MAAM,CAAC,EAAE;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,oBAAoB,CAOvB;AAED,qBAAa,uBAAuB;IAChC,OAAO,CAAC,yBAAyB,CAAwC;IACzE,OAAO,CAAC,oBAAoB,CAAkB;IAC9C,OAAO,CAAC,qBAAqB,CAA8B;IAE3D,OAAO,CAAC,yBAAyB,CAA6C;gBAElE,MAAM,CAAC,EAAE,MAAM;YAOb,wBAAwB;YAyBxB,wBAAwB;IAQhC,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA+EpE,OAAO,CAAC,eAAe;IAMjB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC;CAS7C"}
@@ -1,4 +1,4 @@
1
1
  export { createCustomPurchaseConfig } from './types';
2
- export { HeliumProvider, initialize, presentUpsell, hideUpsell, hideAllUpsells, getPaywallInfo, handleDeepLink, UpsellView, HELIUM_CTA_NAMES, useHelium, NativeHeliumUpsellView, } from './native-interface';
3
- export type { HeliumTransactionStatus, HeliumConfig, HeliumUpsellViewProps, } from './types';
2
+ export { initialize, presentUpsell, hideUpsell, hideAllUpsells, getPaywallInfo, handleDeepLink, HELIUM_CTA_NAMES, NativeHeliumUpsellView, } from './native-interface';
3
+ export type { HeliumTransactionStatus, HeliumConfig, HeliumUpsellViewProps, HeliumPaywallLoadingConfig, TriggerLoadingConfig, PaywallEventHandlers, PaywallOpenEvent, PaywallCloseEvent, PaywallDismissedEvent, PurchaseSucceededEvent, HeliumPaywallEvent, PresentUpsellParams, } from './types';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,EACL,cAAc,EACd,UAAU,EACV,aAAa,EACb,UAAU,EACV,cAAc,EACd,cAAc,EACd,cAAc,EACd,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,uBAAuB,EACvB,YAAY,EACZ,qBAAqB,GACtB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,EACL,UAAU,EACV,aAAa,EACb,UAAU,EACV,cAAc,EACd,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,uBAAuB,EACvB,YAAY,EACZ,qBAAqB,EACrB,0BAA0B,EAC1B,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,SAAS,CAAC"}
@@ -1,33 +1,14 @@
1
- import React from 'react';
2
- import type { HeliumConfig, HeliumUpsellViewProps, HeliumDownloadStatus, PaywallInfo } from './types';
1
+ import type { HeliumConfig, HeliumUpsellViewProps, HeliumDownloadStatus, PaywallInfo, PresentUpsellParams } from './types';
3
2
  export declare const NativeHeliumUpsellView: import("react-native").HostComponent<HeliumUpsellViewProps>;
4
3
  export declare const getDownloadStatus: () => HeliumDownloadStatus;
5
- interface HeliumContextType {
6
- downloadStatus: HeliumDownloadStatus;
7
- setDownloadStatus: (status: HeliumDownloadStatus) => void;
8
- }
9
- export declare const useHelium: () => HeliumContextType;
10
- interface HeliumProviderProps {
11
- children: React.ReactNode;
12
- fallbackView?: React.ComponentType;
13
- }
14
- export declare const HeliumProvider: ({ children, fallbackView }: HeliumProviderProps) => import("react/jsx-runtime").JSX.Element;
15
4
  export declare const initialize: (config: HeliumConfig) => Promise<void>;
16
- export declare const presentUpsell: ({ triggerName, onFallback, }: {
17
- triggerName: string;
18
- onFallback?: () => void;
19
- }) => void;
5
+ export declare const presentUpsell: ({ triggerName, onFallback, eventHandlers, customPaywallTraits, }: PresentUpsellParams) => void;
20
6
  export declare const hideUpsell: () => void;
21
7
  export declare const hideAllUpsells: () => void;
22
8
  export declare const getPaywallInfo: (trigger: string) => Promise<PaywallInfo | undefined>;
23
9
  export declare const handleDeepLink: (url: string | null) => Promise<boolean>;
24
- export declare const UpsellView: React.FC<HeliumUpsellViewProps & {
25
- fallbackViewProps?: Record<string, any>;
26
- fallbackViewWrapperStyles?: Record<string, any>;
27
- }>;
28
10
  export declare const HELIUM_CTA_NAMES: {
29
11
  SCHEDULE_CALL: string;
30
12
  SUBSCRIBE_BUTTON: string;
31
13
  };
32
- export {};
33
14
  //# sourceMappingURL=native-interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"native-interface.d.ts","sourceRoot":"","sources":["../../../../src/native-interface.tsx"],"names":[],"mappings":"AACA,OAAO,KAAoE,MAAM,OAAO,CAAC;AACzF,OAAO,KAAK,EAAE,YAAY,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAOtG,eAAO,MAAM,sBAAsB,6DAAoE,CAAC;AAoBxG,eAAO,MAAM,iBAAiB,4BAA6B,CAAC;AAG5D,UAAU,iBAAiB;IACzB,cAAc,EAAE,oBAAoB,CAAC;IACrC,iBAAiB,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;CAC3D;AAYD,eAAO,MAAM,SAAS,yBAMrB,CAAC;AAEF,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CACpC;AAQD,eAAO,MAAM,cAAc,+BAAgC,mBAAmB,4CAwC7E,CAAC;AAGF,eAAO,MAAM,UAAU,WAAkB,YAAY,kBAuHpD,CAAC;AAGF,eAAO,MAAM,aAAa,iCAGvB;IACD,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB,SAsBA,CAAC;AAEF,eAAO,MAAM,UAAU,YAEtB,CAAC;AAEF,eAAO,MAAM,cAAc,YAE1B,CAAC;AAEF,eAAO,MAAM,cAAc,YAChB,MAAM,KACd,OAAO,CAAC,WAAW,GAAG,SAAS,CAiBjC,CAAC;AAEF,eAAO,MAAM,cAAc,QAAe,MAAM,GAAG,IAAI,KAAG,OAAO,CAAC,OAAO,CASxE,CAAC;AAGF,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,GAAG;IACxD,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACxC,yBAAyB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACjD,CAmCA,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;CAG5B,CAAA"}
1
+ {"version":3,"file":"native-interface.d.ts","sourceRoot":"","sources":["../../../../src/native-interface.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,WAAW,EACX,mBAAmB,EAGpB,MAAM,SAAS,CAAC;AAMjB,eAAO,MAAM,sBAAsB,6DACgC,CAAC;AAMpE,eAAO,MAAM,iBAAiB,4BAA6B,CAAC;AAM5D,eAAO,MAAM,UAAU,WAAkB,YAAY,kBA8GpD,CAAC;AAIF,eAAO,MAAM,aAAa,qEAKvB,mBAAmB,SA0BrB,CAAC;AAwDF,eAAO,MAAM,UAAU,YAEtB,CAAC;AAEF,eAAO,MAAM,cAAc,YAE1B,CAAC;AAEF,eAAO,MAAM,cAAc,YAChB,MAAM,KACd,OAAO,CAAC,WAAW,GAAG,SAAS,CAiBjC,CAAC;AAEF,eAAO,MAAM,cAAc,QAAe,MAAM,GAAG,IAAI,KAAG,OAAO,CAAC,OAAO,CAWxE,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;CAG5B,CAAC"}
@@ -15,16 +15,115 @@ export declare function createCustomPurchaseConfig(callbacks: {
15
15
  makePurchase: (productId: string) => Promise<HeliumPurchaseResult>;
16
16
  restorePurchases: () => Promise<boolean>;
17
17
  }): HeliumPurchaseConfig;
18
+ export type TriggerLoadingConfig = {
19
+ /** Whether to show loading state for this trigger. Set to nil to use the global `useLoadingState` setting. */
20
+ useLoadingState?: boolean;
21
+ /** Maximum seconds to show loading for this trigger. Set to nil to use the global `loadingBudget` setting. */
22
+ loadingBudget?: number;
23
+ };
24
+ export type HeliumPaywallLoadingConfig = {
25
+ /**
26
+ * Whether to show a loading state while fetching paywall configuration.
27
+ * When true, shows a loading view for up to `loadingBudget` seconds before falling back.
28
+ * Default: true
29
+ */
30
+ useLoadingState?: boolean;
31
+ /**
32
+ * Maximum time (in seconds) to show the loading state before displaying fallback.
33
+ * After this timeout, the fallback view will be shown even if the paywall is still downloading.
34
+ * Default: 2.0 seconds
35
+ */
36
+ loadingBudget?: number;
37
+ /**
38
+ * Optional per-trigger loading configuration overrides.
39
+ * Use this to customize loading behavior for specific triggers.
40
+ * Keys are trigger names, values are TriggerLoadingConfig instances.
41
+ * Example: Disable loading for "onboarding" trigger while keeping it for others.
42
+ */
43
+ perTriggerLoadingConfig?: Record<string, TriggerLoadingConfig>;
44
+ };
45
+ export interface PaywallEventHandlers {
46
+ onOpen?: (event: PaywallOpenEvent) => void;
47
+ onClose?: (event: PaywallCloseEvent) => void;
48
+ onDismissed?: (event: PaywallDismissedEvent) => void;
49
+ onPurchaseSucceeded?: (event: PurchaseSucceededEvent) => void;
50
+ }
51
+ export interface PaywallOpenEvent {
52
+ type: 'paywallOpen';
53
+ triggerName: string;
54
+ paywallName: string;
55
+ isSecondTry: boolean;
56
+ viewType?: 'presented' | 'embedded' | 'triggered';
57
+ }
58
+ export interface PaywallCloseEvent {
59
+ type: 'paywallClose';
60
+ triggerName: string;
61
+ paywallName: string;
62
+ isSecondTry: boolean;
63
+ }
64
+ export interface PaywallDismissedEvent {
65
+ type: 'paywallDismissed';
66
+ triggerName: string;
67
+ paywallName: string;
68
+ isSecondTry: boolean;
69
+ }
70
+ export interface PurchaseSucceededEvent {
71
+ type: 'purchaseSucceeded';
72
+ productId: string;
73
+ triggerName: string;
74
+ paywallName: string;
75
+ isSecondTry: boolean;
76
+ }
77
+ export type HeliumPaywallEvent = {
78
+ type: 'paywallOpen' | 'paywallClose' | 'paywallDismissed' | 'paywallOpenFailed' | 'paywallSkipped' | 'paywallButtonPressed' | 'productSelected' | 'purchasePressed' | 'purchaseSucceeded' | 'purchaseCancelled' | 'purchaseFailed' | 'purchaseRestored' | 'purchaseRestoreFailed' | 'purchasePending' | 'initializeStart' | 'paywallsDownloadSuccess' | 'paywallsDownloadError' | 'paywallWebViewRendered';
79
+ triggerName?: string;
80
+ paywallName?: string;
81
+ /**
82
+ * @deprecated Use `paywallName` instead.
83
+ */
84
+ paywallTemplateName?: string;
85
+ productId?: string;
86
+ /**
87
+ * @deprecated Use `productId` instead.
88
+ */
89
+ productKey?: string;
90
+ ctaName?: string;
91
+ paywallDownloadTimeTakenMS?: number;
92
+ templateDownloadTimeTakenMS?: number;
93
+ imagesDownloadTimeTakenMS?: number;
94
+ stylesDownloadTimeTakenMS?: number;
95
+ fontsDownloadTimeTakenMS?: number;
96
+ bundleDownloadTimeMS?: number;
97
+ dismissAll?: boolean;
98
+ isSecondTry?: boolean;
99
+ error?: string;
100
+ /**
101
+ * @deprecated Use `error` instead.
102
+ */
103
+ errorDescription?: string;
104
+ /**
105
+ * Unix timestamp in seconds
106
+ */
107
+ timestamp?: number;
108
+ };
109
+ export type PresentUpsellParams = {
110
+ triggerName: string;
111
+ /** Optional. This will be called when paywall fails to show due to an unsuccessful paywall download or if an invalid trigger is provided. */
112
+ onFallback?: () => void;
113
+ eventHandlers?: PaywallEventHandlers;
114
+ customPaywallTraits?: Record<string, any>;
115
+ };
18
116
  export interface HeliumConfig {
19
117
  /** Your Helium API Key */
20
118
  apiKey: string;
21
119
  /** Configuration for handling purchases. Can be custom functions or a pre-built handler config. */
22
120
  purchaseConfig: HeliumPurchaseConfig;
23
121
  /** Callback for receiving all Helium paywall events. */
24
- onHeliumPaywallEvent: (event: any) => void;
25
- fallbackView?: number;
122
+ onHeliumPaywallEvent: (event: HeliumPaywallEvent) => void;
123
+ /** Fallback bundle in the rare situation that paywall is not ready to be shown. Highly recommended. See docs at https://docs.tryhelium.com/guides/fallback-bundle#react-native */
26
124
  fallbackBundle?: object;
27
- triggers?: string[];
125
+ /** Configure loading behavior for paywalls that are mid-download. */
126
+ paywallLoadingConfig?: HeliumPaywallLoadingConfig;
28
127
  customUserId?: string;
29
128
  customAPIEndpoint?: string;
30
129
  customUserTraits?: Record<string, any>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,uBAAuB,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,CAAC;AACpG,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,QAAQ,GAAG,YAAY,GAAG,YAAY,CAAC;AAItF,8DAA8D;AAE9D,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnE,gBAAgB,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAEzC,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAGD,wBAAgB,0BAA0B,CAAC,SAAS,EAAE;IACpD,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnE,gBAAgB,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1C,GAAG,oBAAoB,CAKvB;AAGD,MAAM,WAAW,YAAY;IAC3B,0BAA0B;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,mGAAmG;IACnG,cAAc,EAAE,oBAAoB,CAAC;IACrC,wDAAwD;IACxD,oBAAoB,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAG3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACvC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAID,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,WAAW;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,OAAO,CAAC;CACrB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tryheliumai/paywall-sdk-react-native",
3
- "version": "0.2.22",
3
+ "version": "3.0.3",
4
4
  "description": "Paywall SDK Helium",
5
5
  "source": "./src/index.ts",
6
6
  "main": "./lib/commonjs/index.js",
@@ -33,7 +33,6 @@ export class RevenueCatHeliumHandler {
33
33
  constructor(apiKey?: string) {
34
34
  if (apiKey) {
35
35
  Purchases.configure({ apiKey });
36
- } else {
37
36
  }
38
37
  this.initializePackageMapping();
39
38
  }
package/src/index.ts CHANGED
@@ -1,16 +1,13 @@
1
1
  export { createCustomPurchaseConfig } from './types';
2
2
 
3
3
  export {
4
- HeliumProvider,
5
4
  initialize,
6
5
  presentUpsell,
7
6
  hideUpsell,
8
7
  hideAllUpsells,
9
8
  getPaywallInfo,
10
9
  handleDeepLink,
11
- UpsellView,
12
10
  HELIUM_CTA_NAMES,
13
- useHelium,
14
11
  NativeHeliumUpsellView,
15
12
  } from './native-interface';
16
13
 
@@ -18,4 +15,13 @@ export type {
18
15
  HeliumTransactionStatus,
19
16
  HeliumConfig,
20
17
  HeliumUpsellViewProps,
18
+ HeliumPaywallLoadingConfig,
19
+ TriggerLoadingConfig,
20
+ PaywallEventHandlers,
21
+ PaywallOpenEvent,
22
+ PaywallCloseEvent,
23
+ PaywallDismissedEvent,
24
+ PurchaseSucceededEvent,
25
+ HeliumPaywallEvent,
26
+ PresentUpsellParams,
21
27
  } from './types';