@tryheliumai/paywall-sdk-react-native 0.2.18 → 0.2.20
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.
- package/PaywallSdkReactNative.podspec +1 -1
- package/README.md +7 -183
- package/ios/HeliumSwiftInterface.swift +69 -4
- package/ios/RCTHeliumBridge.m +10 -0
- package/lib/commonjs/index.js +6 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/native-interface.js +36 -8
- package/lib/commonjs/native-interface.js.map +1 -1
- package/lib/commonjs/types.js.map +1 -1
- package/lib/module/index.js +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/native-interface.js +33 -6
- package/lib/module/native-interface.js.map +1 -1
- package/lib/module/types.js.map +1 -1
- package/lib/typescript/commonjs/src/index.d.ts +1 -1
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/native-interface.d.ts +2 -1
- package/lib/typescript/commonjs/src/native-interface.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/types.d.ts +1 -0
- package/lib/typescript/commonjs/src/types.d.ts.map +1 -1
- package/lib/typescript/module/src/index.d.ts +1 -1
- package/lib/typescript/module/src/index.d.ts.map +1 -1
- package/lib/typescript/module/src/native-interface.d.ts +2 -1
- package/lib/typescript/module/src/native-interface.d.ts.map +1 -1
- package/lib/typescript/module/src/types.d.ts +1 -0
- package/lib/typescript/module/src/types.d.ts.map +1 -1
- package/package.json +5 -1
- package/src/index.ts +1 -0
- package/src/native-interface.tsx +56 -19
- package/src/types.ts +3 -2
|
@@ -16,7 +16,7 @@ Pod::Spec.new do |s|
|
|
|
16
16
|
|
|
17
17
|
s.source_files = "ios/**/*.{h,m,mm,swift}"
|
|
18
18
|
|
|
19
|
-
s.dependency 'Helium', '2.0
|
|
19
|
+
s.dependency 'Helium', '2.1.0'
|
|
20
20
|
|
|
21
21
|
# Use install_modules_dependencies helper to install the dependencies if React Native version >=0.71.0.
|
|
22
22
|
# See https://github.com/facebook/react-native/blob/febf6b7f33fdb4904669f99d795eba4c0f95d7bf/scripts/cocoapods/new_architecture.rb#L79.
|
package/README.md
CHANGED
|
@@ -1,190 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
# paywall-sdk-react-native
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Helium is an upsell experimentation and optimization platform for mobile apps of all sizes.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## How to Integrate
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Follow our [official documentation here](https://docs.tryhelium.com/sdk/quickstart-react-native) to integrate Helium into your React Native app!
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
## Contributing
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
npm install @tryheliumai/paywall-sdk-react-native
|
|
13
|
-
# or
|
|
14
|
-
yarn add @tryheliumai/paywall-sdk-react-native
|
|
15
|
-
```
|
|
11
|
+
### Run the Example Project
|
|
16
12
|
|
|
17
|
-
|
|
13
|
+
TODO - get example project working
|
|
18
14
|
|
|
19
|
-
```bash
|
|
20
|
-
npx react-native link @tryheliumai/paywall-sdk-react-native
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
### Expo installation
|
|
24
|
-
|
|
25
|
-
If you're using Expo's managed workflow, you can install the package by adding it to your project:
|
|
26
|
-
|
|
27
|
-
```bash
|
|
28
|
-
npx expo install @tryheliumai/paywall-sdk-react-native
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
We recommend using Helium with Expo 49 and up. If you're an on older version and having trouble migrating, ping us - we've got experience\
|
|
32
|
-
with all kinds of versioning, upgrade, and custom build plugin work.
|
|
33
|
-
|
|
34
|
-
## **Configuration**
|
|
35
|
-
|
|
36
|
-
### Wrap things in a `HeliumProvider`
|
|
37
|
-
|
|
38
|
-
Wrap a suitably root-y component with `HeliumProvider`. We recommend wrapping your navigation provider, but placing HeliumProvider UNDER your sentry error boundary, to make sure
|
|
39
|
-
errors get logged.
|
|
40
|
-
|
|
41
|
-
```tsx
|
|
42
|
-
import { HeliumProvider } from '@tryheliumai/paywall-sdk-react-native';
|
|
43
|
-
|
|
44
|
-
function App() {
|
|
45
|
-
return (
|
|
46
|
-
<HeliumProvider>
|
|
47
|
-
<YourAppComponent />
|
|
48
|
-
</HeliumProvider>
|
|
49
|
-
);
|
|
50
|
-
}
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
### Initialization
|
|
54
|
-
|
|
55
|
-
Initialize Helium by calling `initialize()` early in your app's lifecycle, typically in your root component.
|
|
56
|
-
`initialize` takes in a configuration object that includes your purchase config, event handlers, and other settings.
|
|
57
|
-
|
|
58
|
-
```tsx
|
|
59
|
-
import { initialize, createRevenueCatPurchaseConfig, createCustomPurchaseConfig } from '@tryheliumai/paywall-sdk-react-native';
|
|
60
|
-
|
|
61
|
-
function App() {
|
|
62
|
-
useEffect(() => {
|
|
63
|
-
initialize({
|
|
64
|
-
// Helium provided api key
|
|
65
|
-
apiKey: '<your-helium-api-key>',
|
|
66
|
-
|
|
67
|
-
// Custom user id - e.g. your amplitude analytics user id.
|
|
68
|
-
customUserId: '<your-custom-user-id>',
|
|
69
|
-
|
|
70
|
-
// Purchase configuration (see next section if using RevenueCat)
|
|
71
|
-
purchaseConfig: createCustomPurchaseConfig({
|
|
72
|
-
makePurchase: async (productId) => {
|
|
73
|
-
// Your purchase logic here
|
|
74
|
-
return { status: 'purchased' };
|
|
75
|
-
},
|
|
76
|
-
restorePurchases: async () => {
|
|
77
|
-
// Your restore logic here
|
|
78
|
-
return true;
|
|
79
|
-
}
|
|
80
|
-
}),
|
|
81
|
-
|
|
82
|
-
// Event handler for paywall events
|
|
83
|
-
onHeliumPaywallEvent: (event) => {
|
|
84
|
-
switch (event.type) {
|
|
85
|
-
case 'paywallOpen':
|
|
86
|
-
break;
|
|
87
|
-
case 'ctaPressed':
|
|
88
|
-
if (event.ctaName === HELIUM_CTA_NAMES.SCHEDULE_CALL) {
|
|
89
|
-
// Handle schedule call
|
|
90
|
-
}
|
|
91
|
-
break;
|
|
92
|
-
case 'subscriptionSucceeded':
|
|
93
|
-
// Handle successful subscription
|
|
94
|
-
break;
|
|
95
|
-
}
|
|
96
|
-
},
|
|
97
|
-
|
|
98
|
-
// Custom user traits
|
|
99
|
-
customUserTraits: {
|
|
100
|
-
"example_trait": "example_value",
|
|
101
|
-
},
|
|
102
|
-
|
|
103
|
-
});
|
|
104
|
-
}, []);
|
|
105
|
-
}
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
#### Use RevenueCat with Helium
|
|
109
|
-
|
|
110
|
-
**Important** Make sure that you've already:
|
|
111
|
-
|
|
112
|
-
- installed and configured RevenueCat's `Purchases` client - if not, follow [`https://www.revenuecat.com/docs/getting-started/configuring-sdk`](https://www.revenuecat.com/docs/getting-started/configuring-sdk) for more details.
|
|
113
|
-
- have packages configured for each apple app store SKU
|
|
114
|
-
- assigned one of your Offerings as "default"
|
|
115
|
-
- initialize RevenueCat (`Purchases.configure()`) _before_ initializing Helium
|
|
116
|
-
|
|
117
|
-
```javascript
|
|
118
|
-
import { createRevenueCatPurchaseConfig, HELIUM_CTA_NAMES } from '@tryheliumai/paywall-sdk-react-native';
|
|
119
|
-
|
|
120
|
-
import { Linking } from 'react-native';
|
|
121
|
-
|
|
122
|
-
// Usage in your app:
|
|
123
|
-
await initialize({
|
|
124
|
-
apiKey: '<your-helium-api-key>',
|
|
125
|
-
customUserId: '<your-custom-user-id>',
|
|
126
|
-
purchaseConfig: createRevenueCatPurchaseConfig(),
|
|
127
|
-
onHeliumPaywallEvent: (event) => {
|
|
128
|
-
switch (event.type) {
|
|
129
|
-
case 'subscriptionFailed':
|
|
130
|
-
// Custom logic
|
|
131
|
-
break;
|
|
132
|
-
case 'subscriptionSucceeded':
|
|
133
|
-
// Handle a subscription success event
|
|
134
|
-
// e.g. navigate to a premium page
|
|
135
|
-
break;
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
});
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
## **Presenting Paywalls**
|
|
142
|
-
|
|
143
|
-
Use the `presentUpsell` method in any component under the `HeliumProvider` to present a paywall. `presentUpsell` takes in a dictionary
|
|
144
|
-
specifying the `triggerName` as well as an optional `onFallback` parameter defining custom fallback behavior (in case the user didn't have a network connection)
|
|
145
|
-
|
|
146
|
-
```typescript
|
|
147
|
-
import { presentUpsell } from '@tryheliumai/paywall-sdk-react-native';
|
|
148
|
-
|
|
149
|
-
function YourComponent() {
|
|
150
|
-
const handlePremiumPress = useCallback(async () => {
|
|
151
|
-
await presentUpsell({
|
|
152
|
-
triggerName: 'premium_feature_press',
|
|
153
|
-
onFallback: () => {
|
|
154
|
-
// Logic to open a default paywall
|
|
155
|
-
openFallbackPaywall();
|
|
156
|
-
}
|
|
157
|
-
});
|
|
158
|
-
}, [presentUpsell]);
|
|
159
|
-
|
|
160
|
-
return (
|
|
161
|
-
<Button title="Try Premium" onPress={handlePremiumPress} />
|
|
162
|
-
);
|
|
163
|
-
}
|
|
164
|
-
```
|
|
165
|
-
|
|
166
|
-
## Custom Navigation
|
|
167
|
-
|
|
168
|
-
Handle custom navigation or dismissal by implementing the `onPaywallEvent` method in your payment delegate:
|
|
169
|
-
|
|
170
|
-
```typescript
|
|
171
|
-
const paymentDelegate: HeliumPaymentDelegate = {
|
|
172
|
-
// ... other methods
|
|
173
|
-
|
|
174
|
-
onPaywallEvent(event: HeliumPaywallEvent) {
|
|
175
|
-
switch (event.type) {
|
|
176
|
-
case 'cta_pressed':
|
|
177
|
-
const { ctaName, trigger, templateName } = event;
|
|
178
|
-
if (ctaName === 'dismiss') {
|
|
179
|
-
// Handle custom dismissal
|
|
180
|
-
}
|
|
181
|
-
break;
|
|
182
|
-
// ... handle other events
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
};
|
|
186
|
-
```
|
|
187
|
-
|
|
188
|
-
## **Paywall Events**
|
|
189
|
-
|
|
190
|
-
Helium emits various events during the lifecycle of a paywall. You can handle these events in your payment delegate. See the iOS docs for more details.
|
|
@@ -188,14 +188,16 @@ class HeliumBridge: RCTEventEmitter {
|
|
|
188
188
|
let viewTag = config["fallbackPaywall"] as? NSNumber else {
|
|
189
189
|
return
|
|
190
190
|
}
|
|
191
|
-
|
|
191
|
+
|
|
192
192
|
let triggers = config["triggers"] as? [String]
|
|
193
193
|
let customUserId = config["customUserId"] as? String
|
|
194
194
|
let customAPIEndpoint = config["customAPIEndpoint"] as? String
|
|
195
195
|
let customUserTraits = config["customUserTraits"] as? [String: Any]
|
|
196
196
|
let revenueCatAppUserId = config["revenueCatAppUserId"] as? String
|
|
197
197
|
let fallbackPaywallPerTriggerTags = config["fallbackPaywallPerTrigger"] as? [String: NSNumber]
|
|
198
|
-
|
|
198
|
+
let fallbackBundleURLString = config["fallbackBundleUrlString"] as? String
|
|
199
|
+
let fallbackBundleString = config["fallbackBundleString"] as? String
|
|
200
|
+
|
|
199
201
|
self.bridgingDelegate = BridgingPaywallDelegate(
|
|
200
202
|
bridge: self
|
|
201
203
|
)
|
|
@@ -226,9 +228,25 @@ class HeliumBridge: RCTEventEmitter {
|
|
|
226
228
|
}
|
|
227
229
|
}
|
|
228
230
|
}
|
|
229
|
-
|
|
231
|
+
|
|
232
|
+
// Handle fallback bundle - either as URL string or JSON string
|
|
233
|
+
var fallbackBundleURL: URL? = nil
|
|
234
|
+
|
|
235
|
+
if let urlString = fallbackBundleURLString {
|
|
236
|
+
fallbackBundleURL = URL(string: urlString)
|
|
237
|
+
} else if let jsonString = fallbackBundleString {
|
|
238
|
+
// expo-file-system wasn't available, write the string to a temp file
|
|
239
|
+
let tempURL = FileManager.default.temporaryDirectory
|
|
240
|
+
.appendingPathComponent("helium-fallback.json")
|
|
241
|
+
|
|
242
|
+
if let data = jsonString.data(using: .utf8) {
|
|
243
|
+
try? data.write(to: tempURL)
|
|
244
|
+
fallbackBundleURL = tempURL
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
|
|
230
248
|
let mainThreadTime = CFAbsoluteTimeGetCurrent() - startTime
|
|
231
|
-
|
|
249
|
+
|
|
232
250
|
// Move initialization off main queue
|
|
233
251
|
DispatchQueue.global().async {
|
|
234
252
|
let initStartTime = CFAbsoluteTimeGetCurrent()
|
|
@@ -242,6 +260,7 @@ class HeliumBridge: RCTEventEmitter {
|
|
|
242
260
|
customAPIEndpoint: customAPIEndpoint,
|
|
243
261
|
customUserTraits: HeliumUserTraits(customUserTraits ?? [:]),
|
|
244
262
|
revenueCatAppUserId: revenueCatAppUserId,
|
|
263
|
+
fallbackBundleURL: fallbackBundleURL,
|
|
245
264
|
fallbackPaywallPerTrigger: triggerViewsMap
|
|
246
265
|
)
|
|
247
266
|
|
|
@@ -316,4 +335,50 @@ class HeliumBridge: RCTEventEmitter {
|
|
|
316
335
|
callback([NSNull(), paywallInfo.paywallTemplateName, paywallInfo.shouldShow])
|
|
317
336
|
}
|
|
318
337
|
|
|
338
|
+
@objc
|
|
339
|
+
public func handleDeepLink(
|
|
340
|
+
_ urlString: String,
|
|
341
|
+
callback: RCTResponseSenderBlock
|
|
342
|
+
) {
|
|
343
|
+
guard let url = URL(string: urlString) else {
|
|
344
|
+
callback([false])
|
|
345
|
+
return
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
let result = Helium.shared.handleDeepLink(url)
|
|
349
|
+
callback([result])
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
@objc
|
|
353
|
+
public func canPresentUpsell(
|
|
354
|
+
_ trigger: String,
|
|
355
|
+
callback: @escaping RCTResponseSenderBlock
|
|
356
|
+
) {
|
|
357
|
+
// Check if paywalls are downloaded successfully
|
|
358
|
+
let paywallsLoaded = Helium.shared.paywallsLoaded()
|
|
359
|
+
|
|
360
|
+
// Check if trigger exists in fetched triggers
|
|
361
|
+
let triggerNames = HeliumFetchedConfigManager.shared.getFetchedTriggerNames()
|
|
362
|
+
let hasTrigger = triggerNames.contains(trigger)
|
|
363
|
+
|
|
364
|
+
let canPresent: Bool
|
|
365
|
+
let reason: String
|
|
366
|
+
|
|
367
|
+
if paywallsLoaded && hasTrigger {
|
|
368
|
+
// Normal case - paywall is ready
|
|
369
|
+
canPresent = true
|
|
370
|
+
reason = "ready"
|
|
371
|
+
} else if HeliumFallbackViewManager.shared.getFallbackInfo(trigger: trigger) != nil {
|
|
372
|
+
// Fallback is available (via downloaded bundle)
|
|
373
|
+
canPresent = true
|
|
374
|
+
reason = "fallback_ready"
|
|
375
|
+
} else {
|
|
376
|
+
// No paywall and no fallback bundle
|
|
377
|
+
canPresent = false
|
|
378
|
+
reason = !paywallsLoaded ? "download status - \(Helium.shared.getDownloadStatus().rawValue)" : "trigger_not_found"
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
callback([canPresent, reason])
|
|
382
|
+
}
|
|
383
|
+
|
|
319
384
|
}
|
package/ios/RCTHeliumBridge.m
CHANGED
|
@@ -51,4 +51,14 @@ RCT_EXTERN_METHOD(
|
|
|
51
51
|
callback:(RCTResponseSenderBlock)callback
|
|
52
52
|
)
|
|
53
53
|
|
|
54
|
+
RCT_EXTERN_METHOD(
|
|
55
|
+
canPresentUpsell:(NSString *)trigger
|
|
56
|
+
callback:(RCTResponseSenderBlock)callback
|
|
57
|
+
)
|
|
58
|
+
|
|
59
|
+
RCT_EXTERN_METHOD(
|
|
60
|
+
handleDeepLink:(NSString *)urlString
|
|
61
|
+
callback:(RCTResponseSenderBlock)callback
|
|
62
|
+
)
|
|
63
|
+
|
|
54
64
|
@end
|
package/lib/commonjs/index.js
CHANGED
|
@@ -39,6 +39,12 @@ Object.defineProperty(exports, "getPaywallInfo", {
|
|
|
39
39
|
return _nativeInterface.getPaywallInfo;
|
|
40
40
|
}
|
|
41
41
|
});
|
|
42
|
+
Object.defineProperty(exports, "handleDeepLink", {
|
|
43
|
+
enumerable: true,
|
|
44
|
+
get: function () {
|
|
45
|
+
return _nativeInterface.handleDeepLink;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
42
48
|
Object.defineProperty(exports, "hideAllUpsells", {
|
|
43
49
|
enumerable: true,
|
|
44
50
|
get: function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_types","require","_nativeInterface"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_types","require","_nativeInterface"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,gBAAA,GAAAD,OAAA","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.useHelium = exports.presentUpsell = exports.initialize = exports.hideUpsell = exports.hideAllUpsells = exports.getPaywallInfo = exports.getDownloadStatus = exports.UpsellView = exports.NativeHeliumUpsellView = exports.HeliumProvider = exports.HELIUM_CTA_NAMES = void 0;
|
|
6
|
+
exports.useHelium = exports.presentUpsell = exports.initialize = exports.hideUpsell = exports.hideAllUpsells = exports.handleDeepLink = exports.getPaywallInfo = exports.getDownloadStatus = exports.UpsellView = exports.NativeHeliumUpsellView = exports.HeliumProvider = exports.HELIUM_CTA_NAMES = void 0;
|
|
7
7
|
var _reactNative = require("react-native");
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -179,6 +179,22 @@ const initialize = async config => {
|
|
|
179
179
|
status: success ? 'restored' : 'failed'
|
|
180
180
|
});
|
|
181
181
|
});
|
|
182
|
+
let fallbackBundleUrlString;
|
|
183
|
+
let fallbackBundleString;
|
|
184
|
+
if (config.fallbackBundle) {
|
|
185
|
+
try {
|
|
186
|
+
const ExpoFileSystem = require('expo-file-system');
|
|
187
|
+
const jsonContent = JSON.stringify(config.fallbackBundle);
|
|
188
|
+
|
|
189
|
+
// Write to documents directory
|
|
190
|
+
fallbackBundleUrlString = `${ExpoFileSystem.documentDirectory}helium-fallback.json`;
|
|
191
|
+
await ExpoFileSystem.writeAsStringAsync(fallbackBundleUrlString, jsonContent);
|
|
192
|
+
} catch (error) {
|
|
193
|
+
// Fallback to string approach if expo-file-system isn't available
|
|
194
|
+
console.log('[Helium] expo-file-system not available, attempting to pass fallback bundle as string.');
|
|
195
|
+
fallbackBundleString = JSON.stringify(config.fallbackBundle);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
182
198
|
HeliumBridge.initialize({
|
|
183
199
|
apiKey: config.apiKey,
|
|
184
200
|
fallbackPaywall: viewTag,
|
|
@@ -186,7 +202,9 @@ const initialize = async config => {
|
|
|
186
202
|
customUserId: config.customUserId || null,
|
|
187
203
|
customAPIEndpoint: config.customAPIEndpoint || null,
|
|
188
204
|
customUserTraits: config.customUserTraits == null ? {} : config.customUserTraits,
|
|
189
|
-
revenueCatAppUserId: config.revenueCatAppUserId
|
|
205
|
+
revenueCatAppUserId: config.revenueCatAppUserId,
|
|
206
|
+
fallbackBundleUrlString: fallbackBundleUrlString,
|
|
207
|
+
fallbackBundleString: fallbackBundleString
|
|
190
208
|
}, {});
|
|
191
209
|
|
|
192
210
|
// Mark as initialized after successful initialization
|
|
@@ -199,10 +217,9 @@ const presentUpsell = ({
|
|
|
199
217
|
triggerName,
|
|
200
218
|
onFallback
|
|
201
219
|
}) => {
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
console.log(`Helium trigger "${triggerName}" not found or download status not successful. Status:`, downloadStatus);
|
|
220
|
+
HeliumBridge.canPresentUpsell(triggerName, (canPresent, reason) => {
|
|
221
|
+
if (!canPresent) {
|
|
222
|
+
console.log(`[Helium] Cannot present trigger "${triggerName}". Reason: ${reason}`);
|
|
206
223
|
onFallback?.();
|
|
207
224
|
HeliumBridge.fallbackOpenOrCloseEvent(triggerName, true, 'presented');
|
|
208
225
|
return;
|
|
@@ -210,7 +227,7 @@ const presentUpsell = ({
|
|
|
210
227
|
try {
|
|
211
228
|
HeliumBridge.presentUpsell(triggerName);
|
|
212
229
|
} catch (error) {
|
|
213
|
-
console.log('Helium
|
|
230
|
+
console.log('[Helium] Present error', error);
|
|
214
231
|
onFallback?.();
|
|
215
232
|
HeliumBridge.fallbackOpenOrCloseEvent(triggerName, true, 'presented');
|
|
216
233
|
}
|
|
@@ -240,9 +257,20 @@ const getPaywallInfo = async trigger => {
|
|
|
240
257
|
});
|
|
241
258
|
});
|
|
242
259
|
};
|
|
260
|
+
exports.getPaywallInfo = getPaywallInfo;
|
|
261
|
+
const handleDeepLink = async url => {
|
|
262
|
+
return new Promise(resolve => {
|
|
263
|
+
if (url) {
|
|
264
|
+
HeliumBridge.handleDeepLink(url, handled => {
|
|
265
|
+
console.log('[Helium] Handled deep link:', handled);
|
|
266
|
+
resolve(handled);
|
|
267
|
+
});
|
|
268
|
+
}
|
|
269
|
+
});
|
|
270
|
+
};
|
|
243
271
|
|
|
244
272
|
// Update the UpsellView component to handle the style prop
|
|
245
|
-
exports.
|
|
273
|
+
exports.handleDeepLink = handleDeepLink;
|
|
246
274
|
const UpsellView = ({
|
|
247
275
|
trigger,
|
|
248
276
|
fallbackViewProps,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_react","_interopRequireWildcard","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","HeliumBridge","NativeModules","heliumEventEmitter","NativeEventEmitter","NativeHeliumUpsellView","exports","requireNativeComponent","isProviderMounted","isInitialized","providerMountedPromise","resolveProviderMounted","Promise","resolve","globalDownloadStatus","getDownloadStatus","HeliumContext","createContext","undefined","setDownloadStatusRef","updateDownloadStatus","status","useHelium","context","useContext","Error","fallbackRef","createRef","FallbackViewComponent","HeliumProvider","children","fallbackView","console","warn","FallbackView","downloadStatus","setDownloadStatus","useState","useEffect","jsxs","Provider","value","jsx","View","ref","collapsable","style","display","initialize","config","viewTag","findNodeHandle","current","purchaseHandler","makePurchase","purchaseConfig","restorePurchases","addListener","event","type","paywallTemplateName","setNativeProps","onHeliumPaywallEvent","result","productId","handlePurchaseResponse","transactionId","error","success","handleRestoreResponse","apiKey","fallbackPaywall","triggers","customUserId","customAPIEndpoint","customUserTraits","revenueCatAppUserId","presentUpsell","triggerName","onFallback","getFetchedTriggerNames","triggerNames","includes","log","fallbackOpenOrCloseEvent","hideUpsell","hideAllUpsells","getPaywallInfo","trigger","templateName","shouldShow","UpsellView","fallbackViewProps","fallbackViewWrapperStyles","showFallback","HELIUM_CTA_NAMES","SCHEDULE_CALL","SUBSCRIBE_BUTTON"],"sourceRoot":"../../src","sources":["native-interface.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_react","_interopRequireWildcard","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","HeliumBridge","NativeModules","heliumEventEmitter","NativeEventEmitter","NativeHeliumUpsellView","exports","requireNativeComponent","isProviderMounted","isInitialized","providerMountedPromise","resolveProviderMounted","Promise","resolve","globalDownloadStatus","getDownloadStatus","HeliumContext","createContext","undefined","setDownloadStatusRef","updateDownloadStatus","status","useHelium","context","useContext","Error","fallbackRef","createRef","FallbackViewComponent","HeliumProvider","children","fallbackView","console","warn","FallbackView","downloadStatus","setDownloadStatus","useState","useEffect","jsxs","Provider","value","jsx","View","ref","collapsable","style","display","initialize","config","viewTag","findNodeHandle","current","purchaseHandler","makePurchase","purchaseConfig","restorePurchases","addListener","event","type","paywallTemplateName","setNativeProps","onHeliumPaywallEvent","result","productId","handlePurchaseResponse","transactionId","error","success","handleRestoreResponse","fallbackBundleUrlString","fallbackBundleString","fallbackBundle","ExpoFileSystem","jsonContent","JSON","stringify","documentDirectory","writeAsStringAsync","log","apiKey","fallbackPaywall","triggers","customUserId","customAPIEndpoint","customUserTraits","revenueCatAppUserId","presentUpsell","triggerName","onFallback","canPresentUpsell","canPresent","reason","fallbackOpenOrCloseEvent","hideUpsell","hideAllUpsells","getPaywallInfo","trigger","templateName","shouldShow","handleDeepLink","url","handled","UpsellView","fallbackViewProps","fallbackViewWrapperStyles","showFallback","HELIUM_CTA_NAMES","SCHEDULE_CALL","SUBSCRIBE_BUTTON"],"sourceRoot":"../../src","sources":["native-interface.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,uBAAA,CAAAF,OAAA;AAAyF,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAI,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAGzF,MAAM;EAAEW;AAAa,CAAC,GAAGC,0BAAa;AACtC,MAAMC,kBAAkB,GAAG,IAAIC,+BAAkB,CAACH,YAAY,CAAC;;AAE/D;AACA;AACO,MAAMI,sBAAsB,GAAAC,OAAA,CAAAD,sBAAA,GAAG,IAAAE,mCAAsB,EAAwB,kBAAkB,CAAC;AAEvG,IAAIC,iBAAiB,GAAG,KAAK;AAC7B;AACA,IAAIC,aAAa,GAAG,KAAK;AACzB;AACA,IAAIC,sBAAqC;AACzC,IAAIC,sBAAkC;;AAEtC;AACAD,sBAAsB,GAAG,IAAIE,OAAO,CAAQC,OAAO,IAAK;EACtDF,sBAAsB,GAAGE,OAAO;EAChC;EACA,IAAIL,iBAAiB,EAAE;IACrBK,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC;;AAEF;AACA,IAAIC,oBAA0C,GAAG,YAAY;AACtD,MAAMC,iBAAiB,GAAGA,CAAA,KAAMD,oBAAoB;;AAE3D;AAAAR,OAAA,CAAAS,iBAAA,GAAAA,iBAAA;AAMA,MAAMC,aAAa,gBAAG,IAAAC,oBAAa,EAAgCC,SAAS,CAAC;;AAE7E;AACA,IAAIC,oBAAqE,GAAG,IAAI;AAChF,MAAMC,oBAAoB,GAAIC,MAA4B,IAAK;EAC7DP,oBAAoB,GAAGO,MAAM;EAC7BF,oBAAoB,GAAGE,MAAM,CAAC;AAChC,CAAC;;AAED;AACO,MAAMC,SAAS,GAAGA,CAAA,KAAM;EAC7B,MAAMC,OAAO,GAAG,IAAAC,iBAAU,EAACR,aAAa,CAAC;EACzC,IAAI,CAACO,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CAAC,gDAAgD,CAAC;EACnE;EACA,OAAOF,OAAO;AAChB,CAAC;AAACjB,OAAA,CAAAgB,SAAA,GAAAA,SAAA;AAOF;AACA,MAAMI,WAAW,gBAAG,IAAAC,gBAAS,EAAO,CAAC;AACrC;AACA,IAAIC,qBAAiD,GAAG,IAAI;;AAE5D;AACO,MAAMC,cAAc,GAAGA,CAAC;EAAEC,QAAQ;EAAEC;AAAkC,CAAC,KAAK;EACjF;EACA,IAAIA,YAAY,EAAE;IAChBC,OAAO,CAACC,IAAI,CAAC,6FAA6F,CAAC;EAC7G;EACA,MAAMC,YAAY,GAAIA,CAAA,KAAM,IAAK;EACjC;EACA,MAAM,CAACC,cAAc,EAAEC,iBAAiB,CAAC,GAAG,IAAAC,eAAQ,EAAuB,YAAY,CAAC;;EAExF;EACA,IAAAC,gBAAS,EAAC,MAAM;IACdnB,oBAAoB,GAAGiB,iBAAiB;IACxC;IACAR,qBAAqB,GAAGM,YAAY;EACtC,CAAC,EAAE,CAACE,iBAAiB,EAAEF,YAAY,CAAC,CAAC;EAErC,IAAAI,gBAAS,EAAC,MAAM;IACd9B,iBAAiB,GAAG,IAAI;IACxB;IACAG,sBAAsB,CAAC,CAAC;IACxB,OAAO,MAAM;MACXH,iBAAiB,GAAG,KAAK;MACzBW,oBAAoB,GAAG,IAAI;IAC7B,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,oBACE,IAAAvC,WAAA,CAAA2D,IAAA,EAACvB,aAAa,CAACwB,QAAQ;IAACC,KAAK,EAAE;MAAEN,cAAc;MAAEC;IAAkB,CAAE;IAAAN,QAAA,gBACnE,IAAAlD,WAAA,CAAA8D,GAAA,EAAClE,YAAA,CAAAmE,IAAI;MACHC,GAAG,EAAElB,WAAY;MACjBmB,WAAW,EAAE,KAAM;MACnBC,KAAK,EAAE;QACLC,OAAO,EAAE;MACX,CAAE;MAAAjB,QAAA,eAEF,IAAAlD,WAAA,CAAA8D,GAAA,EAACR,YAAY,IAAE;IAAC,CACZ,CAAC,EACNJ,QAAQ;EAAA,CACa,CAAC;AAE7B,CAAC;;AAED;AAAAxB,OAAA,CAAAuB,cAAA,GAAAA,cAAA;AACO,MAAMmB,UAAU,GAAG,MAAOC,MAAoB,IAAK;EACxD;EACA,IAAIxC,aAAa,EAAE;IACjB;EACF;;EAEA;EACA,IAAI,CAACD,iBAAiB,EAAE;IACtB,MAAME,sBAAsB;EAC9B;EAEA,MAAMwC,OAAO,GAAG,IAAAC,2BAAc,EAACzB,WAAW,CAAC0B,OAAO,CAAC;EACnD,IAAI,CAACF,OAAO,EAAE;IACZ,MAAM,IAAIzB,KAAK,CAAC,kGAAkG,CAAC;EACrH;EAEA,MAAM4B,eAAe,GAAG;IACtBC,YAAY,EAAEL,MAAM,CAACM,cAAc,CAACD,YAAY;IAChDE,gBAAgB,EAAEP,MAAM,CAACM,cAAc,CAACC;EAC1C,CAAC;;EAED;EACApC,oBAAoB,CAAC,YAAY,CAAC;;EAElC;EACAjB,kBAAkB,CAACsD,WAAW,CAC5B,sBAAsB,EACrBC,KAAU,IAAK;IACd;IACA,IAAIA,KAAK,CAACC,IAAI,KAAK,yBAAyB,EAAE;MAC5CvC,oBAAoB,CAAC,SAAS,CAAC;IACjC,CAAC,MAAM,IAAIsC,KAAK,CAACC,IAAI,KAAK,uBAAuB,EAAE;MACjDvC,oBAAoB,CAAC,QAAQ,CAAC;IAChC;IACA;IAAA,KACK,IAAIsC,KAAK,CAACC,IAAI,KAAK,aAAa,IAAID,KAAK,CAACE,mBAAmB,KAAK,UAAU,EAAE;MACjF,IAAIlC,WAAW,CAAC0B,OAAO,EAAE;QACvB1B,WAAW,CAAC0B,OAAO,CAACS,cAAc,CAAC;UACjCf,KAAK,EAAE;YAAEC,OAAO,EAAE;UAAO;QAC3B,CAAC,CAAC;MACJ;IACF,CAAC,MAAM,IAAIW,KAAK,CAACC,IAAI,KAAK,cAAc,IAAID,KAAK,CAACE,mBAAmB,KAAK,UAAU,EAAE;MACpF,IAAIlC,WAAW,CAAC0B,OAAO,EAAE;QACvB1B,WAAW,CAAC0B,OAAO,CAACS,cAAc,CAAC;UACjCf,KAAK,EAAE;YAAEC,OAAO,EAAE;UAAO;QAC3B,CAAC,CAAC;MACJ;IACF;;IAEA;IACAE,MAAM,CAACa,oBAAoB,CAACJ,KAAK,CAAC;EACpC,CACF,CAAC;;EAED;EACAvD,kBAAkB,CAACsD,WAAW,CAC5B,sBAAsB,EACtB,MAAOC,KAAmD,IAAK;IAC7D,MAAMK,MAAM,GAAG,MAAMV,eAAe,CAACC,YAAY,CAACI,KAAK,CAACM,SAAS,CAAC;IAClE/D,YAAY,CAACgE,sBAAsB,CAAC;MAClCC,aAAa,EAAER,KAAK,CAACQ,aAAa;MAClC7C,MAAM,EAAE0C,MAAM,CAAC1C,MAAM;MACrB8C,KAAK,EAAEJ,MAAM,CAACI;IAChB,CAAC,CAAC;EACJ,CACF,CAAC;;EAED;EACAhE,kBAAkB,CAACsD,WAAW,CAC5B,0BAA0B,EAC1B,MAAOC,KAAgC,IAAK;IAC1C,MAAMU,OAAO,GAAG,MAAMf,eAAe,CAACG,gBAAgB,CAAC,CAAC;IACxDvD,YAAY,CAACoE,qBAAqB,CAAC;MACjCH,aAAa,EAAER,KAAK,CAACQ,aAAa;MAClC7C,MAAM,EAAE+C,OAAO,GAAG,UAAU,GAAG;IACjC,CAAC,CAAC;EACJ,CACF,CAAC;EAED,IAAIE,uBAAuB;EAC3B,IAAIC,oBAAoB;EACxB,IAAItB,MAAM,CAACuB,cAAc,EAAE;IACzB,IAAI;MACF,MAAMC,cAAc,GAAGhG,OAAO,CAAC,kBAAkB,CAAC;MAElD,MAAMiG,WAAW,GAAGC,IAAI,CAACC,SAAS,CAAC3B,MAAM,CAACuB,cAAc,CAAC;;MAEzD;MACAF,uBAAuB,GAAG,GAAGG,cAAc,CAACI,iBAAiB,sBAAsB;MACnF,MAAMJ,cAAc,CAACK,kBAAkB,CACrCR,uBAAuB,EACvBI,WACF,CAAC;IACH,CAAC,CAAC,OAAOP,KAAK,EAAE;MACd;MACAnC,OAAO,CAAC+C,GAAG,CACT,wFACF,CAAC;MACDR,oBAAoB,GAAGI,IAAI,CAACC,SAAS,CAAC3B,MAAM,CAACuB,cAAc,CAAC;IAC9D;EACF;EAEAvE,YAAY,CAAC+C,UAAU,CACrB;IACEgC,MAAM,EAAE/B,MAAM,CAAC+B,MAAM;IACrBC,eAAe,EAAE/B,OAAO;IACxBgC,QAAQ,EAAEjC,MAAM,CAACiC,QAAQ,IAAI,EAAE;IAC/BC,YAAY,EAAElC,MAAM,CAACkC,YAAY,IAAI,IAAI;IACzCC,iBAAiB,EAAEnC,MAAM,CAACmC,iBAAiB,IAAI,IAAI;IACnDC,gBAAgB,EAAEpC,MAAM,CAACoC,gBAAgB,IAAI,IAAI,GAAG,CAAC,CAAC,GAAGpC,MAAM,CAACoC,gBAAgB;IAChFC,mBAAmB,EAAErC,MAAM,CAACqC,mBAAmB;IAC/ChB,uBAAuB,EAAEA,uBAAuB;IAChDC,oBAAoB,EAAEA;EACxB,CAAC,EACD,CAAC,CACH,CAAC;;EAED;EACA9D,aAAa,GAAG,IAAI;AACtB,CAAC;;AAED;AAAAH,OAAA,CAAA0C,UAAA,GAAAA,UAAA;AACO,MAAMuC,aAAa,GAAGA,CAAC;EAC5BC,WAAW;EACXC;AAIF,CAAC,KAAK;EACJxF,YAAY,CAACyF,gBAAgB,CAC3BF,WAAW,EACX,CAACG,UAAmB,EAAEC,MAAc,KAAK;IACvC,IAAI,CAACD,UAAU,EAAE;MACf3D,OAAO,CAAC+C,GAAG,CACT,oCAAoCS,WAAW,cAAcI,MAAM,EACrE,CAAC;MACDH,UAAU,GAAG,CAAC;MACdxF,YAAY,CAAC4F,wBAAwB,CAACL,WAAW,EAAE,IAAI,EAAE,WAAW,CAAC;MACrE;IACF;IAEA,IAAI;MACFvF,YAAY,CAACsF,aAAa,CAACC,WAAW,CAAC;IACzC,CAAC,CAAC,OAAOrB,KAAK,EAAE;MACdnC,OAAO,CAAC+C,GAAG,CAAC,wBAAwB,EAAEZ,KAAK,CAAC;MAC5CsB,UAAU,GAAG,CAAC;MACdxF,YAAY,CAAC4F,wBAAwB,CAACL,WAAW,EAAE,IAAI,EAAE,WAAW,CAAC;IACvE;EACF,CACF,CAAC;AACH,CAAC;AAAClF,OAAA,CAAAiF,aAAA,GAAAA,aAAA;AAEK,MAAMO,UAAU,GAAGA,CAAA,KAAM;EAC9B7F,YAAY,CAAC6F,UAAU,CAAC,CAAC;AAC3B,CAAC;AAACxF,OAAA,CAAAwF,UAAA,GAAAA,UAAA;AAEK,MAAMC,cAAc,GAAGA,CAAA,KAAM;EAClC9F,YAAY,CAAC8F,cAAc,CAAC,CAAC;AAC/B,CAAC;AAACzF,OAAA,CAAAyF,cAAA,GAAAA,cAAA;AAEK,MAAMC,cAAc,GAAG,MAC5BC,OAAe,IACsB;EACrC,OAAO,IAAIrF,OAAO,CAAEC,OAAO,IAAK;IAC9BZ,YAAY,CAAC+F,cAAc,CACzBC,OAAO,EACP,CAAC9B,KAAoB,EAAE+B,YAAoB,EAAEC,UAAmB,KAAK;MACnE,IAAIhC,KAAK,EAAE;QACTnC,OAAO,CAAC+C,GAAG,CAAC,YAAYZ,KAAK,EAAE,CAAC;QAChCtD,OAAO,CAACK,SAAS,CAAC;QAClB;MACF;MACAL,OAAO,CAAC;QACN+C,mBAAmB,EAAEsC,YAAY;QACjCC,UAAU,EAAEA;MACd,CAAC,CAAC;IACJ,CACF,CAAC;EACH,CAAC,CAAC;AACJ,CAAC;AAAC7F,OAAA,CAAA0F,cAAA,GAAAA,cAAA;AAEK,MAAMI,cAAc,GAAG,MAAOC,GAAkB,IAAuB;EAC5E,OAAO,IAAIzF,OAAO,CAAEC,OAAO,IAAK;IAC9B,IAAIwF,GAAG,EAAE;MACPpG,YAAY,CAACmG,cAAc,CAACC,GAAG,EAAGC,OAAgB,IAAK;QACrDtE,OAAO,CAAC+C,GAAG,CAAC,6BAA6B,EAAEuB,OAAO,CAAC;QACnDzF,OAAO,CAACyF,OAAO,CAAC;MAClB,CAAC,CAAC;IACJ;EACF,CAAC,CAAC;AACJ,CAAC;;AAED;AAAAhG,OAAA,CAAA8F,cAAA,GAAAA,cAAA;AACO,MAAMG,UAGX,GAAGA,CAAC;EAAEN,OAAO;EAAEO,iBAAiB;EAAEC;AAA0B,CAAC,KAAK;EAClE,MAAM;IAAEtE;EAAe,CAAC,GAAGb,SAAS,CAAC,CAAC;EAEtC,MAAMoF,YAAY,GAAGvE,cAAc,KAAK,YAAY,IAClDA,cAAc,KAAK,YAAY,IAC/BA,cAAc,KAAK,QAAQ;EAE7B,IAAAG,gBAAS,EAAC,MAAM;IACd,IAAIoE,YAAY,IAAI9E,qBAAqB,EAAE;MACzC3B,YAAY,CAAC4F,wBAAwB,CAACI,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC;IAClE;IACA,OAAO,MAAM;MACX,IAAIS,YAAY,IAAI9E,qBAAqB,EAAE;QACzC3B,YAAY,CAAC4F,wBAAwB,CAACI,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC;MACnE;IACF,CAAC;EACH,CAAC,EAAE,CAACS,YAAY,EAAET,OAAO,CAAC,CAAC;;EAE3B;EACA;EACA,IAAIS,YAAY,EAAE;IAChB;IACA,IAAI9E,qBAAqB,EAAE;MACzB,oBACE,IAAAhD,WAAA,CAAA8D,GAAA,EAAClE,YAAA,CAAAmE,IAAI;QAACG,KAAK,EAAE2D,yBAA0B;QAAA3E,QAAA,eACrC,IAAAlD,WAAA,CAAA8D,GAAA,EAACd,qBAAqB;UAAA,GAAK4E;QAAiB,CAAG;MAAC,CAC5C,CAAC;IAEX;IAEA,OAAO,IAAI;EACb;;EAEA;EACA,oBAAO,IAAA5H,WAAA,CAAA8D,GAAA,EAACrC,sBAAsB;IAAC4F,OAAO,EAAEA;EAAQ,CAAE,CAAC;AACrD,CAAC;AAAC3F,OAAA,CAAAiG,UAAA,GAAAA,UAAA;AAEK,MAAMI,gBAAgB,GAAArG,OAAA,CAAAqG,gBAAA,GAAG;EAC9BC,aAAa,EAAE,eAAe;EAC9BC,gBAAgB,EAAE;AACpB,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createCustomPurchaseConfig","callbacks","makePurchase","restorePurchases"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;;;;;AAOA;;AAEA;;AAUA;AACO,SAASA,0BAA0BA,CAACC,SAG1C,EAAwB;EACvB,OAAO;IACLC,YAAY,EAAED,SAAS,CAACC,YAAY;IACpCC,gBAAgB,EAAEF,SAAS,CAACE;EAC9B,CAAC;AACH;;AAEA;;
|
|
1
|
+
{"version":3,"names":["createCustomPurchaseConfig","callbacks","makePurchase","restorePurchases"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;;;;;AAOA;;AAEA;;AAUA;AACO,SAASA,0BAA0BA,CAACC,SAG1C,EAAwB;EACvB,OAAO;IACLC,YAAY,EAAED,SAAS,CAACC,YAAY;IACpCC,gBAAgB,EAAEF,SAAS,CAACE;EAC9B,CAAC;AACH;;AAEA;;AAmBA","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
export { createCustomPurchaseConfig } from "./types.js";
|
|
4
|
-
export { HeliumProvider, initialize, presentUpsell, hideUpsell, hideAllUpsells, getPaywallInfo, UpsellView, HELIUM_CTA_NAMES, useHelium, NativeHeliumUpsellView } from "./native-interface.js";
|
|
4
|
+
export { HeliumProvider, initialize, presentUpsell, hideUpsell, hideAllUpsells, getPaywallInfo, handleDeepLink, UpsellView, HELIUM_CTA_NAMES, useHelium, NativeHeliumUpsellView } from "./native-interface.js";
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createCustomPurchaseConfig","HeliumProvider","initialize","presentUpsell","hideUpsell","hideAllUpsells","getPaywallInfo","UpsellView","HELIUM_CTA_NAMES","useHelium","NativeHeliumUpsellView"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,SAASA,0BAA0B,QAAQ,YAAS;AAEpD,SACEC,cAAc,EACdC,UAAU,EACVC,aAAa,EACbC,UAAU,EACVC,cAAc,EACdC,cAAc,EACdC,UAAU,EACVC,gBAAgB,EAChBC,SAAS,EACTC,sBAAsB,QACjB,uBAAoB","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createCustomPurchaseConfig","HeliumProvider","initialize","presentUpsell","hideUpsell","hideAllUpsells","getPaywallInfo","handleDeepLink","UpsellView","HELIUM_CTA_NAMES","useHelium","NativeHeliumUpsellView"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,SAASA,0BAA0B,QAAQ,YAAS;AAEpD,SACEC,cAAc,EACdC,UAAU,EACVC,aAAa,EACbC,UAAU,EACVC,cAAc,EACdC,cAAc,EACdC,cAAc,EACdC,UAAU,EACVC,gBAAgB,EAChBC,SAAS,EACTC,sBAAsB,QACjB,uBAAoB","ignoreList":[]}
|
|
@@ -171,6 +171,22 @@ export const initialize = async config => {
|
|
|
171
171
|
status: success ? 'restored' : 'failed'
|
|
172
172
|
});
|
|
173
173
|
});
|
|
174
|
+
let fallbackBundleUrlString;
|
|
175
|
+
let fallbackBundleString;
|
|
176
|
+
if (config.fallbackBundle) {
|
|
177
|
+
try {
|
|
178
|
+
const ExpoFileSystem = require('expo-file-system');
|
|
179
|
+
const jsonContent = JSON.stringify(config.fallbackBundle);
|
|
180
|
+
|
|
181
|
+
// Write to documents directory
|
|
182
|
+
fallbackBundleUrlString = `${ExpoFileSystem.documentDirectory}helium-fallback.json`;
|
|
183
|
+
await ExpoFileSystem.writeAsStringAsync(fallbackBundleUrlString, jsonContent);
|
|
184
|
+
} catch (error) {
|
|
185
|
+
// Fallback to string approach if expo-file-system isn't available
|
|
186
|
+
console.log('[Helium] expo-file-system not available, attempting to pass fallback bundle as string.');
|
|
187
|
+
fallbackBundleString = JSON.stringify(config.fallbackBundle);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
174
190
|
HeliumBridge.initialize({
|
|
175
191
|
apiKey: config.apiKey,
|
|
176
192
|
fallbackPaywall: viewTag,
|
|
@@ -178,7 +194,9 @@ export const initialize = async config => {
|
|
|
178
194
|
customUserId: config.customUserId || null,
|
|
179
195
|
customAPIEndpoint: config.customAPIEndpoint || null,
|
|
180
196
|
customUserTraits: config.customUserTraits == null ? {} : config.customUserTraits,
|
|
181
|
-
revenueCatAppUserId: config.revenueCatAppUserId
|
|
197
|
+
revenueCatAppUserId: config.revenueCatAppUserId,
|
|
198
|
+
fallbackBundleUrlString: fallbackBundleUrlString,
|
|
199
|
+
fallbackBundleString: fallbackBundleString
|
|
182
200
|
}, {});
|
|
183
201
|
|
|
184
202
|
// Mark as initialized after successful initialization
|
|
@@ -190,10 +208,9 @@ export const presentUpsell = ({
|
|
|
190
208
|
triggerName,
|
|
191
209
|
onFallback
|
|
192
210
|
}) => {
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
console.log(`Helium trigger "${triggerName}" not found or download status not successful. Status:`, downloadStatus);
|
|
211
|
+
HeliumBridge.canPresentUpsell(triggerName, (canPresent, reason) => {
|
|
212
|
+
if (!canPresent) {
|
|
213
|
+
console.log(`[Helium] Cannot present trigger "${triggerName}". Reason: ${reason}`);
|
|
197
214
|
onFallback?.();
|
|
198
215
|
HeliumBridge.fallbackOpenOrCloseEvent(triggerName, true, 'presented');
|
|
199
216
|
return;
|
|
@@ -201,7 +218,7 @@ export const presentUpsell = ({
|
|
|
201
218
|
try {
|
|
202
219
|
HeliumBridge.presentUpsell(triggerName);
|
|
203
220
|
} catch (error) {
|
|
204
|
-
console.log('Helium
|
|
221
|
+
console.log('[Helium] Present error', error);
|
|
205
222
|
onFallback?.();
|
|
206
223
|
HeliumBridge.fallbackOpenOrCloseEvent(triggerName, true, 'presented');
|
|
207
224
|
}
|
|
@@ -228,6 +245,16 @@ export const getPaywallInfo = async trigger => {
|
|
|
228
245
|
});
|
|
229
246
|
});
|
|
230
247
|
};
|
|
248
|
+
export const handleDeepLink = async url => {
|
|
249
|
+
return new Promise(resolve => {
|
|
250
|
+
if (url) {
|
|
251
|
+
HeliumBridge.handleDeepLink(url, handled => {
|
|
252
|
+
console.log('[Helium] Handled deep link:', handled);
|
|
253
|
+
resolve(handled);
|
|
254
|
+
});
|
|
255
|
+
}
|
|
256
|
+
});
|
|
257
|
+
};
|
|
231
258
|
|
|
232
259
|
// Update the UpsellView component to handle the style prop
|
|
233
260
|
export const UpsellView = ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["findNodeHandle","NativeModules","View","NativeEventEmitter","requireNativeComponent","React","createRef","useEffect","useState","createContext","useContext","jsx","_jsx","jsxs","_jsxs","HeliumBridge","heliumEventEmitter","NativeHeliumUpsellView","isProviderMounted","isInitialized","providerMountedPromise","resolveProviderMounted","Promise","resolve","globalDownloadStatus","getDownloadStatus","HeliumContext","undefined","setDownloadStatusRef","updateDownloadStatus","status","useHelium","context","Error","fallbackRef","FallbackViewComponent","HeliumProvider","children","fallbackView","console","warn","FallbackView","downloadStatus","setDownloadStatus","Provider","value","ref","collapsable","style","display","initialize","config","viewTag","current","purchaseHandler","makePurchase","purchaseConfig","restorePurchases","addListener","event","type","paywallTemplateName","setNativeProps","onHeliumPaywallEvent","result","productId","handlePurchaseResponse","transactionId","error","success","handleRestoreResponse","apiKey","fallbackPaywall","triggers","customUserId","customAPIEndpoint","customUserTraits","revenueCatAppUserId","presentUpsell","triggerName","onFallback","
|
|
1
|
+
{"version":3,"names":["findNodeHandle","NativeModules","View","NativeEventEmitter","requireNativeComponent","React","createRef","useEffect","useState","createContext","useContext","jsx","_jsx","jsxs","_jsxs","HeliumBridge","heliumEventEmitter","NativeHeliumUpsellView","isProviderMounted","isInitialized","providerMountedPromise","resolveProviderMounted","Promise","resolve","globalDownloadStatus","getDownloadStatus","HeliumContext","undefined","setDownloadStatusRef","updateDownloadStatus","status","useHelium","context","Error","fallbackRef","FallbackViewComponent","HeliumProvider","children","fallbackView","console","warn","FallbackView","downloadStatus","setDownloadStatus","Provider","value","ref","collapsable","style","display","initialize","config","viewTag","current","purchaseHandler","makePurchase","purchaseConfig","restorePurchases","addListener","event","type","paywallTemplateName","setNativeProps","onHeliumPaywallEvent","result","productId","handlePurchaseResponse","transactionId","error","success","handleRestoreResponse","fallbackBundleUrlString","fallbackBundleString","fallbackBundle","ExpoFileSystem","require","jsonContent","JSON","stringify","documentDirectory","writeAsStringAsync","log","apiKey","fallbackPaywall","triggers","customUserId","customAPIEndpoint","customUserTraits","revenueCatAppUserId","presentUpsell","triggerName","onFallback","canPresentUpsell","canPresent","reason","fallbackOpenOrCloseEvent","hideUpsell","hideAllUpsells","getPaywallInfo","trigger","templateName","shouldShow","handleDeepLink","url","handled","UpsellView","fallbackViewProps","fallbackViewWrapperStyles","showFallback","HELIUM_CTA_NAMES","SCHEDULE_CALL","SUBSCRIBE_BUTTON"],"sourceRoot":"../../src","sources":["native-interface.tsx"],"mappings":"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","ignoreList":[]}
|
package/lib/module/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createCustomPurchaseConfig","callbacks","makePurchase","restorePurchases"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AAOA;;AAEA;;AAUA;AACA,OAAO,SAASA,0BAA0BA,CAACC,SAG1C,EAAwB;EACvB,OAAO;IACLC,YAAY,EAAED,SAAS,CAACC,YAAY;IACpCC,gBAAgB,EAAEF,SAAS,CAACE;EAC9B,CAAC;AACH;;AAEA;;
|
|
1
|
+
{"version":3,"names":["createCustomPurchaseConfig","callbacks","makePurchase","restorePurchases"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AAOA;;AAEA;;AAUA;AACA,OAAO,SAASA,0BAA0BA,CAACC,SAG1C,EAAwB;EACvB,OAAO;IACLC,YAAY,EAAED,SAAS,CAACC,YAAY;IACpCC,gBAAgB,EAAEF,SAAS,CAACE;EAC9B,CAAC;AACH;;AAEA;;AAmBA","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { createCustomPurchaseConfig } from './types';
|
|
2
|
-
export { HeliumProvider, initialize, presentUpsell, hideUpsell, hideAllUpsells, getPaywallInfo, UpsellView, HELIUM_CTA_NAMES, useHelium, NativeHeliumUpsellView, } from './native-interface';
|
|
2
|
+
export { HeliumProvider, initialize, presentUpsell, hideUpsell, hideAllUpsells, getPaywallInfo, handleDeepLink, UpsellView, HELIUM_CTA_NAMES, useHelium, NativeHeliumUpsellView, } from './native-interface';
|
|
3
3
|
export type { HeliumTransactionStatus, HeliumConfig, HeliumUpsellViewProps, } 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,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,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"}
|
|
@@ -13,13 +13,14 @@ interface HeliumProviderProps {
|
|
|
13
13
|
}
|
|
14
14
|
export declare const HeliumProvider: ({ children, fallbackView }: HeliumProviderProps) => import("react/jsx-runtime").JSX.Element;
|
|
15
15
|
export declare const initialize: (config: HeliumConfig) => Promise<void>;
|
|
16
|
-
export declare const presentUpsell: ({ triggerName, onFallback }: {
|
|
16
|
+
export declare const presentUpsell: ({ triggerName, onFallback, }: {
|
|
17
17
|
triggerName: string;
|
|
18
18
|
onFallback?: () => void;
|
|
19
19
|
}) => void;
|
|
20
20
|
export declare const hideUpsell: () => void;
|
|
21
21
|
export declare const hideAllUpsells: () => void;
|
|
22
22
|
export declare const getPaywallInfo: (trigger: string) => Promise<PaywallInfo | undefined>;
|
|
23
|
+
export declare const handleDeepLink: (url: string | null) => Promise<boolean>;
|
|
23
24
|
export declare const UpsellView: React.FC<HeliumUpsellViewProps & {
|
|
24
25
|
fallbackViewProps?: Record<string, any>;
|
|
25
26
|
fallbackViewWrapperStyles?: Record<string, any>;
|
|
@@ -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,
|
|
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"}
|
|
@@ -23,6 +23,7 @@ export interface HeliumConfig {
|
|
|
23
23
|
/** Callback for receiving all Helium paywall events. */
|
|
24
24
|
onHeliumPaywallEvent: (event: any) => void;
|
|
25
25
|
fallbackView?: number;
|
|
26
|
+
fallbackBundle?: object;
|
|
26
27
|
triggers?: string[];
|
|
27
28
|
customUserId?: string;
|
|
28
29
|
customAPIEndpoint?: string;
|
|
@@ -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,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,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,4 +1,4 @@
|
|
|
1
1
|
export { createCustomPurchaseConfig } from './types';
|
|
2
|
-
export { HeliumProvider, initialize, presentUpsell, hideUpsell, hideAllUpsells, getPaywallInfo, UpsellView, HELIUM_CTA_NAMES, useHelium, NativeHeliumUpsellView, } from './native-interface';
|
|
2
|
+
export { HeliumProvider, initialize, presentUpsell, hideUpsell, hideAllUpsells, getPaywallInfo, handleDeepLink, UpsellView, HELIUM_CTA_NAMES, useHelium, NativeHeliumUpsellView, } from './native-interface';
|
|
3
3
|
export type { HeliumTransactionStatus, HeliumConfig, HeliumUpsellViewProps, } 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,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,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"}
|
|
@@ -13,13 +13,14 @@ interface HeliumProviderProps {
|
|
|
13
13
|
}
|
|
14
14
|
export declare const HeliumProvider: ({ children, fallbackView }: HeliumProviderProps) => import("react/jsx-runtime").JSX.Element;
|
|
15
15
|
export declare const initialize: (config: HeliumConfig) => Promise<void>;
|
|
16
|
-
export declare const presentUpsell: ({ triggerName, onFallback }: {
|
|
16
|
+
export declare const presentUpsell: ({ triggerName, onFallback, }: {
|
|
17
17
|
triggerName: string;
|
|
18
18
|
onFallback?: () => void;
|
|
19
19
|
}) => void;
|
|
20
20
|
export declare const hideUpsell: () => void;
|
|
21
21
|
export declare const hideAllUpsells: () => void;
|
|
22
22
|
export declare const getPaywallInfo: (trigger: string) => Promise<PaywallInfo | undefined>;
|
|
23
|
+
export declare const handleDeepLink: (url: string | null) => Promise<boolean>;
|
|
23
24
|
export declare const UpsellView: React.FC<HeliumUpsellViewProps & {
|
|
24
25
|
fallbackViewProps?: Record<string, any>;
|
|
25
26
|
fallbackViewWrapperStyles?: Record<string, any>;
|
|
@@ -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,
|
|
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"}
|
|
@@ -23,6 +23,7 @@ export interface HeliumConfig {
|
|
|
23
23
|
/** Callback for receiving all Helium paywall events. */
|
|
24
24
|
onHeliumPaywallEvent: (event: any) => void;
|
|
25
25
|
fallbackView?: number;
|
|
26
|
+
fallbackBundle?: object;
|
|
26
27
|
triggers?: string[];
|
|
27
28
|
customUserId?: string;
|
|
28
29
|
customAPIEndpoint?: string;
|
|
@@ -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,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,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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tryheliumai/paywall-sdk-react-native",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.20",
|
|
4
4
|
"description": "Paywall SDK Helium",
|
|
5
5
|
"source": "./src/index.ts",
|
|
6
6
|
"main": "./lib/commonjs/index.js",
|
|
@@ -97,11 +97,15 @@
|
|
|
97
97
|
"@types/react": "^18.2.44"
|
|
98
98
|
},
|
|
99
99
|
"peerDependencies": {
|
|
100
|
+
"expo-file-system": "*",
|
|
100
101
|
"react": ">=18.2.0",
|
|
101
102
|
"react-native": ">=0.71.7",
|
|
102
103
|
"react-native-purchases": ">=5.1.0"
|
|
103
104
|
},
|
|
104
105
|
"peerDependenciesMeta": {
|
|
106
|
+
"expo-file-system": {
|
|
107
|
+
"optional": true
|
|
108
|
+
},
|
|
105
109
|
"react-native-purchases": {
|
|
106
110
|
"optional": true
|
|
107
111
|
}
|
package/src/index.ts
CHANGED
package/src/native-interface.tsx
CHANGED
|
@@ -186,6 +186,29 @@ export const initialize = async (config: HeliumConfig) => {
|
|
|
186
186
|
}
|
|
187
187
|
);
|
|
188
188
|
|
|
189
|
+
let fallbackBundleUrlString;
|
|
190
|
+
let fallbackBundleString;
|
|
191
|
+
if (config.fallbackBundle) {
|
|
192
|
+
try {
|
|
193
|
+
const ExpoFileSystem = require('expo-file-system');
|
|
194
|
+
|
|
195
|
+
const jsonContent = JSON.stringify(config.fallbackBundle);
|
|
196
|
+
|
|
197
|
+
// Write to documents directory
|
|
198
|
+
fallbackBundleUrlString = `${ExpoFileSystem.documentDirectory}helium-fallback.json`;
|
|
199
|
+
await ExpoFileSystem.writeAsStringAsync(
|
|
200
|
+
fallbackBundleUrlString,
|
|
201
|
+
jsonContent
|
|
202
|
+
);
|
|
203
|
+
} catch (error) {
|
|
204
|
+
// Fallback to string approach if expo-file-system isn't available
|
|
205
|
+
console.log(
|
|
206
|
+
'[Helium] expo-file-system not available, attempting to pass fallback bundle as string.'
|
|
207
|
+
);
|
|
208
|
+
fallbackBundleString = JSON.stringify(config.fallbackBundle);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
|
|
189
212
|
HeliumBridge.initialize(
|
|
190
213
|
{
|
|
191
214
|
apiKey: config.apiKey,
|
|
@@ -195,6 +218,8 @@ export const initialize = async (config: HeliumConfig) => {
|
|
|
195
218
|
customAPIEndpoint: config.customAPIEndpoint || null,
|
|
196
219
|
customUserTraits: config.customUserTraits == null ? {} : config.customUserTraits,
|
|
197
220
|
revenueCatAppUserId: config.revenueCatAppUserId,
|
|
221
|
+
fallbackBundleUrlString: fallbackBundleUrlString,
|
|
222
|
+
fallbackBundleString: fallbackBundleString,
|
|
198
223
|
},
|
|
199
224
|
{}
|
|
200
225
|
);
|
|
@@ -206,31 +231,32 @@ export const initialize = async (config: HeliumConfig) => {
|
|
|
206
231
|
// Update the other methods to be synchronous
|
|
207
232
|
export const presentUpsell = ({
|
|
208
233
|
triggerName,
|
|
209
|
-
onFallback
|
|
234
|
+
onFallback,
|
|
210
235
|
}: {
|
|
211
236
|
triggerName: string;
|
|
212
237
|
onFallback?: () => void;
|
|
213
238
|
}) => {
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
239
|
+
HeliumBridge.canPresentUpsell(
|
|
240
|
+
triggerName,
|
|
241
|
+
(canPresent: boolean, reason: string) => {
|
|
242
|
+
if (!canPresent) {
|
|
243
|
+
console.log(
|
|
244
|
+
`[Helium] Cannot present trigger "${triggerName}". Reason: ${reason}`
|
|
245
|
+
);
|
|
246
|
+
onFallback?.();
|
|
247
|
+
HeliumBridge.fallbackOpenOrCloseEvent(triggerName, true, 'presented');
|
|
248
|
+
return;
|
|
249
|
+
}
|
|
225
250
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
251
|
+
try {
|
|
252
|
+
HeliumBridge.presentUpsell(triggerName);
|
|
253
|
+
} catch (error) {
|
|
254
|
+
console.log('[Helium] Present error', error);
|
|
255
|
+
onFallback?.();
|
|
256
|
+
HeliumBridge.fallbackOpenOrCloseEvent(triggerName, true, 'presented');
|
|
257
|
+
}
|
|
232
258
|
}
|
|
233
|
-
|
|
259
|
+
);
|
|
234
260
|
};
|
|
235
261
|
|
|
236
262
|
export const hideUpsell = () => {
|
|
@@ -262,6 +288,17 @@ export const getPaywallInfo = async (
|
|
|
262
288
|
});
|
|
263
289
|
};
|
|
264
290
|
|
|
291
|
+
export const handleDeepLink = async (url: string | null): Promise<boolean> => {
|
|
292
|
+
return new Promise((resolve) => {
|
|
293
|
+
if (url) {
|
|
294
|
+
HeliumBridge.handleDeepLink(url, (handled: boolean) => {
|
|
295
|
+
console.log('[Helium] Handled deep link:', handled);
|
|
296
|
+
resolve(handled);
|
|
297
|
+
});
|
|
298
|
+
}
|
|
299
|
+
});
|
|
300
|
+
};
|
|
301
|
+
|
|
265
302
|
// Update the UpsellView component to handle the style prop
|
|
266
303
|
export const UpsellView: React.FC<HeliumUpsellViewProps & {
|
|
267
304
|
fallbackViewProps?: Record<string, any>;
|
package/src/types.ts
CHANGED
|
@@ -36,9 +36,10 @@ export interface HeliumConfig {
|
|
|
36
36
|
purchaseConfig: HeliumPurchaseConfig;
|
|
37
37
|
/** Callback for receiving all Helium paywall events. */
|
|
38
38
|
onHeliumPaywallEvent: (event: any) => void; // Still mandatory
|
|
39
|
-
|
|
39
|
+
|
|
40
40
|
// Optional configurations
|
|
41
|
-
fallbackView?: number;
|
|
41
|
+
fallbackView?: number;
|
|
42
|
+
fallbackBundle?: object;
|
|
42
43
|
triggers?: string[];
|
|
43
44
|
customUserId?: string;
|
|
44
45
|
customAPIEndpoint?: string;
|