@tryheliumai/paywall-sdk-react-native 0.2.16 → 0.2.18
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/ios/HeliumSwiftInterface.swift +13 -0
- package/ios/RCTHeliumBridge.m +5 -0
- package/lib/commonjs/handlers/revenuecat.js +4 -2
- package/lib/commonjs/handlers/revenuecat.js.map +1 -1
- package/lib/commonjs/index.js +2 -3
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/native-interface.js +23 -31
- package/lib/commonjs/native-interface.js.map +1 -1
- package/lib/commonjs/revenuecat.js +13 -0
- package/lib/commonjs/revenuecat.js.map +1 -0
- package/lib/commonjs/types.js +0 -7
- package/lib/commonjs/types.js.map +1 -1
- package/lib/module/handlers/revenuecat.js +4 -2
- package/lib/module/handlers/revenuecat.js.map +1 -1
- package/lib/module/index.js +1 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/native-interface.js +20 -28
- package/lib/module/native-interface.js.map +1 -1
- package/lib/module/revenuecat.js +4 -0
- package/lib/module/revenuecat.js.map +1 -0
- package/lib/module/types.js +0 -7
- package/lib/module/types.js.map +1 -1
- package/lib/typescript/commonjs/src/handlers/revenuecat.d.ts +2 -2
- package/lib/typescript/commonjs/src/handlers/revenuecat.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/index.d.ts +2 -3
- 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/revenuecat.d.ts +2 -0
- package/lib/typescript/commonjs/src/revenuecat.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/types.d.ts +7 -10
- package/lib/typescript/commonjs/src/types.d.ts.map +1 -1
- package/lib/typescript/module/src/handlers/revenuecat.d.ts +2 -2
- package/lib/typescript/module/src/handlers/revenuecat.d.ts.map +1 -1
- package/lib/typescript/module/src/index.d.ts +2 -3
- 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/revenuecat.d.ts +2 -0
- package/lib/typescript/module/src/revenuecat.d.ts.map +1 -0
- package/lib/typescript/module/src/types.d.ts +7 -10
- package/lib/typescript/module/src/types.d.ts.map +1 -1
- package/package.json +6 -1
- package/src/handlers/revenuecat.ts +8 -4
- package/src/index.ts +17 -9
- package/src/native-interface.tsx +27 -33
- package/src/revenuecat.ts +1 -0
- package/src/types.ts +10 -15
|
@@ -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.0.13'
|
|
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.
|
|
@@ -303,4 +303,17 @@ class HeliumBridge: RCTEventEmitter {
|
|
|
303
303
|
HeliumPaywallDelegateWrapper.shared.onFallbackOpenCloseEvent(trigger: trigger, isOpen: isOpen, viewType: viewType)
|
|
304
304
|
}
|
|
305
305
|
|
|
306
|
+
@objc
|
|
307
|
+
public func getPaywallInfo(
|
|
308
|
+
_ trigger: String,
|
|
309
|
+
callback: RCTResponseSenderBlock
|
|
310
|
+
) {
|
|
311
|
+
guard let paywallInfo = Helium.shared.getPaywallInfo(trigger: trigger) else {
|
|
312
|
+
callback(["Invalid trigger or paywalls not ready.", NSNull(), NSNull()])
|
|
313
|
+
return
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
callback([NSNull(), paywallInfo.paywallTemplateName, paywallInfo.shouldShow])
|
|
317
|
+
}
|
|
318
|
+
|
|
306
319
|
}
|
package/ios/RCTHeliumBridge.m
CHANGED
|
@@ -10,9 +10,11 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
|
|
|
10
10
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
11
|
// Rename the factory function
|
|
12
12
|
function createRevenueCatPurchaseConfig(config) {
|
|
13
|
+
const rcHandler = new RevenueCatHeliumHandler(config?.apiKey);
|
|
13
14
|
return {
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
apiKey: config?.apiKey,
|
|
16
|
+
makePurchase: rcHandler.makePurchase.bind(rcHandler),
|
|
17
|
+
restorePurchases: rcHandler.restorePurchases.bind(rcHandler)
|
|
16
18
|
};
|
|
17
19
|
}
|
|
18
20
|
class RevenueCatHeliumHandler {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativePurchases","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","createRevenueCatPurchaseConfig","config","
|
|
1
|
+
{"version":3,"names":["_reactNativePurchases","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","createRevenueCatPurchaseConfig","config","rcHandler","RevenueCatHeliumHandler","apiKey","makePurchase","bind","restorePurchases","productIdToPackageMapping","isMappingInitialized","initializationPromise","constructor","Purchases","configure","initializePackageMapping","offerings","getOfferings","current","availablePackages","forEach","pkg","product","identifier","error","ensureMappingInitialized","productId","status","customerInfo","purchasePackage","isActive","isProductActive","purchasesError","code","PURCHASES_ERROR_CODE","PAYMENT_PENDING_ERROR","Promise","resolve","updateListener","updatedCustomerInfo","clearTimeout","timeoutId","removeCustomerInfoUpdateListener","setTimeout","addCustomerInfoUpdateListener","PURCHASE_CANCELLED_ERROR","message","values","entitlements","active","some","entitlement","productIdentifier","activeSubscriptions","includes","allPurchasedProductIdentifiers","keys","length","exports"],"sourceRoot":"../../../src","sources":["handlers/revenuecat.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/index.js
CHANGED
|
@@ -33,10 +33,10 @@ Object.defineProperty(exports, "createCustomPurchaseConfig", {
|
|
|
33
33
|
return _types.createCustomPurchaseConfig;
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
|
-
Object.defineProperty(exports, "
|
|
36
|
+
Object.defineProperty(exports, "getPaywallInfo", {
|
|
37
37
|
enumerable: true,
|
|
38
38
|
get: function () {
|
|
39
|
-
return
|
|
39
|
+
return _nativeInterface.getPaywallInfo;
|
|
40
40
|
}
|
|
41
41
|
});
|
|
42
42
|
Object.defineProperty(exports, "hideAllUpsells", {
|
|
@@ -69,7 +69,6 @@ Object.defineProperty(exports, "useHelium", {
|
|
|
69
69
|
return _nativeInterface.useHelium;
|
|
70
70
|
}
|
|
71
71
|
});
|
|
72
|
-
var _revenuecat = require("./handlers/revenuecat.js");
|
|
73
72
|
var _types = require("./types.js");
|
|
74
73
|
var _nativeInterface = require("./native-interface.js");
|
|
75
74
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
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,13 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.useHelium = exports.presentUpsell = exports.initialize = exports.hideUpsell = exports.hideAllUpsells = 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.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
|
-
var _revenuecat = require("./handlers/revenuecat.js");
|
|
10
|
-
var _reactNativePurchases = _interopRequireDefault(require("react-native-purchases"));
|
|
11
9
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
10
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
14
11
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
15
12
|
const {
|
|
@@ -125,26 +122,10 @@ const initialize = async config => {
|
|
|
125
122
|
if (!viewTag) {
|
|
126
123
|
throw new Error('Failed to get fallback view reference. Make sure HeliumProvider is mounted with a fallback view.');
|
|
127
124
|
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
// Instantiate RevenueCat handler
|
|
133
|
-
const rcHandler = new _revenuecat.RevenueCatHeliumHandler(config.purchaseConfig.apiKey);
|
|
134
|
-
purchaseHandler = {
|
|
135
|
-
makePurchase: rcHandler.makePurchase.bind(rcHandler),
|
|
136
|
-
restorePurchases: rcHandler.restorePurchases.bind(rcHandler)
|
|
137
|
-
};
|
|
138
|
-
} else if (config.purchaseConfig.type === 'custom') {
|
|
139
|
-
// Use custom callbacks
|
|
140
|
-
purchaseHandler = {
|
|
141
|
-
makePurchase: config.purchaseConfig.makePurchase,
|
|
142
|
-
restorePurchases: config.purchaseConfig.restorePurchases
|
|
143
|
-
};
|
|
144
|
-
} else {
|
|
145
|
-
// Handle potential future types or throw error
|
|
146
|
-
throw new Error('Invalid purchaseConfig type provided.');
|
|
147
|
-
}
|
|
125
|
+
const purchaseHandler = {
|
|
126
|
+
makePurchase: config.purchaseConfig.makePurchase,
|
|
127
|
+
restorePurchases: config.purchaseConfig.restorePurchases
|
|
128
|
+
};
|
|
148
129
|
|
|
149
130
|
// Update download status to inProgress
|
|
150
131
|
updateDownloadStatus('inProgress');
|
|
@@ -198,11 +179,6 @@ const initialize = async config => {
|
|
|
198
179
|
status: success ? 'restored' : 'failed'
|
|
199
180
|
});
|
|
200
181
|
});
|
|
201
|
-
const usingRevenueCat = await _reactNativePurchases.default.isConfigured();
|
|
202
|
-
let revenueCatAppUserId = null;
|
|
203
|
-
if (usingRevenueCat) {
|
|
204
|
-
revenueCatAppUserId = await _reactNativePurchases.default.getAppUserID();
|
|
205
|
-
}
|
|
206
182
|
HeliumBridge.initialize({
|
|
207
183
|
apiKey: config.apiKey,
|
|
208
184
|
fallbackPaywall: viewTag,
|
|
@@ -210,7 +186,7 @@ const initialize = async config => {
|
|
|
210
186
|
customUserId: config.customUserId || null,
|
|
211
187
|
customAPIEndpoint: config.customAPIEndpoint || null,
|
|
212
188
|
customUserTraits: config.customUserTraits == null ? {} : config.customUserTraits,
|
|
213
|
-
revenueCatAppUserId: revenueCatAppUserId
|
|
189
|
+
revenueCatAppUserId: config.revenueCatAppUserId
|
|
214
190
|
}, {});
|
|
215
191
|
|
|
216
192
|
// Mark as initialized after successful initialization
|
|
@@ -248,9 +224,25 @@ exports.hideUpsell = hideUpsell;
|
|
|
248
224
|
const hideAllUpsells = () => {
|
|
249
225
|
HeliumBridge.hideAllUpsells();
|
|
250
226
|
};
|
|
227
|
+
exports.hideAllUpsells = hideAllUpsells;
|
|
228
|
+
const getPaywallInfo = async trigger => {
|
|
229
|
+
return new Promise(resolve => {
|
|
230
|
+
HeliumBridge.getPaywallInfo(trigger, (error, templateName, shouldShow) => {
|
|
231
|
+
if (error) {
|
|
232
|
+
console.log(`[Helium] ${error}`);
|
|
233
|
+
resolve(undefined);
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
resolve({
|
|
237
|
+
paywallTemplateName: templateName,
|
|
238
|
+
shouldShow: shouldShow
|
|
239
|
+
});
|
|
240
|
+
});
|
|
241
|
+
});
|
|
242
|
+
};
|
|
251
243
|
|
|
252
244
|
// Update the UpsellView component to handle the style prop
|
|
253
|
-
exports.
|
|
245
|
+
exports.getPaywallInfo = getPaywallInfo;
|
|
254
246
|
const UpsellView = ({
|
|
255
247
|
trigger,
|
|
256
248
|
fallbackViewProps,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_react","_interopRequireWildcard","
|
|
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":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "createRevenueCatPurchaseConfig", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _revenuecat.createRevenueCatPurchaseConfig;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _revenuecat = require("./handlers/revenuecat.js");
|
|
13
|
+
//# sourceMappingURL=revenuecat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_revenuecat","require"],"sourceRoot":"../../src","sources":["revenuecat.ts"],"mappings":";;;;;;;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA","ignoreList":[]}
|
package/lib/commonjs/types.js
CHANGED
|
@@ -8,16 +8,9 @@ exports.createCustomPurchaseConfig = createCustomPurchaseConfig;
|
|
|
8
8
|
|
|
9
9
|
/** Interface for providing custom purchase handling logic. */
|
|
10
10
|
|
|
11
|
-
/** Configuration for using the built-in RevenueCat handler. */
|
|
12
|
-
|
|
13
|
-
// Union type for the purchase configuration
|
|
14
|
-
|
|
15
|
-
// Add other config types here in the future, e.g. | StripePurchaseConfig
|
|
16
|
-
|
|
17
11
|
// Helper function for creating Custom Purchase Config
|
|
18
12
|
function createCustomPurchaseConfig(callbacks) {
|
|
19
13
|
return {
|
|
20
|
-
type: 'custom',
|
|
21
14
|
makePurchase: callbacks.makePurchase,
|
|
22
15
|
restorePurchases: callbacks.restorePurchases
|
|
23
16
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createCustomPurchaseConfig","callbacks","
|
|
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;;AAkBA","ignoreList":[]}
|
|
@@ -3,9 +3,11 @@
|
|
|
3
3
|
import Purchases, { PURCHASES_ERROR_CODE } from 'react-native-purchases';
|
|
4
4
|
// Rename the factory function
|
|
5
5
|
export function createRevenueCatPurchaseConfig(config) {
|
|
6
|
+
const rcHandler = new RevenueCatHeliumHandler(config?.apiKey);
|
|
6
7
|
return {
|
|
7
|
-
|
|
8
|
-
|
|
8
|
+
apiKey: config?.apiKey,
|
|
9
|
+
makePurchase: rcHandler.makePurchase.bind(rcHandler),
|
|
10
|
+
restorePurchases: rcHandler.restorePurchases.bind(rcHandler)
|
|
9
11
|
};
|
|
10
12
|
}
|
|
11
13
|
export class RevenueCatHeliumHandler {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Purchases","PURCHASES_ERROR_CODE","createRevenueCatPurchaseConfig","config","
|
|
1
|
+
{"version":3,"names":["Purchases","PURCHASES_ERROR_CODE","createRevenueCatPurchaseConfig","config","rcHandler","RevenueCatHeliumHandler","apiKey","makePurchase","bind","restorePurchases","productIdToPackageMapping","isMappingInitialized","initializationPromise","constructor","configure","initializePackageMapping","offerings","getOfferings","current","availablePackages","forEach","pkg","product","identifier","error","ensureMappingInitialized","productId","status","customerInfo","purchasePackage","isActive","isProductActive","purchasesError","code","PAYMENT_PENDING_ERROR","Promise","resolve","updateListener","updatedCustomerInfo","clearTimeout","timeoutId","removeCustomerInfoUpdateListener","setTimeout","addCustomerInfoUpdateListener","PURCHASE_CANCELLED_ERROR","message","Object","values","entitlements","active","some","entitlement","productIdentifier","activeSubscriptions","includes","allPurchasedProductIdentifiers","keys","length"],"sourceRoot":"../../../src","sources":["handlers/revenuecat.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
export { createRevenueCatPurchaseConfig } from "./handlers/revenuecat.js";
|
|
4
3
|
export { createCustomPurchaseConfig } from "./types.js";
|
|
5
|
-
export { HeliumProvider, initialize, presentUpsell, hideUpsell, hideAllUpsells, UpsellView, HELIUM_CTA_NAMES, useHelium, NativeHeliumUpsellView } from "./native-interface.js";
|
|
4
|
+
export { HeliumProvider, initialize, presentUpsell, hideUpsell, hideAllUpsells, getPaywallInfo, UpsellView, HELIUM_CTA_NAMES, useHelium, NativeHeliumUpsellView } from "./native-interface.js";
|
|
6
5
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
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":[]}
|
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
import { findNodeHandle, NativeModules, View, NativeEventEmitter, requireNativeComponent } from 'react-native';
|
|
4
4
|
import React, { createRef, useEffect, useState, createContext, useContext } from 'react';
|
|
5
|
-
import { RevenueCatHeliumHandler } from "./handlers/revenuecat.js";
|
|
6
|
-
import Purchases from 'react-native-purchases';
|
|
7
5
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
6
|
const {
|
|
9
7
|
HeliumBridge
|
|
@@ -116,26 +114,10 @@ export const initialize = async config => {
|
|
|
116
114
|
if (!viewTag) {
|
|
117
115
|
throw new Error('Failed to get fallback view reference. Make sure HeliumProvider is mounted with a fallback view.');
|
|
118
116
|
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
// Instantiate RevenueCat handler
|
|
124
|
-
const rcHandler = new RevenueCatHeliumHandler(config.purchaseConfig.apiKey);
|
|
125
|
-
purchaseHandler = {
|
|
126
|
-
makePurchase: rcHandler.makePurchase.bind(rcHandler),
|
|
127
|
-
restorePurchases: rcHandler.restorePurchases.bind(rcHandler)
|
|
128
|
-
};
|
|
129
|
-
} else if (config.purchaseConfig.type === 'custom') {
|
|
130
|
-
// Use custom callbacks
|
|
131
|
-
purchaseHandler = {
|
|
132
|
-
makePurchase: config.purchaseConfig.makePurchase,
|
|
133
|
-
restorePurchases: config.purchaseConfig.restorePurchases
|
|
134
|
-
};
|
|
135
|
-
} else {
|
|
136
|
-
// Handle potential future types or throw error
|
|
137
|
-
throw new Error('Invalid purchaseConfig type provided.');
|
|
138
|
-
}
|
|
117
|
+
const purchaseHandler = {
|
|
118
|
+
makePurchase: config.purchaseConfig.makePurchase,
|
|
119
|
+
restorePurchases: config.purchaseConfig.restorePurchases
|
|
120
|
+
};
|
|
139
121
|
|
|
140
122
|
// Update download status to inProgress
|
|
141
123
|
updateDownloadStatus('inProgress');
|
|
@@ -189,11 +171,6 @@ export const initialize = async config => {
|
|
|
189
171
|
status: success ? 'restored' : 'failed'
|
|
190
172
|
});
|
|
191
173
|
});
|
|
192
|
-
const usingRevenueCat = await Purchases.isConfigured();
|
|
193
|
-
let revenueCatAppUserId = null;
|
|
194
|
-
if (usingRevenueCat) {
|
|
195
|
-
revenueCatAppUserId = await Purchases.getAppUserID();
|
|
196
|
-
}
|
|
197
174
|
HeliumBridge.initialize({
|
|
198
175
|
apiKey: config.apiKey,
|
|
199
176
|
fallbackPaywall: viewTag,
|
|
@@ -201,7 +178,7 @@ export const initialize = async config => {
|
|
|
201
178
|
customUserId: config.customUserId || null,
|
|
202
179
|
customAPIEndpoint: config.customAPIEndpoint || null,
|
|
203
180
|
customUserTraits: config.customUserTraits == null ? {} : config.customUserTraits,
|
|
204
|
-
revenueCatAppUserId: revenueCatAppUserId
|
|
181
|
+
revenueCatAppUserId: config.revenueCatAppUserId
|
|
205
182
|
}, {});
|
|
206
183
|
|
|
207
184
|
// Mark as initialized after successful initialization
|
|
@@ -236,6 +213,21 @@ export const hideUpsell = () => {
|
|
|
236
213
|
export const hideAllUpsells = () => {
|
|
237
214
|
HeliumBridge.hideAllUpsells();
|
|
238
215
|
};
|
|
216
|
+
export const getPaywallInfo = async trigger => {
|
|
217
|
+
return new Promise(resolve => {
|
|
218
|
+
HeliumBridge.getPaywallInfo(trigger, (error, templateName, shouldShow) => {
|
|
219
|
+
if (error) {
|
|
220
|
+
console.log(`[Helium] ${error}`);
|
|
221
|
+
resolve(undefined);
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
224
|
+
resolve({
|
|
225
|
+
paywallTemplateName: templateName,
|
|
226
|
+
shouldShow: shouldShow
|
|
227
|
+
});
|
|
228
|
+
});
|
|
229
|
+
});
|
|
230
|
+
};
|
|
239
231
|
|
|
240
232
|
// Update the UpsellView component to handle the style prop
|
|
241
233
|
export const UpsellView = ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["findNodeHandle","NativeModules","View","NativeEventEmitter","requireNativeComponent","React","createRef","useEffect","useState","createContext","useContext","
|
|
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","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":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createRevenueCatPurchaseConfig"],"sourceRoot":"../../src","sources":["revenuecat.ts"],"mappings":";;AAAA,SAASA,8BAA8B,QAAQ,0BAAuB","ignoreList":[]}
|
package/lib/module/types.js
CHANGED
|
@@ -4,16 +4,9 @@
|
|
|
4
4
|
|
|
5
5
|
/** Interface for providing custom purchase handling logic. */
|
|
6
6
|
|
|
7
|
-
/** Configuration for using the built-in RevenueCat handler. */
|
|
8
|
-
|
|
9
|
-
// Union type for the purchase configuration
|
|
10
|
-
|
|
11
|
-
// Add other config types here in the future, e.g. | StripePurchaseConfig
|
|
12
|
-
|
|
13
7
|
// Helper function for creating Custom Purchase Config
|
|
14
8
|
export function createCustomPurchaseConfig(callbacks) {
|
|
15
9
|
return {
|
|
16
|
-
type: 'custom',
|
|
17
10
|
makePurchase: callbacks.makePurchase,
|
|
18
11
|
restorePurchases: callbacks.restorePurchases
|
|
19
12
|
};
|
package/lib/module/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createCustomPurchaseConfig","callbacks","
|
|
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;;AAkBA","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { HeliumPurchaseConfig, HeliumPurchaseResult } from '../types';
|
|
2
2
|
export declare function createRevenueCatPurchaseConfig(config?: {
|
|
3
3
|
apiKey?: string;
|
|
4
|
-
}):
|
|
4
|
+
}): HeliumPurchaseConfig;
|
|
5
5
|
export declare class RevenueCatHeliumHandler {
|
|
6
6
|
private productIdToPackageMapping;
|
|
7
7
|
private isMappingInitialized;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"revenuecat.d.ts","sourceRoot":"","sources":["../../../../../src/handlers/revenuecat.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,
|
|
1
|
+
{"version":3,"file":"revenuecat.d.ts","sourceRoot":"","sources":["../../../../../src/handlers/revenuecat.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAI3E,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;gBAE/C,MAAM,CAAC,EAAE,MAAM;YAQb,wBAAwB;YAyBxB,wBAAwB;IAQhC,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA0DpE,OAAO,CAAC,eAAe;IAMjB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC;CAS7C"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
export { createRevenueCatPurchaseConfig } from './handlers/revenuecat';
|
|
2
1
|
export { createCustomPurchaseConfig } from './types';
|
|
3
|
-
export { HeliumProvider, initialize, presentUpsell, hideUpsell, hideAllUpsells, UpsellView, HELIUM_CTA_NAMES, useHelium, NativeHeliumUpsellView } from './native-interface';
|
|
4
|
-
export type { HeliumTransactionStatus, HeliumConfig, HeliumUpsellViewProps,
|
|
2
|
+
export { HeliumProvider, initialize, presentUpsell, hideUpsell, hideAllUpsells, getPaywallInfo, UpsellView, HELIUM_CTA_NAMES, useHelium, NativeHeliumUpsellView, } from './native-interface';
|
|
3
|
+
export type { HeliumTransactionStatus, HeliumConfig, HeliumUpsellViewProps, } from './types';
|
|
5
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,
|
|
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,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { HeliumConfig, HeliumUpsellViewProps, HeliumDownloadStatus } from './types';
|
|
2
|
+
import type { HeliumConfig, HeliumUpsellViewProps, HeliumDownloadStatus, PaywallInfo } from './types';
|
|
3
3
|
export declare const NativeHeliumUpsellView: import("react-native").HostComponent<HeliumUpsellViewProps>;
|
|
4
4
|
export declare const getDownloadStatus: () => HeliumDownloadStatus;
|
|
5
5
|
interface HeliumContextType {
|
|
@@ -19,6 +19,7 @@ export declare const presentUpsell: ({ triggerName, onFallback }: {
|
|
|
19
19
|
}) => void;
|
|
20
20
|
export declare const hideUpsell: () => void;
|
|
21
21
|
export declare const hideAllUpsells: () => void;
|
|
22
|
+
export declare const getPaywallInfo: (trigger: string) => Promise<PaywallInfo | undefined>;
|
|
22
23
|
export declare const UpsellView: React.FC<HeliumUpsellViewProps & {
|
|
23
24
|
fallbackViewProps?: Record<string, any>;
|
|
24
25
|
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,
|
|
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,kBA8FpD,CAAC;AAGF,eAAO,MAAM,aAAa,gCAGvB;IACD,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB,SAqBA,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;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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"revenuecat.d.ts","sourceRoot":"","sources":["../../../../src/revenuecat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -5,24 +5,16 @@ export type HeliumPurchaseResult = {
|
|
|
5
5
|
};
|
|
6
6
|
export type HeliumDownloadStatus = 'success' | 'failed' | 'inProgress' | 'notStarted';
|
|
7
7
|
/** Interface for providing custom purchase handling logic. */
|
|
8
|
-
export interface
|
|
8
|
+
export interface HeliumPurchaseConfig {
|
|
9
9
|
makePurchase: (productId: string) => Promise<HeliumPurchaseResult>;
|
|
10
10
|
restorePurchases: () => Promise<boolean>;
|
|
11
|
-
/** Discriminant property to identify custom callbacks */
|
|
12
|
-
type: 'custom';
|
|
13
|
-
}
|
|
14
|
-
/** Configuration for using the built-in RevenueCat handler. */
|
|
15
|
-
export interface RevenueCatPurchaseConfig {
|
|
16
11
|
/** Optional RevenueCat API Key. If not provided, RevenueCat must be configured elsewhere. */
|
|
17
12
|
apiKey?: string;
|
|
18
|
-
/** Discriminant property to identify RevenueCat config */
|
|
19
|
-
type: 'revenuecat';
|
|
20
13
|
}
|
|
21
|
-
export type HeliumPurchaseConfig = CustomPurchaseConfig | RevenueCatPurchaseConfig;
|
|
22
14
|
export declare function createCustomPurchaseConfig(callbacks: {
|
|
23
15
|
makePurchase: (productId: string) => Promise<HeliumPurchaseResult>;
|
|
24
16
|
restorePurchases: () => Promise<boolean>;
|
|
25
|
-
}):
|
|
17
|
+
}): HeliumPurchaseConfig;
|
|
26
18
|
export interface HeliumConfig {
|
|
27
19
|
/** Your Helium API Key */
|
|
28
20
|
apiKey: string;
|
|
@@ -35,9 +27,14 @@ export interface HeliumConfig {
|
|
|
35
27
|
customUserId?: string;
|
|
36
28
|
customAPIEndpoint?: string;
|
|
37
29
|
customUserTraits?: Record<string, any>;
|
|
30
|
+
revenueCatAppUserId?: string;
|
|
38
31
|
}
|
|
39
32
|
export interface HeliumUpsellViewProps {
|
|
40
33
|
trigger: string;
|
|
41
34
|
style?: any;
|
|
42
35
|
}
|
|
36
|
+
export interface PaywallInfo {
|
|
37
|
+
paywallTemplateName: string;
|
|
38
|
+
shouldShow: boolean;
|
|
39
|
+
}
|
|
43
40
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -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;
|
|
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,7 +1,7 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { HeliumPurchaseConfig, HeliumPurchaseResult } from '../types';
|
|
2
2
|
export declare function createRevenueCatPurchaseConfig(config?: {
|
|
3
3
|
apiKey?: string;
|
|
4
|
-
}):
|
|
4
|
+
}): HeliumPurchaseConfig;
|
|
5
5
|
export declare class RevenueCatHeliumHandler {
|
|
6
6
|
private productIdToPackageMapping;
|
|
7
7
|
private isMappingInitialized;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"revenuecat.d.ts","sourceRoot":"","sources":["../../../../../src/handlers/revenuecat.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,
|
|
1
|
+
{"version":3,"file":"revenuecat.d.ts","sourceRoot":"","sources":["../../../../../src/handlers/revenuecat.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAI3E,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;gBAE/C,MAAM,CAAC,EAAE,MAAM;YAQb,wBAAwB;YAyBxB,wBAAwB;IAQhC,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA0DpE,OAAO,CAAC,eAAe;IAMjB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC;CAS7C"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
export { createRevenueCatPurchaseConfig } from './handlers/revenuecat';
|
|
2
1
|
export { createCustomPurchaseConfig } from './types';
|
|
3
|
-
export { HeliumProvider, initialize, presentUpsell, hideUpsell, hideAllUpsells, UpsellView, HELIUM_CTA_NAMES, useHelium, NativeHeliumUpsellView } from './native-interface';
|
|
4
|
-
export type { HeliumTransactionStatus, HeliumConfig, HeliumUpsellViewProps,
|
|
2
|
+
export { HeliumProvider, initialize, presentUpsell, hideUpsell, hideAllUpsells, getPaywallInfo, UpsellView, HELIUM_CTA_NAMES, useHelium, NativeHeliumUpsellView, } from './native-interface';
|
|
3
|
+
export type { HeliumTransactionStatus, HeliumConfig, HeliumUpsellViewProps, } from './types';
|
|
5
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,
|
|
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,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { HeliumConfig, HeliumUpsellViewProps, HeliumDownloadStatus } from './types';
|
|
2
|
+
import type { HeliumConfig, HeliumUpsellViewProps, HeliumDownloadStatus, PaywallInfo } from './types';
|
|
3
3
|
export declare const NativeHeliumUpsellView: import("react-native").HostComponent<HeliumUpsellViewProps>;
|
|
4
4
|
export declare const getDownloadStatus: () => HeliumDownloadStatus;
|
|
5
5
|
interface HeliumContextType {
|
|
@@ -19,6 +19,7 @@ export declare const presentUpsell: ({ triggerName, onFallback }: {
|
|
|
19
19
|
}) => void;
|
|
20
20
|
export declare const hideUpsell: () => void;
|
|
21
21
|
export declare const hideAllUpsells: () => void;
|
|
22
|
+
export declare const getPaywallInfo: (trigger: string) => Promise<PaywallInfo | undefined>;
|
|
22
23
|
export declare const UpsellView: React.FC<HeliumUpsellViewProps & {
|
|
23
24
|
fallbackViewProps?: Record<string, any>;
|
|
24
25
|
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,
|
|
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,kBA8FpD,CAAC;AAGF,eAAO,MAAM,aAAa,gCAGvB;IACD,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB,SAqBA,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;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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"revenuecat.d.ts","sourceRoot":"","sources":["../../../../src/revenuecat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -5,24 +5,16 @@ export type HeliumPurchaseResult = {
|
|
|
5
5
|
};
|
|
6
6
|
export type HeliumDownloadStatus = 'success' | 'failed' | 'inProgress' | 'notStarted';
|
|
7
7
|
/** Interface for providing custom purchase handling logic. */
|
|
8
|
-
export interface
|
|
8
|
+
export interface HeliumPurchaseConfig {
|
|
9
9
|
makePurchase: (productId: string) => Promise<HeliumPurchaseResult>;
|
|
10
10
|
restorePurchases: () => Promise<boolean>;
|
|
11
|
-
/** Discriminant property to identify custom callbacks */
|
|
12
|
-
type: 'custom';
|
|
13
|
-
}
|
|
14
|
-
/** Configuration for using the built-in RevenueCat handler. */
|
|
15
|
-
export interface RevenueCatPurchaseConfig {
|
|
16
11
|
/** Optional RevenueCat API Key. If not provided, RevenueCat must be configured elsewhere. */
|
|
17
12
|
apiKey?: string;
|
|
18
|
-
/** Discriminant property to identify RevenueCat config */
|
|
19
|
-
type: 'revenuecat';
|
|
20
13
|
}
|
|
21
|
-
export type HeliumPurchaseConfig = CustomPurchaseConfig | RevenueCatPurchaseConfig;
|
|
22
14
|
export declare function createCustomPurchaseConfig(callbacks: {
|
|
23
15
|
makePurchase: (productId: string) => Promise<HeliumPurchaseResult>;
|
|
24
16
|
restorePurchases: () => Promise<boolean>;
|
|
25
|
-
}):
|
|
17
|
+
}): HeliumPurchaseConfig;
|
|
26
18
|
export interface HeliumConfig {
|
|
27
19
|
/** Your Helium API Key */
|
|
28
20
|
apiKey: string;
|
|
@@ -35,9 +27,14 @@ export interface HeliumConfig {
|
|
|
35
27
|
customUserId?: string;
|
|
36
28
|
customAPIEndpoint?: string;
|
|
37
29
|
customUserTraits?: Record<string, any>;
|
|
30
|
+
revenueCatAppUserId?: string;
|
|
38
31
|
}
|
|
39
32
|
export interface HeliumUpsellViewProps {
|
|
40
33
|
trigger: string;
|
|
41
34
|
style?: any;
|
|
42
35
|
}
|
|
36
|
+
export interface PaywallInfo {
|
|
37
|
+
paywallTemplateName: string;
|
|
38
|
+
shouldShow: boolean;
|
|
39
|
+
}
|
|
43
40
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -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;
|
|
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"}
|
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.18",
|
|
4
4
|
"description": "Paywall SDK Helium",
|
|
5
5
|
"source": "./src/index.ts",
|
|
6
6
|
"main": "./lib/commonjs/index.js",
|
|
@@ -101,6 +101,11 @@
|
|
|
101
101
|
"react-native": ">=0.71.7",
|
|
102
102
|
"react-native-purchases": ">=5.1.0"
|
|
103
103
|
},
|
|
104
|
+
"peerDependenciesMeta": {
|
|
105
|
+
"react-native-purchases": {
|
|
106
|
+
"optional": true
|
|
107
|
+
}
|
|
108
|
+
},
|
|
104
109
|
"workspaces": [
|
|
105
110
|
"example"
|
|
106
111
|
],
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import Purchases, { PURCHASES_ERROR_CODE } from 'react-native-purchases';
|
|
2
|
-
import type {
|
|
2
|
+
import type { HeliumPurchaseConfig, HeliumPurchaseResult } from '../types';
|
|
3
3
|
import type { PurchasesError, PurchasesPackage, CustomerInfoUpdateListener, CustomerInfo, PurchasesEntitlementInfo } from 'react-native-purchases';
|
|
4
4
|
|
|
5
5
|
// Rename the factory function
|
|
6
|
-
export function createRevenueCatPurchaseConfig(config?: {
|
|
6
|
+
export function createRevenueCatPurchaseConfig(config?: {
|
|
7
|
+
apiKey?: string;
|
|
8
|
+
}): HeliumPurchaseConfig {
|
|
9
|
+
const rcHandler = new RevenueCatHeliumHandler(config?.apiKey);
|
|
7
10
|
return {
|
|
8
|
-
|
|
9
|
-
|
|
11
|
+
apiKey: config?.apiKey,
|
|
12
|
+
makePurchase: rcHandler.makePurchase.bind(rcHandler),
|
|
13
|
+
restorePurchases: rcHandler.restorePurchases.bind(rcHandler),
|
|
10
14
|
};
|
|
11
15
|
}
|
|
12
16
|
|
package/src/index.ts
CHANGED
|
@@ -1,12 +1,20 @@
|
|
|
1
|
-
export { createRevenueCatPurchaseConfig } from './handlers/revenuecat';
|
|
2
1
|
export { createCustomPurchaseConfig } from './types';
|
|
3
2
|
|
|
4
|
-
export {
|
|
3
|
+
export {
|
|
4
|
+
HeliumProvider,
|
|
5
|
+
initialize,
|
|
6
|
+
presentUpsell,
|
|
7
|
+
hideUpsell,
|
|
8
|
+
hideAllUpsells,
|
|
9
|
+
getPaywallInfo,
|
|
10
|
+
UpsellView,
|
|
11
|
+
HELIUM_CTA_NAMES,
|
|
12
|
+
useHelium,
|
|
13
|
+
NativeHeliumUpsellView,
|
|
14
|
+
} from './native-interface';
|
|
5
15
|
|
|
6
|
-
export type {
|
|
7
|
-
HeliumTransactionStatus,
|
|
8
|
-
HeliumConfig,
|
|
9
|
-
HeliumUpsellViewProps,
|
|
10
|
-
|
|
11
|
-
CustomPurchaseConfig
|
|
12
|
-
} from './types';
|
|
16
|
+
export type {
|
|
17
|
+
HeliumTransactionStatus,
|
|
18
|
+
HeliumConfig,
|
|
19
|
+
HeliumUpsellViewProps,
|
|
20
|
+
} from './types';
|
package/src/native-interface.tsx
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { findNodeHandle, NativeModules, View, NativeEventEmitter, requireNativeComponent } from 'react-native';
|
|
2
2
|
import React, { createRef, useEffect, useState, createContext, useContext } from 'react';
|
|
3
|
-
import type { HeliumConfig, HeliumUpsellViewProps, HeliumDownloadStatus,
|
|
4
|
-
import { RevenueCatHeliumHandler } from './handlers/revenuecat';
|
|
5
|
-
import Purchases from 'react-native-purchases';
|
|
3
|
+
import type { HeliumConfig, HeliumUpsellViewProps, HeliumDownloadStatus, PaywallInfo } from './types';
|
|
6
4
|
|
|
7
5
|
const { HeliumBridge } = NativeModules;
|
|
8
6
|
const heliumEventEmitter = new NativeEventEmitter(HeliumBridge);
|
|
@@ -125,30 +123,11 @@ export const initialize = async (config: HeliumConfig) => {
|
|
|
125
123
|
throw new Error('Failed to get fallback view reference. Make sure HeliumProvider is mounted with a fallback view.');
|
|
126
124
|
}
|
|
127
125
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
restorePurchases: () => Promise<boolean>;
|
|
126
|
+
const purchaseHandler = {
|
|
127
|
+
makePurchase: config.purchaseConfig.makePurchase,
|
|
128
|
+
restorePurchases: config.purchaseConfig.restorePurchases,
|
|
132
129
|
};
|
|
133
130
|
|
|
134
|
-
if (config.purchaseConfig.type === 'revenuecat') {
|
|
135
|
-
// Instantiate RevenueCat handler
|
|
136
|
-
const rcHandler = new RevenueCatHeliumHandler(config.purchaseConfig.apiKey);
|
|
137
|
-
purchaseHandler = {
|
|
138
|
-
makePurchase: rcHandler.makePurchase.bind(rcHandler),
|
|
139
|
-
restorePurchases: rcHandler.restorePurchases.bind(rcHandler),
|
|
140
|
-
};
|
|
141
|
-
} else if (config.purchaseConfig.type === 'custom') {
|
|
142
|
-
// Use custom callbacks
|
|
143
|
-
purchaseHandler = {
|
|
144
|
-
makePurchase: config.purchaseConfig.makePurchase,
|
|
145
|
-
restorePurchases: config.purchaseConfig.restorePurchases,
|
|
146
|
-
};
|
|
147
|
-
} else {
|
|
148
|
-
// Handle potential future types or throw error
|
|
149
|
-
throw new Error('Invalid purchaseConfig type provided.');
|
|
150
|
-
}
|
|
151
|
-
|
|
152
131
|
// Update download status to inProgress
|
|
153
132
|
updateDownloadStatus('inProgress');
|
|
154
133
|
|
|
@@ -207,12 +186,6 @@ export const initialize = async (config: HeliumConfig) => {
|
|
|
207
186
|
}
|
|
208
187
|
);
|
|
209
188
|
|
|
210
|
-
const usingRevenueCat = await Purchases.isConfigured();
|
|
211
|
-
let revenueCatAppUserId = null;
|
|
212
|
-
if (usingRevenueCat) {
|
|
213
|
-
revenueCatAppUserId = await Purchases.getAppUserID();
|
|
214
|
-
}
|
|
215
|
-
|
|
216
189
|
HeliumBridge.initialize(
|
|
217
190
|
{
|
|
218
191
|
apiKey: config.apiKey,
|
|
@@ -221,7 +194,7 @@ export const initialize = async (config: HeliumConfig) => {
|
|
|
221
194
|
customUserId: config.customUserId || null,
|
|
222
195
|
customAPIEndpoint: config.customAPIEndpoint || null,
|
|
223
196
|
customUserTraits: config.customUserTraits == null ? {} : config.customUserTraits,
|
|
224
|
-
revenueCatAppUserId: revenueCatAppUserId,
|
|
197
|
+
revenueCatAppUserId: config.revenueCatAppUserId,
|
|
225
198
|
},
|
|
226
199
|
{}
|
|
227
200
|
);
|
|
@@ -268,6 +241,27 @@ export const hideAllUpsells = () => {
|
|
|
268
241
|
HeliumBridge.hideAllUpsells();
|
|
269
242
|
};
|
|
270
243
|
|
|
244
|
+
export const getPaywallInfo = async (
|
|
245
|
+
trigger: string
|
|
246
|
+
): Promise<PaywallInfo | undefined> => {
|
|
247
|
+
return new Promise((resolve) => {
|
|
248
|
+
HeliumBridge.getPaywallInfo(
|
|
249
|
+
trigger,
|
|
250
|
+
(error: string | null, templateName: string, shouldShow: boolean) => {
|
|
251
|
+
if (error) {
|
|
252
|
+
console.log(`[Helium] ${error}`);
|
|
253
|
+
resolve(undefined);
|
|
254
|
+
return;
|
|
255
|
+
}
|
|
256
|
+
resolve({
|
|
257
|
+
paywallTemplateName: templateName,
|
|
258
|
+
shouldShow: shouldShow,
|
|
259
|
+
});
|
|
260
|
+
}
|
|
261
|
+
);
|
|
262
|
+
});
|
|
263
|
+
};
|
|
264
|
+
|
|
271
265
|
// Update the UpsellView component to handle the style prop
|
|
272
266
|
export const UpsellView: React.FC<HeliumUpsellViewProps & {
|
|
273
267
|
fallbackViewProps?: Record<string, any>;
|
|
@@ -312,4 +306,4 @@ export const UpsellView: React.FC<HeliumUpsellViewProps & {
|
|
|
312
306
|
export const HELIUM_CTA_NAMES = {
|
|
313
307
|
SCHEDULE_CALL: 'schedule_call',
|
|
314
308
|
SUBSCRIBE_BUTTON: 'subscribe_button',
|
|
315
|
-
}
|
|
309
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { createRevenueCatPurchaseConfig } from './handlers/revenuecat';
|
package/src/types.ts
CHANGED
|
@@ -8,32 +8,21 @@ export type HeliumDownloadStatus = 'success' | 'failed' | 'inProgress' | 'notSta
|
|
|
8
8
|
// --- Purchase Configuration Types ---
|
|
9
9
|
|
|
10
10
|
/** Interface for providing custom purchase handling logic. */
|
|
11
|
-
|
|
11
|
+
|
|
12
|
+
export interface HeliumPurchaseConfig {
|
|
12
13
|
makePurchase: (productId: string) => Promise<HeliumPurchaseResult>;
|
|
13
14
|
restorePurchases: () => Promise<boolean>;
|
|
14
|
-
/** Discriminant property to identify custom callbacks */
|
|
15
|
-
type: 'custom';
|
|
16
|
-
}
|
|
17
15
|
|
|
18
|
-
/** Configuration for using the built-in RevenueCat handler. */
|
|
19
|
-
export interface RevenueCatPurchaseConfig {
|
|
20
16
|
/** Optional RevenueCat API Key. If not provided, RevenueCat must be configured elsewhere. */
|
|
21
17
|
apiKey?: string;
|
|
22
|
-
/** Discriminant property to identify RevenueCat config */
|
|
23
|
-
type: 'revenuecat';
|
|
24
18
|
}
|
|
25
19
|
|
|
26
|
-
// Union type for the purchase configuration
|
|
27
|
-
export type HeliumPurchaseConfig = CustomPurchaseConfig | RevenueCatPurchaseConfig;
|
|
28
|
-
// Add other config types here in the future, e.g. | StripePurchaseConfig
|
|
29
|
-
|
|
30
20
|
// Helper function for creating Custom Purchase Config
|
|
31
21
|
export function createCustomPurchaseConfig(callbacks: {
|
|
32
22
|
makePurchase: (productId: string) => Promise<HeliumPurchaseResult>;
|
|
33
23
|
restorePurchases: () => Promise<boolean>;
|
|
34
|
-
}):
|
|
24
|
+
}): HeliumPurchaseConfig {
|
|
35
25
|
return {
|
|
36
|
-
type: 'custom',
|
|
37
26
|
makePurchase: callbacks.makePurchase,
|
|
38
27
|
restorePurchases: callbacks.restorePurchases,
|
|
39
28
|
};
|
|
@@ -54,6 +43,7 @@ export interface HeliumConfig {
|
|
|
54
43
|
customUserId?: string;
|
|
55
44
|
customAPIEndpoint?: string;
|
|
56
45
|
customUserTraits?: Record<string, any>;
|
|
46
|
+
revenueCatAppUserId?: string;
|
|
57
47
|
}
|
|
58
48
|
|
|
59
49
|
// --- Other Existing Types ---
|
|
@@ -61,4 +51,9 @@ export interface HeliumConfig {
|
|
|
61
51
|
export interface HeliumUpsellViewProps {
|
|
62
52
|
trigger: string;
|
|
63
53
|
style?: any;
|
|
64
|
-
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export interface PaywallInfo {
|
|
57
|
+
paywallTemplateName: string;
|
|
58
|
+
shouldShow: boolean;
|
|
59
|
+
}
|