react-native-iap 14.7.17 → 14.7.19
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/ios/HybridRnIap.swift +9 -0
- package/lib/module/hooks/useIAP.js +99 -72
- package/lib/module/hooks/useIAP.js.map +1 -1
- package/lib/module/index.js +5 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/utils/error.js +3 -0
- package/lib/module/utils/error.js.map +1 -1
- package/lib/module/utils/errorMapping.js +13 -1
- package/lib/module/utils/errorMapping.js.map +1 -1
- package/lib/typescript/src/hooks/useIAP.d.ts +9 -3
- package/lib/typescript/src/hooks/useIAP.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/utils/error.d.ts +1 -0
- package/lib/typescript/src/utils/error.d.ts.map +1 -1
- package/lib/typescript/src/utils/errorMapping.d.ts +7 -0
- package/lib/typescript/src/utils/errorMapping.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/hooks/useIAP.ts +129 -82
- package/src/index.ts +5 -2
- package/src/utils/error.ts +6 -0
- package/src/utils/errorMapping.ts +14 -0
package/ios/HybridRnIap.swift
CHANGED
|
@@ -22,6 +22,7 @@ class HybridRnIap: HybridRnIapSpec {
|
|
|
22
22
|
private var deliveredPurchaseEventKeys: Set<String> = []
|
|
23
23
|
private var deliveredPurchaseEventOrder: [String] = []
|
|
24
24
|
private let purchaseEventDedupLimit = 128
|
|
25
|
+
private static let duplicatePurchaseCode = "duplicate-purchase"
|
|
25
26
|
private var purchasePayloadById: [String: [String: Any]] = [:]
|
|
26
27
|
// Thread safety lock for listener arrays and error dedup state
|
|
27
28
|
private let listenerLock = NSLock()
|
|
@@ -1042,6 +1043,14 @@ class HybridRnIap: HybridRnIapSpec {
|
|
|
1042
1043
|
|
|
1043
1044
|
if isDuplicate {
|
|
1044
1045
|
RnIapLog.warn("Duplicate purchase update skipped for \(purchase.productId)")
|
|
1046
|
+
let error = NitroPurchaseResult(
|
|
1047
|
+
responseCode: -1,
|
|
1048
|
+
debugMessage: nil,
|
|
1049
|
+
code: HybridRnIap.duplicatePurchaseCode,
|
|
1050
|
+
message: "Duplicate purchase update skipped for \(purchase.productId). Use restorePurchases or getAvailablePurchases to recover.",
|
|
1051
|
+
purchaseToken: nil
|
|
1052
|
+
)
|
|
1053
|
+
sendPurchaseError(error, productId: purchase.productId)
|
|
1045
1054
|
return
|
|
1046
1055
|
}
|
|
1047
1056
|
|
|
@@ -6,7 +6,7 @@ import { Platform } from 'react-native';
|
|
|
6
6
|
import { RnIapConsole } from "../utils/debug.js";
|
|
7
7
|
|
|
8
8
|
// Internal modules
|
|
9
|
-
import { initConnection, purchaseErrorListener, purchaseUpdatedListener, promotedProductListenerIOS, getAvailablePurchases, finishTransaction as finishTransactionInternal, requestPurchase as requestPurchaseInternal, fetchProducts, validateReceipt as validateReceiptInternal, verifyPurchase as verifyPurchaseTopLevel, verifyPurchaseWithProvider as verifyPurchaseWithProviderTopLevel, getActiveSubscriptions, hasActiveSubscriptions,
|
|
9
|
+
import { initConnection, purchaseErrorListener, purchaseUpdatedListener, promotedProductListenerIOS, getAvailablePurchases, finishTransaction as finishTransactionInternal, requestPurchase as requestPurchaseInternal, fetchProducts, validateReceipt as validateReceiptInternal, verifyPurchase as verifyPurchaseTopLevel, verifyPurchaseWithProvider as verifyPurchaseWithProviderTopLevel, getActiveSubscriptions, hasActiveSubscriptions, syncIOS, getPromotedProductIOS, requestPurchaseOnPromotedProductIOS, checkAlternativeBillingAvailabilityAndroid, showAlternativeBillingDialogAndroid, createAlternativeBillingTokenAndroid, userChoiceBillingListenerAndroid, isStandardIOS } from "../index.js";
|
|
10
10
|
|
|
11
11
|
// Types
|
|
12
12
|
import { ErrorCode } from "../types.js";
|
|
@@ -99,11 +99,12 @@ export function useIAP(options) {
|
|
|
99
99
|
invokeOnError(error);
|
|
100
100
|
}
|
|
101
101
|
}, [mergeWithDuplicateCheck, invokeOnError]);
|
|
102
|
-
const getAvailablePurchasesInternal = useCallback(async
|
|
102
|
+
const getAvailablePurchasesInternal = useCallback(async options => {
|
|
103
103
|
try {
|
|
104
104
|
const result = await getAvailablePurchases({
|
|
105
|
-
alsoPublishToEventListenerIOS: false,
|
|
106
|
-
onlyIncludeActiveItemsIOS: true
|
|
105
|
+
alsoPublishToEventListenerIOS: options?.alsoPublishToEventListenerIOS ?? false,
|
|
106
|
+
onlyIncludeActiveItemsIOS: options?.onlyIncludeActiveItemsIOS ?? true,
|
|
107
|
+
includeSuspendedAndroid: options?.includeSuspendedAndroid ?? false
|
|
107
108
|
});
|
|
108
109
|
setAvailablePurchases(result);
|
|
109
110
|
} catch (error) {
|
|
@@ -142,9 +143,17 @@ export function useIAP(options) {
|
|
|
142
143
|
const requestPurchase = useCallback(async requestObj => {
|
|
143
144
|
await requestPurchaseInternal(requestObj);
|
|
144
145
|
}, []);
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
146
|
+
const restorePurchases = useCallback(async options => {
|
|
147
|
+
try {
|
|
148
|
+
if (Platform.OS === 'ios') {
|
|
149
|
+
await syncIOS();
|
|
150
|
+
}
|
|
151
|
+
await getAvailablePurchasesInternal(options);
|
|
152
|
+
} catch (error) {
|
|
153
|
+
RnIapConsole.warn('Failed to restore purchases:', error);
|
|
154
|
+
invokeOnError(error);
|
|
155
|
+
}
|
|
156
|
+
}, [getAvailablePurchasesInternal, invokeOnError]);
|
|
148
157
|
const validateReceipt = useCallback(async options => validateReceiptInternal(options), []);
|
|
149
158
|
const verifyPurchase = useCallback(async options => {
|
|
150
159
|
return verifyPurchaseTopLevel(options);
|
|
@@ -152,9 +161,9 @@ export function useIAP(options) {
|
|
|
152
161
|
const verifyPurchaseWithProvider = useCallback(async options => {
|
|
153
162
|
return verifyPurchaseWithProviderTopLevel(options);
|
|
154
163
|
}, []);
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
164
|
+
|
|
165
|
+
// Shared helper: build Android billing config from options
|
|
166
|
+
const buildAndroidConfig = useCallback(() => {
|
|
158
167
|
let config;
|
|
159
168
|
if (Platform.OS === 'android') {
|
|
160
169
|
if (optionsRef.current?.enableBillingProgramAndroid) {
|
|
@@ -162,32 +171,18 @@ export function useIAP(options) {
|
|
|
162
171
|
enableBillingProgramAndroid: optionsRef.current.enableBillingProgramAndroid
|
|
163
172
|
};
|
|
164
173
|
} else if (optionsRef.current?.alternativeBillingModeAndroid) {
|
|
165
|
-
// Deprecated: use alternativeBillingModeAndroid for backwards compatibility
|
|
166
174
|
config = {
|
|
167
175
|
alternativeBillingModeAndroid: optionsRef.current.alternativeBillingModeAndroid
|
|
168
176
|
};
|
|
169
177
|
}
|
|
170
178
|
}
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
// This fixes tvOS where Nitro may initialize later than iOS
|
|
174
|
-
const result = await initConnection(config);
|
|
175
|
-
|
|
176
|
-
// Check if component unmounted during async initConnection
|
|
177
|
-
// to prevent listener leaks
|
|
178
|
-
if (!isMountedRef.current) {
|
|
179
|
-
return;
|
|
180
|
-
}
|
|
181
|
-
setConnected(result);
|
|
182
|
-
if (!result) {
|
|
183
|
-
RnIapConsole.warn('[useIAP] initConnection returned false');
|
|
184
|
-
return;
|
|
185
|
-
}
|
|
179
|
+
return config;
|
|
180
|
+
}, []);
|
|
186
181
|
|
|
187
|
-
|
|
188
|
-
|
|
182
|
+
// Shared helper: register event listeners if not already active
|
|
183
|
+
const registerListeners = useCallback(() => {
|
|
184
|
+
if (!subscriptionsRef.current.purchaseUpdate) {
|
|
189
185
|
subscriptionsRef.current.purchaseUpdate = purchaseUpdatedListener(async purchase => {
|
|
190
|
-
// Always refresh subscription state after a purchase event
|
|
191
186
|
try {
|
|
192
187
|
await getActiveSubscriptionsInternal();
|
|
193
188
|
await getAvailablePurchasesInternal();
|
|
@@ -198,9 +193,9 @@ export function useIAP(options) {
|
|
|
198
193
|
optionsRef.current.onPurchaseSuccess(purchase);
|
|
199
194
|
}
|
|
200
195
|
});
|
|
196
|
+
}
|
|
197
|
+
if (!subscriptionsRef.current.purchaseError) {
|
|
201
198
|
subscriptionsRef.current.purchaseError = purchaseErrorListener(error => {
|
|
202
|
-
// error is already normalized by purchaseErrorListener in src/index.ts
|
|
203
|
-
// Ignore init error until connected
|
|
204
199
|
if (error.code === ErrorCode.InitConnection && !connectedRef.current) {
|
|
205
200
|
return;
|
|
206
201
|
}
|
|
@@ -208,53 +203,92 @@ export function useIAP(options) {
|
|
|
208
203
|
optionsRef.current.onPurchaseError(error);
|
|
209
204
|
}
|
|
210
205
|
});
|
|
206
|
+
}
|
|
207
|
+
if (isStandardIOS() && !subscriptionsRef.current.promotedProductIOS) {
|
|
208
|
+
subscriptionsRef.current.promotedProductIOS = promotedProductListenerIOS(product => {
|
|
209
|
+
setPromotedProductIOS(product);
|
|
210
|
+
if (optionsRef.current?.onPromotedProductIOS) {
|
|
211
|
+
optionsRef.current.onPromotedProductIOS(product);
|
|
212
|
+
}
|
|
213
|
+
});
|
|
214
|
+
}
|
|
215
|
+
if (Platform.OS === 'android' && optionsRef.current?.onUserChoiceBillingAndroid && !subscriptionsRef.current.userChoiceBillingAndroid) {
|
|
216
|
+
subscriptionsRef.current.userChoiceBillingAndroid = userChoiceBillingListenerAndroid(details => {
|
|
217
|
+
if (optionsRef.current?.onUserChoiceBillingAndroid) {
|
|
218
|
+
optionsRef.current.onUserChoiceBillingAndroid(details);
|
|
219
|
+
}
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
}, [getActiveSubscriptionsInternal, getAvailablePurchasesInternal]);
|
|
211
223
|
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
224
|
+
// Shared helper: clean up all listeners
|
|
225
|
+
const cleanupListeners = useCallback(() => {
|
|
226
|
+
subscriptionsRef.current.purchaseUpdate?.remove();
|
|
227
|
+
subscriptionsRef.current.purchaseError?.remove();
|
|
228
|
+
subscriptionsRef.current.promotedProductIOS?.remove();
|
|
229
|
+
subscriptionsRef.current.userChoiceBillingAndroid?.remove();
|
|
230
|
+
subscriptionsRef.current.purchaseUpdate = undefined;
|
|
231
|
+
subscriptionsRef.current.purchaseError = undefined;
|
|
232
|
+
subscriptionsRef.current.promotedProductIOS = undefined;
|
|
233
|
+
subscriptionsRef.current.userChoiceBillingAndroid = undefined;
|
|
234
|
+
}, []);
|
|
235
|
+
const initIapWithSubscriptions = useCallback(async () => {
|
|
236
|
+
const config = buildAndroidConfig();
|
|
237
|
+
try {
|
|
238
|
+
const result = await initConnection(config);
|
|
239
|
+
if (!isMountedRef.current) {
|
|
240
|
+
return;
|
|
220
241
|
}
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
if (optionsRef.current?.onUserChoiceBillingAndroid) {
|
|
226
|
-
optionsRef.current.onUserChoiceBillingAndroid(details);
|
|
227
|
-
}
|
|
228
|
-
});
|
|
242
|
+
if (!result) {
|
|
243
|
+
setConnected(false);
|
|
244
|
+
RnIapConsole.warn('[useIAP] initConnection returned false');
|
|
245
|
+
return;
|
|
229
246
|
}
|
|
247
|
+
registerListeners();
|
|
248
|
+
setConnected(true);
|
|
230
249
|
} catch (error) {
|
|
231
250
|
RnIapConsole.error('initConnection failed:', error);
|
|
251
|
+
cleanupListeners();
|
|
252
|
+
if (isMountedRef.current) {
|
|
253
|
+
setConnected(false);
|
|
254
|
+
}
|
|
232
255
|
invokeOnError(error);
|
|
233
|
-
// Clean up listeners on error (if any were registered)
|
|
234
|
-
subscriptionsRef.current.purchaseUpdate?.remove();
|
|
235
|
-
subscriptionsRef.current.purchaseError?.remove();
|
|
236
|
-
subscriptionsRef.current.promotedProductIOS?.remove();
|
|
237
|
-
subscriptionsRef.current.userChoiceBillingAndroid?.remove();
|
|
238
|
-
subscriptionsRef.current.purchaseUpdate = undefined;
|
|
239
|
-
subscriptionsRef.current.purchaseError = undefined;
|
|
240
|
-
subscriptionsRef.current.promotedProductIOS = undefined;
|
|
241
|
-
subscriptionsRef.current.userChoiceBillingAndroid = undefined;
|
|
242
256
|
}
|
|
243
|
-
}, [
|
|
257
|
+
}, [buildAndroidConfig, registerListeners, cleanupListeners, invokeOnError]);
|
|
258
|
+
const reconnect = useCallback(async () => {
|
|
259
|
+
const config = buildAndroidConfig();
|
|
260
|
+
try {
|
|
261
|
+
const result = await initConnection(config);
|
|
262
|
+
if (!isMountedRef.current) {
|
|
263
|
+
return false;
|
|
264
|
+
}
|
|
265
|
+
if (result) {
|
|
266
|
+
registerListeners();
|
|
267
|
+
setConnected(true);
|
|
268
|
+
return true;
|
|
269
|
+
}
|
|
270
|
+
setConnected(false);
|
|
271
|
+
return false;
|
|
272
|
+
} catch (error) {
|
|
273
|
+
RnIapConsole.error('[useIAP] reconnect failed:', error);
|
|
274
|
+
cleanupListeners();
|
|
275
|
+
if (isMountedRef.current) {
|
|
276
|
+
setConnected(false);
|
|
277
|
+
}
|
|
278
|
+
invokeOnError(error);
|
|
279
|
+
return false;
|
|
280
|
+
}
|
|
281
|
+
}, [buildAndroidConfig, registerListeners, cleanupListeners, invokeOnError]);
|
|
244
282
|
useEffect(() => {
|
|
245
283
|
isMountedRef.current = true;
|
|
246
284
|
initIapWithSubscriptions();
|
|
247
|
-
const currentSubscriptions = subscriptionsRef.current;
|
|
248
285
|
return () => {
|
|
249
286
|
isMountedRef.current = false;
|
|
250
|
-
|
|
251
|
-
currentSubscriptions.purchaseError?.remove();
|
|
252
|
-
currentSubscriptions.promotedProductIOS?.remove();
|
|
253
|
-
currentSubscriptions.userChoiceBillingAndroid?.remove();
|
|
287
|
+
cleanupListeners();
|
|
254
288
|
// Keep connection alive across screens to avoid race conditions
|
|
255
289
|
setConnected(false);
|
|
256
290
|
};
|
|
257
|
-
}, [initIapWithSubscriptions]);
|
|
291
|
+
}, [initIapWithSubscriptions, cleanupListeners]);
|
|
258
292
|
return {
|
|
259
293
|
connected,
|
|
260
294
|
products,
|
|
@@ -269,19 +303,12 @@ export function useIAP(options) {
|
|
|
269
303
|
validateReceipt,
|
|
270
304
|
verifyPurchase,
|
|
271
305
|
verifyPurchaseWithProvider,
|
|
272
|
-
restorePurchases
|
|
273
|
-
try {
|
|
274
|
-
await restorePurchasesTopLevel();
|
|
275
|
-
await getAvailablePurchasesInternal();
|
|
276
|
-
} catch (error) {
|
|
277
|
-
RnIapConsole.warn('Failed to restore purchases:', error);
|
|
278
|
-
invokeOnError(error);
|
|
279
|
-
}
|
|
280
|
-
},
|
|
306
|
+
restorePurchases,
|
|
281
307
|
getPromotedProductIOS,
|
|
282
308
|
requestPurchaseOnPromotedProductIOS,
|
|
283
309
|
getActiveSubscriptions: getActiveSubscriptionsInternal,
|
|
284
310
|
hasActiveSubscriptions: hasActiveSubscriptionsInternal,
|
|
311
|
+
reconnect,
|
|
285
312
|
// Alternative billing (Android only)
|
|
286
313
|
...(Platform.OS === 'android' ? {
|
|
287
314
|
checkAlternativeBillingAvailabilityAndroid,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useEffect","useState","useRef","Platform","RnIapConsole","initConnection","purchaseErrorListener","purchaseUpdatedListener","promotedProductListenerIOS","getAvailablePurchases","finishTransaction","finishTransactionInternal","requestPurchase","requestPurchaseInternal","fetchProducts","validateReceipt","validateReceiptInternal","verifyPurchase","verifyPurchaseTopLevel","verifyPurchaseWithProvider","verifyPurchaseWithProviderTopLevel","getActiveSubscriptions","hasActiveSubscriptions","restorePurchases","restorePurchasesTopLevel","getPromotedProductIOS","requestPurchaseOnPromotedProductIOS","checkAlternativeBillingAvailabilityAndroid","showAlternativeBillingDialogAndroid","createAlternativeBillingTokenAndroid","userChoiceBillingListenerAndroid","isStandardIOS","ErrorCode","useIAP","options","connected","setConnected","products","setProducts","subscriptions","setSubscriptions","availablePurchases","setAvailablePurchases","promotedProductIOS","setPromotedProductIOS","activeSubscriptions","setActiveSubscriptions","optionsRef","connectedRef","mergeWithDuplicateCheck","existingItems","newItems","getKey","merged","forEach","newItem","isDuplicate","some","existingItem","push","current","subscriptionsRef","isMountedRef","subscriptionsRefState","invokeOnError","error","onError","Error","String","fetchProductsInternal","params","warn","requestType","type","debug","skus","result","items","prevSubscriptions","subscription","id","newProducts","filter","item","newSubscriptions","prevProducts","product","getAvailablePurchasesInternal","_skus","alsoPublishToEventListenerIOS","onlyIncludeActiveItemsIOS","getActiveSubscriptionsInternal","subscriptionIds","hasActiveSubscriptionsInternal","args","requestObj","initIapWithSubscriptions","config","OS","enableBillingProgramAndroid","alternativeBillingModeAndroid","purchaseUpdate","purchase","e","onPurchaseSuccess","purchaseError","code","InitConnection","onPurchaseError","onPromotedProductIOS","onUserChoiceBillingAndroid","userChoiceBillingAndroid","details","remove","undefined","currentSubscriptions"],"sourceRoot":"../../../src","sources":["hooks/useIAP.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useCallback","useEffect","useState","useRef","Platform","RnIapConsole","initConnection","purchaseErrorListener","purchaseUpdatedListener","promotedProductListenerIOS","getAvailablePurchases","finishTransaction","finishTransactionInternal","requestPurchase","requestPurchaseInternal","fetchProducts","validateReceipt","validateReceiptInternal","verifyPurchase","verifyPurchaseTopLevel","verifyPurchaseWithProvider","verifyPurchaseWithProviderTopLevel","getActiveSubscriptions","hasActiveSubscriptions","syncIOS","getPromotedProductIOS","requestPurchaseOnPromotedProductIOS","checkAlternativeBillingAvailabilityAndroid","showAlternativeBillingDialogAndroid","createAlternativeBillingTokenAndroid","userChoiceBillingListenerAndroid","isStandardIOS","ErrorCode","useIAP","options","connected","setConnected","products","setProducts","subscriptions","setSubscriptions","availablePurchases","setAvailablePurchases","promotedProductIOS","setPromotedProductIOS","activeSubscriptions","setActiveSubscriptions","optionsRef","connectedRef","mergeWithDuplicateCheck","existingItems","newItems","getKey","merged","forEach","newItem","isDuplicate","some","existingItem","push","current","subscriptionsRef","isMountedRef","subscriptionsRefState","invokeOnError","error","onError","Error","String","fetchProductsInternal","params","warn","requestType","type","debug","skus","result","items","prevSubscriptions","subscription","id","newProducts","filter","item","newSubscriptions","prevProducts","product","getAvailablePurchasesInternal","alsoPublishToEventListenerIOS","onlyIncludeActiveItemsIOS","includeSuspendedAndroid","getActiveSubscriptionsInternal","subscriptionIds","hasActiveSubscriptionsInternal","args","requestObj","restorePurchases","OS","buildAndroidConfig","config","enableBillingProgramAndroid","alternativeBillingModeAndroid","registerListeners","purchaseUpdate","purchase","e","onPurchaseSuccess","purchaseError","code","InitConnection","onPurchaseError","onPromotedProductIOS","onUserChoiceBillingAndroid","userChoiceBillingAndroid","details","cleanupListeners","remove","undefined","initIapWithSubscriptions","reconnect"],"sourceRoot":"../../../src","sources":["hooks/useIAP.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -518,14 +518,17 @@ export const getAvailablePurchases = async options => {
|
|
|
518
518
|
return validPurchases.map(convertNitroPurchaseToPurchase);
|
|
519
519
|
} else if (Platform.OS === 'android') {
|
|
520
520
|
// For Android, we need to call twice for inapp and subs
|
|
521
|
+
const includeSuspended = Boolean(options?.includeSuspendedAndroid ?? false);
|
|
521
522
|
const inappNitroPurchases = await IAP.instance.getAvailablePurchases({
|
|
522
523
|
android: {
|
|
523
|
-
type: 'inapp'
|
|
524
|
+
type: 'inapp',
|
|
525
|
+
includeSuspended
|
|
524
526
|
}
|
|
525
527
|
});
|
|
526
528
|
const subsNitroPurchases = await IAP.instance.getAvailablePurchases({
|
|
527
529
|
android: {
|
|
528
|
-
type: 'subs'
|
|
530
|
+
type: 'subs',
|
|
531
|
+
includeSuspended
|
|
529
532
|
}
|
|
530
533
|
});
|
|
531
534
|
|