react-native-iap 15.2.4 → 15.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/README.md +29 -49
  2. package/android/build.gradle +92 -22
  3. package/android/gradle.properties +5 -1
  4. package/android/src/main/java/com/margelo/nitro/iap/HybridRnIap.kt +1 -1
  5. package/android/src/main/java/com/margelo/nitro/iap/RnIapLog.kt +3 -1
  6. package/ios/HybridRnIap.swift +12 -6
  7. package/lib/module/index.js +73 -158
  8. package/lib/module/index.js.map +1 -1
  9. package/lib/typescript/src/hooks/useIAP.d.ts +15 -15
  10. package/lib/typescript/src/index.d.ts +59 -88
  11. package/lib/typescript/src/index.d.ts.map +1 -1
  12. package/lib/typescript/src/specs/RnIap.nitro.d.ts +2 -15
  13. package/lib/typescript/src/specs/RnIap.nitro.d.ts.map +1 -1
  14. package/lib/typescript/src/types.d.ts +47 -47
  15. package/nitro.json +0 -1
  16. package/nitrogen/generated/android/c++/JHybridRnIapSpec.cpp +7 -7
  17. package/nitrogen/generated/android/c++/JHybridRnIapSpec.hpp +1 -1
  18. package/nitrogen/generated/android/c++/{JNitroPurchaseUpdatedListenerOptions.hpp → JPurchaseUpdatedListenerOptions.hpp} +10 -10
  19. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/HybridRnIapSpec.kt +2 -2
  20. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/{NitroPurchaseUpdatedListenerOptions.kt → PurchaseUpdatedListenerOptions.kt} +5 -5
  21. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.hpp +10 -10
  22. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Umbrella.hpp +3 -3
  23. package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.hpp +4 -4
  24. package/nitrogen/generated/ios/swift/HybridRnIapSpec.swift +1 -1
  25. package/nitrogen/generated/ios/swift/HybridRnIapSpec_cxx.swift +1 -1
  26. package/nitrogen/generated/ios/swift/{NitroPurchaseUpdatedListenerOptions.swift → PurchaseUpdatedListenerOptions.swift} +5 -5
  27. package/nitrogen/generated/shared/c++/HybridRnIapSpec.hpp +4 -4
  28. package/nitrogen/generated/shared/c++/{NitroPurchaseUpdatedListenerOptions.hpp → PurchaseUpdatedListenerOptions.hpp} +11 -11
  29. package/openiap-versions.json +2 -2
  30. package/package.json +4 -6
  31. package/src/hooks/useIAP.ts +15 -15
  32. package/src/index.ts +93 -204
  33. package/src/specs/RnIap.nitro.ts +2 -15
  34. package/src/types.ts +47 -47
@@ -537,12 +537,12 @@ export interface LimitedQuantityInfoAndroid {
537
537
  export interface Mutation {
538
538
  /**
539
539
  * Acknowledge a non-consumable purchase. Required within 3 days or Google auto-refunds.
540
- * See: https://www.openiap.dev/docs/apis/android/acknowledge-purchase-android
540
+ * See: https://openiap.dev/docs/apis/android/acknowledge-purchase-android
541
541
  */
542
542
  acknowledgePurchaseAndroid: Promise<boolean>;
543
543
  /**
544
544
  * Present the refund request sheet (iOS 15+). See also Features → Refund.
545
- * See: https://www.openiap.dev/docs/apis/ios/begin-refund-request-ios
545
+ * See: https://openiap.dev/docs/apis/ios/begin-refund-request-ios
546
546
  */
547
547
  beginRefundRequestIOS?: Promise<(string | null)>;
548
548
  /**
@@ -550,17 +550,17 @@ export interface Mutation {
550
550
  *
551
551
  * Returns true if available, false otherwise.
552
552
  * Throws OpenIapError.NotPrepared if billing client not ready.
553
- * See: https://www.openiap.dev/docs/apis/android/check-alternative-billing-availability-android
553
+ * See: https://openiap.dev/docs/apis/android/check-alternative-billing-availability-android
554
554
  */
555
555
  checkAlternativeBillingAvailabilityAndroid: Promise<boolean>;
556
556
  /**
557
557
  * Clear pending transactions in the queue (sandbox helper).
558
- * See: https://www.openiap.dev/docs/apis/ios/clear-transaction-ios
558
+ * See: https://openiap.dev/docs/apis/ios/clear-transaction-ios
559
559
  */
560
560
  clearTransactionIOS: Promise<boolean>;
561
561
  /**
562
562
  * Consume a consumable purchase so it can be re-bought.
563
- * See: https://www.openiap.dev/docs/apis/android/consume-purchase-android
563
+ * See: https://openiap.dev/docs/apis/android/consume-purchase-android
564
564
  */
565
565
  consumePurchaseAndroid: Promise<boolean>;
566
566
  /**
@@ -570,7 +570,7 @@ export interface Mutation {
570
570
  *
571
571
  * Returns token string, or null if creation failed.
572
572
  * Throws OpenIapError.NotPrepared if billing client not ready.
573
- * See: https://www.openiap.dev/docs/apis/android/create-alternative-billing-token-android
573
+ * See: https://openiap.dev/docs/apis/android/create-alternative-billing-token-android
574
574
  */
575
575
  createAlternativeBillingTokenAndroid?: Promise<(string | null)>;
576
576
  /**
@@ -579,27 +579,27 @@ export interface Mutation {
579
579
  *
580
580
  * Returns external transaction token needed for reporting external transactions.
581
581
  * Throws OpenIapError.NotPrepared if billing client not ready.
582
- * See: https://www.openiap.dev/docs/apis/android/create-billing-program-reporting-details-android
582
+ * See: https://openiap.dev/docs/apis/android/create-billing-program-reporting-details-android
583
583
  */
584
584
  createBillingProgramReportingDetailsAndroid: Promise<BillingProgramReportingDetailsAndroid>;
585
585
  /**
586
586
  * Open the platform's subscription management UI.
587
- * See: https://www.openiap.dev/docs/apis/deep-link-to-subscriptions
587
+ * See: https://openiap.dev/docs/apis/deep-link-to-subscriptions
588
588
  */
589
589
  deepLinkToSubscriptions: Promise<void>;
590
590
  /**
591
591
  * Close the store connection and release resources.
592
- * See: https://www.openiap.dev/docs/apis/end-connection
592
+ * See: https://openiap.dev/docs/apis/end-connection
593
593
  */
594
594
  endConnection: Promise<boolean>;
595
595
  /**
596
596
  * Complete a transaction after server-side verification. Required on Android within 3 days.
597
- * See: https://www.openiap.dev/docs/apis/finish-transaction
597
+ * See: https://openiap.dev/docs/apis/finish-transaction
598
598
  */
599
599
  finishTransaction: Promise<void>;
600
600
  /**
601
601
  * Initialize the store connection. Call before any IAP API.
602
- * See: https://www.openiap.dev/docs/apis/init-connection
602
+ * See: https://openiap.dev/docs/apis/init-connection
603
603
  */
604
604
  initConnection: Promise<boolean>;
605
605
  /**
@@ -609,7 +609,7 @@ export interface Mutation {
609
609
  * Available in Google Play Billing Library 8.2.0+.
610
610
  * Returns availability result with isAvailable flag.
611
611
  * Throws OpenIapError.NotPrepared if billing client not ready.
612
- * See: https://www.openiap.dev/docs/apis/android/is-billing-program-available-android
612
+ * See: https://openiap.dev/docs/apis/android/is-billing-program-available-android
613
613
  */
614
614
  isBillingProgramAvailableAndroid: Promise<BillingProgramAvailabilityResultAndroid>;
615
615
  /**
@@ -618,29 +618,29 @@ export interface Mutation {
618
618
  *
619
619
  * Shows Play Store dialog and optionally launches external URL.
620
620
  * Throws OpenIapError.NotPrepared if billing client not ready.
621
- * See: https://www.openiap.dev/docs/apis/android/launch-external-link-android
621
+ * See: https://openiap.dev/docs/apis/android/launch-external-link-android
622
622
  */
623
623
  launchExternalLinkAndroid: Promise<boolean>;
624
624
  /**
625
625
  * Show the App Store offer code redemption sheet.
626
- * See: https://www.openiap.dev/docs/apis/ios/present-code-redemption-sheet-ios
626
+ * See: https://openiap.dev/docs/apis/ios/present-code-redemption-sheet-ios
627
627
  */
628
628
  presentCodeRedemptionSheetIOS: Promise<boolean>;
629
629
  /**
630
630
  * Present an external purchase link, StoreKit External (iOS 16+).
631
- * See: https://www.openiap.dev/docs/apis/ios/present-external-purchase-link-ios
631
+ * See: https://openiap.dev/docs/apis/ios/present-external-purchase-link-ios
632
632
  */
633
633
  presentExternalPurchaseLinkIOS: Promise<ExternalPurchaseLinkResultIOS>;
634
634
  /**
635
635
  * Present the external purchase notice sheet (iOS 17.4+).
636
636
  * Uses ExternalPurchase.presentNoticeSheet() which returns a token when the user continues.
637
637
  * Reference: https://developer.apple.com/documentation/storekit/externalpurchase/presentnoticesheet()
638
- * See: https://www.openiap.dev/docs/apis/ios/present-external-purchase-notice-sheet-ios
638
+ * See: https://openiap.dev/docs/apis/ios/present-external-purchase-notice-sheet-ios
639
639
  */
640
640
  presentExternalPurchaseNoticeSheetIOS: Promise<ExternalPurchaseNoticeResultIOS>;
641
641
  /**
642
642
  * Initiate a purchase or subscription flow; rely on events for final state.
643
- * See: https://www.openiap.dev/docs/apis/request-purchase
643
+ * See: https://openiap.dev/docs/apis/request-purchase
644
644
  */
645
645
  requestPurchase?: Promise<(Purchase | Purchase[] | null)>;
646
646
  /**
@@ -649,13 +649,13 @@ export interface Mutation {
649
649
  * @deprecated Use promotedProductListenerIOS to receive the productId,
650
650
  * then call requestPurchase with that SKU instead. In StoreKit 2,
651
651
  * promoted products can be purchased directly via the standard purchase flow.
652
- * See: https://www.openiap.dev/docs/apis/ios/request-purchase-on-promoted-product-ios
652
+ * See: https://openiap.dev/docs/apis/ios/request-purchase-on-promoted-product-ios
653
653
  * @deprecated Use promotedProductListenerIOS + requestPurchase instead
654
654
  */
655
655
  requestPurchaseOnPromotedProductIOS: Promise<boolean>;
656
656
  /**
657
657
  * Restore non-consumable and active subscription purchases.
658
- * See: https://www.openiap.dev/docs/apis/restore-purchases
658
+ * See: https://openiap.dev/docs/apis/restore-purchases
659
659
  */
660
660
  restorePurchases: Promise<void>;
661
661
  /**
@@ -664,29 +664,29 @@ export interface Mutation {
664
664
  *
665
665
  * Returns true if user accepted, false if user canceled.
666
666
  * Throws OpenIapError.NotPrepared if billing client not ready.
667
- * See: https://www.openiap.dev/docs/apis/android/show-alternative-billing-dialog-android
667
+ * See: https://openiap.dev/docs/apis/android/show-alternative-billing-dialog-android
668
668
  */
669
669
  showAlternativeBillingDialogAndroid: Promise<boolean>;
670
670
  /**
671
671
  * Present the disclosure sheet required before linking out via ExternalPurchaseCustomLink (iOS 18.1+).
672
672
  * Call this after a deliberate customer interaction before linking out to external purchases.
673
673
  * Reference: https://developer.apple.com/documentation/storekit/externalpurchasecustomlink/shownotice(type:)
674
- * See: https://www.openiap.dev/docs/apis/ios/show-external-purchase-custom-link-notice-ios
674
+ * See: https://openiap.dev/docs/apis/ios/show-external-purchase-custom-link-notice-ios
675
675
  */
676
676
  showExternalPurchaseCustomLinkNoticeIOS: Promise<ExternalPurchaseCustomLinkNoticeResultIOS>;
677
677
  /**
678
678
  * Present the manage-subscriptions sheet and return changed purchases (iOS 15+).
679
- * See: https://www.openiap.dev/docs/apis/ios/show-manage-subscriptions-ios
679
+ * See: https://openiap.dev/docs/apis/ios/show-manage-subscriptions-ios
680
680
  */
681
681
  showManageSubscriptionsIOS: Promise<PurchaseIOS[]>;
682
682
  /**
683
683
  * Force sync transactions with the App Store (iOS 15+).
684
- * See: https://www.openiap.dev/docs/apis/ios/sync-ios
684
+ * See: https://openiap.dev/docs/apis/ios/sync-ios
685
685
  */
686
686
  syncIOS: Promise<boolean>;
687
687
  /**
688
688
  * Deprecated. Validate purchase receipts with the configured providers — use verifyPurchase instead.
689
- * See: https://www.openiap.dev/docs/features/validation#verify-purchase
689
+ * See: https://openiap.dev/docs/features/validation#verify-purchase
690
690
  * @deprecated Use verifyPurchase
691
691
  */
692
692
  validateReceipt: Promise<VerifyPurchaseResult>;
@@ -696,14 +696,14 @@ export interface Mutation {
696
696
  * + receipt/JWS metadata, VerifyPurchaseResultAndroid carries Play Store
697
697
  * receipt fields (no isValid), and VerifyPurchaseResultHorizon uses success.
698
698
  * Inspect the concrete variant before reading fields.
699
- * See: https://www.openiap.dev/docs/features/validation#verify-purchase
699
+ * See: https://openiap.dev/docs/features/validation#verify-purchase
700
700
  */
701
701
  verifyPurchase: Promise<VerifyPurchaseResult>;
702
702
  /**
703
703
  * Verify via a managed provider without standing up your own server. The
704
704
  * PurchaseVerificationProvider enum currently exposes only IAPKit; platform
705
705
  * availability may differ by implementation.
706
- * See: https://www.openiap.dev/docs/features/validation#verify-purchase-with-provider
706
+ * See: https://openiap.dev/docs/features/validation#verify-purchase-with-provider
707
707
  */
708
708
  verifyPurchaseWithProvider: Promise<VerifyPurchaseWithProviderResult>;
709
709
  }
@@ -1202,22 +1202,22 @@ export interface Query {
1202
1202
  /**
1203
1203
  * Check eligibility for the external purchase notice sheet (iOS 17.4+).
1204
1204
  * Uses ExternalPurchase.canPresent.
1205
- * See: https://www.openiap.dev/docs/apis/ios/can-present-external-purchase-notice-ios
1205
+ * See: https://openiap.dev/docs/apis/ios/can-present-external-purchase-notice-ios
1206
1206
  */
1207
1207
  canPresentExternalPurchaseNoticeIOS: Promise<boolean>;
1208
1208
  /**
1209
1209
  * Get the user's current entitlement for a product, using StoreKit 2 (iOS 15+).
1210
- * See: https://www.openiap.dev/docs/apis/ios/current-entitlement-ios
1210
+ * See: https://openiap.dev/docs/apis/ios/current-entitlement-ios
1211
1211
  */
1212
1212
  currentEntitlementIOS?: Promise<(PurchaseIOS | null)>;
1213
1213
  /**
1214
1214
  * Fetch products or subscriptions from the store.
1215
- * See: https://www.openiap.dev/docs/apis/fetch-products
1215
+ * See: https://openiap.dev/docs/apis/fetch-products
1216
1216
  */
1217
1217
  fetchProducts: Promise<(ProductOrSubscription[] | Product[] | ProductSubscription[] | null)>;
1218
1218
  /**
1219
1219
  * Get details of all currently active subscriptions (filters by subscriptionIds when provided).
1220
- * See: https://www.openiap.dev/docs/apis/get-active-subscriptions
1220
+ * See: https://openiap.dev/docs/apis/get-active-subscriptions
1221
1221
  */
1222
1222
  getActiveSubscriptions: Promise<ActiveSubscription[]>;
1223
1223
  /**
@@ -1225,92 +1225,92 @@ export interface Query {
1225
1225
  * Requires the SK2ConsumableTransactionHistory Info.plist key in the host app
1226
1226
  * for finished consumables to be included (iOS 18+).
1227
1227
  * Unlike getAvailablePurchases, always returns the iOS-specific PurchaseIOS shape.
1228
- * See: https://www.openiap.dev/docs/apis/ios/get-all-transactions-ios
1228
+ * See: https://openiap.dev/docs/apis/ios/get-all-transactions-ios
1229
1229
  */
1230
1230
  getAllTransactionsIOS: Promise<PurchaseIOS[]>;
1231
1231
  /**
1232
1232
  * Fetch the app transaction (iOS 16+).
1233
- * See: https://www.openiap.dev/docs/apis/ios/get-app-transaction-ios
1233
+ * See: https://openiap.dev/docs/apis/ios/get-app-transaction-ios
1234
1234
  */
1235
1235
  getAppTransactionIOS?: Promise<(AppTransaction | null)>;
1236
1236
  /**
1237
1237
  * List active purchases for the current user.
1238
- * See: https://www.openiap.dev/docs/apis/get-available-purchases
1238
+ * See: https://openiap.dev/docs/apis/get-available-purchases
1239
1239
  */
1240
1240
  getAvailablePurchases: Promise<Purchase[]>;
1241
1241
  /**
1242
1242
  * Fetch a token for Apple's External Purchase Server reporting API (iOS 18.1+).
1243
1243
  * Use this token to report transactions made through ExternalPurchaseCustomLink.
1244
1244
  * Reference: https://developer.apple.com/documentation/storekit/externalpurchasecustomlink/token(for:)
1245
- * See: https://www.openiap.dev/docs/apis/ios/get-external-purchase-custom-link-token-ios
1245
+ * See: https://openiap.dev/docs/apis/ios/get-external-purchase-custom-link-token-ios
1246
1246
  */
1247
1247
  getExternalPurchaseCustomLinkTokenIOS: Promise<ExternalPurchaseCustomLinkTokenResultIOS>;
1248
1248
  /**
1249
1249
  * List unfinished StoreKit transactions in the queue.
1250
- * See: https://www.openiap.dev/docs/apis/ios/get-pending-transactions-ios
1250
+ * See: https://openiap.dev/docs/apis/ios/get-pending-transactions-ios
1251
1251
  */
1252
1252
  getPendingTransactionsIOS: Promise<PurchaseIOS[]>;
1253
1253
  /**
1254
1254
  * Read the App Store-promoted product, if any (iOS 11+).
1255
- * See: https://www.openiap.dev/docs/apis/ios/get-promoted-product-ios
1255
+ * See: https://openiap.dev/docs/apis/ios/get-promoted-product-ios
1256
1256
  */
1257
1257
  getPromotedProductIOS?: Promise<(ProductIOS | null)>;
1258
1258
  /**
1259
1259
  * Get base64-encoded receipt data (legacy validation).
1260
- * See: https://www.openiap.dev/docs/apis/ios/get-receipt-data-ios
1260
+ * See: https://openiap.dev/docs/apis/ios/get-receipt-data-ios
1261
1261
  */
1262
1262
  getReceiptDataIOS?: Promise<(string | null)>;
1263
1263
  /**
1264
1264
  * Return the user's storefront country code.
1265
- * See: https://www.openiap.dev/docs/apis/get-storefront
1265
+ * See: https://openiap.dev/docs/apis/get-storefront
1266
1266
  */
1267
1267
  getStorefront: Promise<string>;
1268
1268
  /**
1269
1269
  * Deprecated. Get the current App Store storefront country code — use cross-platform getStorefront instead.
1270
- * See: https://www.openiap.dev/docs/apis/ios/get-storefront-ios
1270
+ * See: https://openiap.dev/docs/apis/ios/get-storefront-ios
1271
1271
  * @deprecated Use getStorefront
1272
1272
  */
1273
1273
  getStorefrontIOS: Promise<string>;
1274
1274
  /**
1275
1275
  * Return the JWS string for a transaction (StoreKit 2).
1276
- * See: https://www.openiap.dev/docs/apis/ios/get-transaction-jws-ios
1276
+ * See: https://openiap.dev/docs/apis/ios/get-transaction-jws-ios
1277
1277
  */
1278
1278
  getTransactionJwsIOS?: Promise<(string | null)>;
1279
1279
  /**
1280
1280
  * Check whether the user has any active subscription.
1281
- * See: https://www.openiap.dev/docs/apis/has-active-subscriptions
1281
+ * See: https://openiap.dev/docs/apis/has-active-subscriptions
1282
1282
  */
1283
1283
  hasActiveSubscriptions: Promise<boolean>;
1284
1284
  /**
1285
1285
  * Check eligibility for the custom-link variant of external purchase (iOS 18.1+).
1286
1286
  * Returns true if the app can use custom external purchase links.
1287
1287
  * Reference: https://developer.apple.com/documentation/storekit/externalpurchasecustomlink/iseligible
1288
- * See: https://www.openiap.dev/docs/apis/ios/is-eligible-for-external-purchase-custom-link-ios
1288
+ * See: https://openiap.dev/docs/apis/ios/is-eligible-for-external-purchase-custom-link-ios
1289
1289
  */
1290
1290
  isEligibleForExternalPurchaseCustomLinkIOS: Promise<boolean>;
1291
1291
  /**
1292
1292
  * Check intro-offer eligibility for a subscription group.
1293
- * See: https://www.openiap.dev/docs/apis/ios/is-eligible-for-intro-offer-ios
1293
+ * See: https://openiap.dev/docs/apis/ios/is-eligible-for-intro-offer-ios
1294
1294
  */
1295
1295
  isEligibleForIntroOfferIOS: Promise<boolean>;
1296
1296
  /**
1297
1297
  * Check whether a transaction's JWS verification passed (StoreKit 2).
1298
- * See: https://www.openiap.dev/docs/apis/ios/is-transaction-verified-ios
1298
+ * See: https://openiap.dev/docs/apis/ios/is-transaction-verified-ios
1299
1299
  */
1300
1300
  isTransactionVerifiedIOS: Promise<boolean>;
1301
1301
  /**
1302
1302
  * Get the latest verified transaction for a product, using StoreKit 2.
1303
- * See: https://www.openiap.dev/docs/apis/ios/latest-transaction-ios
1303
+ * See: https://openiap.dev/docs/apis/ios/latest-transaction-ios
1304
1304
  */
1305
1305
  latestTransactionIOS?: Promise<(PurchaseIOS | null)>;
1306
1306
  /**
1307
1307
  * Get subscription status objects from StoreKit 2 (iOS 15+).
1308
- * See: https://www.openiap.dev/docs/apis/ios/subscription-status-ios
1308
+ * See: https://openiap.dev/docs/apis/ios/subscription-status-ios
1309
1309
  */
1310
1310
  subscriptionStatusIOS: Promise<SubscriptionStatusIOS[]>;
1311
1311
  /**
1312
1312
  * Deprecated. Legacy App Store receipt validation — use verifyPurchase instead.
1313
- * See: https://www.openiap.dev/docs/apis/ios/validate-receipt-ios
1313
+ * See: https://openiap.dev/docs/apis/ios/validate-receipt-ios
1314
1314
  * @deprecated Use verifyPurchase
1315
1315
  */
1316
1316
  validateReceiptIOS: Promise<VerifyPurchaseResultIOS>;
package/nitro.json CHANGED
@@ -15,7 +15,6 @@
15
15
  },
16
16
  "ignorePaths": [
17
17
  "node_modules",
18
- "example-expo",
19
18
  "example"
20
19
  ]
21
20
  }
@@ -125,8 +125,8 @@ namespace margelo::nitro::iap { struct NitroFinishTransactionParams; }
125
125
  namespace margelo::nitro::iap { struct NitroFinishTransactionIosParams; }
126
126
  // Forward declaration of `NitroFinishTransactionAndroidParams` to properly resolve imports.
127
127
  namespace margelo::nitro::iap { struct NitroFinishTransactionAndroidParams; }
128
- // Forward declaration of `NitroPurchaseUpdatedListenerOptions` to properly resolve imports.
129
- namespace margelo::nitro::iap { struct NitroPurchaseUpdatedListenerOptions; }
128
+ // Forward declaration of `PurchaseUpdatedListenerOptions` to properly resolve imports.
129
+ namespace margelo::nitro::iap { struct PurchaseUpdatedListenerOptions; }
130
130
  // Forward declaration of `NitroReceiptValidationParams` to properly resolve imports.
131
131
  namespace margelo::nitro::iap { struct NitroReceiptValidationParams; }
132
132
  // Forward declaration of `NitroReceiptValidationAppleOptions` to properly resolve imports.
@@ -331,8 +331,8 @@ namespace margelo::nitro::iap { enum class ExternalPurchaseCustomLinkNoticeTypeI
331
331
  #include <functional>
332
332
  #include "JFunc_void_NitroPurchase.hpp"
333
333
  #include <NitroModules/JNICallable.hpp>
334
- #include "NitroPurchaseUpdatedListenerOptions.hpp"
335
- #include "JNitroPurchaseUpdatedListenerOptions.hpp"
334
+ #include "PurchaseUpdatedListenerOptions.hpp"
335
+ #include "JPurchaseUpdatedListenerOptions.hpp"
336
336
  #include "JFunc_void_NitroPurchaseResult.hpp"
337
337
  #include "JFunc_void_NitroProduct.hpp"
338
338
  #include "NitroReceiptValidationParams.hpp"
@@ -591,9 +591,9 @@ namespace margelo::nitro::iap {
591
591
  return __promise;
592
592
  }();
593
593
  }
594
- double JHybridRnIapSpec::addPurchaseUpdatedListener(const std::function<void(const NitroPurchase& /* purchase */)>& listener, const std::optional<NitroPurchaseUpdatedListenerOptions>& options) {
595
- static const auto method = _javaPart->javaClassStatic()->getMethod<double(jni::alias_ref<JFunc_void_NitroPurchase::javaobject> /* listener */, jni::alias_ref<JNitroPurchaseUpdatedListenerOptions> /* options */)>("addPurchaseUpdatedListener_cxx");
596
- auto __result = method(_javaPart, JFunc_void_NitroPurchase_cxx::fromCpp(listener), options.has_value() ? JNitroPurchaseUpdatedListenerOptions::fromCpp(options.value()) : nullptr);
594
+ double JHybridRnIapSpec::addPurchaseUpdatedListener(const std::function<void(const NitroPurchase& /* purchase */)>& listener, const std::optional<PurchaseUpdatedListenerOptions>& options) {
595
+ static const auto method = _javaPart->javaClassStatic()->getMethod<double(jni::alias_ref<JFunc_void_NitroPurchase::javaobject> /* listener */, jni::alias_ref<JPurchaseUpdatedListenerOptions> /* options */)>("addPurchaseUpdatedListener_cxx");
596
+ auto __result = method(_javaPart, JFunc_void_NitroPurchase_cxx::fromCpp(listener), options.has_value() ? JPurchaseUpdatedListenerOptions::fromCpp(options.value()) : nullptr);
597
597
  return __result;
598
598
  }
599
599
  void JHybridRnIapSpec::addPurchaseErrorListener(const std::function<void(const NitroPurchaseResult& /* error */)>& listener) {
@@ -62,7 +62,7 @@ namespace margelo::nitro::iap {
62
62
  std::shared_ptr<Promise<std::vector<NitroActiveSubscription>>> getActiveSubscriptions(const std::optional<std::vector<std::string>>& subscriptionIds) override;
63
63
  std::shared_ptr<Promise<bool>> hasActiveSubscriptions(const std::optional<std::vector<std::string>>& subscriptionIds) override;
64
64
  std::shared_ptr<Promise<std::variant<bool, NitroPurchaseResult>>> finishTransaction(const NitroFinishTransactionParams& params) override;
65
- double addPurchaseUpdatedListener(const std::function<void(const NitroPurchase& /* purchase */)>& listener, const std::optional<NitroPurchaseUpdatedListenerOptions>& options) override;
65
+ double addPurchaseUpdatedListener(const std::function<void(const NitroPurchase& /* purchase */)>& listener, const std::optional<PurchaseUpdatedListenerOptions>& options) override;
66
66
  void addPurchaseErrorListener(const std::function<void(const NitroPurchaseResult& /* error */)>& listener) override;
67
67
  void removePurchaseUpdatedListener(double token) override;
68
68
  void removePurchaseErrorListener(const std::function<void(const NitroPurchaseResult& /* error */)>& listener) override;
@@ -1,5 +1,5 @@
1
1
  ///
2
- /// JNitroPurchaseUpdatedListenerOptions.hpp
2
+ /// JPurchaseUpdatedListenerOptions.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © Marc Rousavy @ Margelo
@@ -8,7 +8,7 @@
8
8
  #pragma once
9
9
 
10
10
  #include <fbjni/fbjni.h>
11
- #include "NitroPurchaseUpdatedListenerOptions.hpp"
11
+ #include "PurchaseUpdatedListenerOptions.hpp"
12
12
 
13
13
  #include "JVariant_NullType_Boolean.hpp"
14
14
  #include <NitroModules/JNull.hpp>
@@ -21,23 +21,23 @@ namespace margelo::nitro::iap {
21
21
  using namespace facebook;
22
22
 
23
23
  /**
24
- * The C++ JNI bridge between the C++ struct "NitroPurchaseUpdatedListenerOptions" and the the Kotlin data class "NitroPurchaseUpdatedListenerOptions".
24
+ * The C++ JNI bridge between the C++ struct "PurchaseUpdatedListenerOptions" and the the Kotlin data class "PurchaseUpdatedListenerOptions".
25
25
  */
26
- struct JNitroPurchaseUpdatedListenerOptions final: public jni::JavaClass<JNitroPurchaseUpdatedListenerOptions> {
26
+ struct JPurchaseUpdatedListenerOptions final: public jni::JavaClass<JPurchaseUpdatedListenerOptions> {
27
27
  public:
28
- static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/iap/NitroPurchaseUpdatedListenerOptions;";
28
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/iap/PurchaseUpdatedListenerOptions;";
29
29
 
30
30
  public:
31
31
  /**
32
- * Convert this Java/Kotlin-based struct to the C++ struct NitroPurchaseUpdatedListenerOptions by copying all values to C++.
32
+ * Convert this Java/Kotlin-based struct to the C++ struct PurchaseUpdatedListenerOptions by copying all values to C++.
33
33
  */
34
34
  [[maybe_unused]]
35
35
  [[nodiscard]]
36
- NitroPurchaseUpdatedListenerOptions toCpp() const {
36
+ PurchaseUpdatedListenerOptions toCpp() const {
37
37
  static const auto clazz = javaClassStatic();
38
38
  static const auto fieldDedupeTransactionIOS = clazz->getField<JVariant_NullType_Boolean>("dedupeTransactionIOS");
39
39
  jni::local_ref<JVariant_NullType_Boolean> dedupeTransactionIOS = this->getFieldValue(fieldDedupeTransactionIOS);
40
- return NitroPurchaseUpdatedListenerOptions(
40
+ return PurchaseUpdatedListenerOptions(
41
41
  dedupeTransactionIOS != nullptr ? std::make_optional(dedupeTransactionIOS->toCpp()) : std::nullopt
42
42
  );
43
43
  }
@@ -47,8 +47,8 @@ namespace margelo::nitro::iap {
47
47
  * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
48
48
  */
49
49
  [[maybe_unused]]
50
- static jni::local_ref<JNitroPurchaseUpdatedListenerOptions::javaobject> fromCpp(const NitroPurchaseUpdatedListenerOptions& value) {
51
- using JSignature = JNitroPurchaseUpdatedListenerOptions(jni::alias_ref<JVariant_NullType_Boolean>);
50
+ static jni::local_ref<JPurchaseUpdatedListenerOptions::javaobject> fromCpp(const PurchaseUpdatedListenerOptions& value) {
51
+ using JSignature = JPurchaseUpdatedListenerOptions(jni::alias_ref<JVariant_NullType_Boolean>);
52
52
  static const auto clazz = javaClassStatic();
53
53
  static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
54
54
  return create(
@@ -62,11 +62,11 @@ abstract class HybridRnIapSpec: HybridObject() {
62
62
  @Keep
63
63
  abstract fun finishTransaction(params: NitroFinishTransactionParams): Promise<Variant_Boolean_NitroPurchaseResult>
64
64
 
65
- abstract fun addPurchaseUpdatedListener(listener: (purchase: NitroPurchase) -> Unit, options: NitroPurchaseUpdatedListenerOptions?): Double
65
+ abstract fun addPurchaseUpdatedListener(listener: (purchase: NitroPurchase) -> Unit, options: PurchaseUpdatedListenerOptions?): Double
66
66
 
67
67
  @DoNotStrip
68
68
  @Keep
69
- private fun addPurchaseUpdatedListener_cxx(listener: Func_void_NitroPurchase, options: NitroPurchaseUpdatedListenerOptions?): Double {
69
+ private fun addPurchaseUpdatedListener_cxx(listener: Func_void_NitroPurchase, options: PurchaseUpdatedListenerOptions?): Double {
70
70
  val __result = addPurchaseUpdatedListener(listener, options)
71
71
  return __result
72
72
  }
@@ -1,5 +1,5 @@
1
1
  ///
2
- /// NitroPurchaseUpdatedListenerOptions.kt
2
+ /// PurchaseUpdatedListenerOptions.kt
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © Marc Rousavy @ Margelo
@@ -12,11 +12,11 @@ import com.facebook.proguard.annotations.DoNotStrip
12
12
  import com.margelo.nitro.core.NullType
13
13
 
14
14
  /**
15
- * Represents the JavaScript object/struct "NitroPurchaseUpdatedListenerOptions".
15
+ * Represents the JavaScript object/struct "PurchaseUpdatedListenerOptions".
16
16
  */
17
17
  @DoNotStrip
18
18
  @Keep
19
- data class NitroPurchaseUpdatedListenerOptions(
19
+ data class PurchaseUpdatedListenerOptions(
20
20
  @DoNotStrip
21
21
  @Keep
22
22
  val dedupeTransactionIOS: Variant_NullType_Boolean?
@@ -31,8 +31,8 @@ data class NitroPurchaseUpdatedListenerOptions(
31
31
  @Keep
32
32
  @Suppress("unused")
33
33
  @JvmStatic
34
- private fun fromCpp(dedupeTransactionIOS: Variant_NullType_Boolean?): NitroPurchaseUpdatedListenerOptions {
35
- return NitroPurchaseUpdatedListenerOptions(dedupeTransactionIOS)
34
+ private fun fromCpp(dedupeTransactionIOS: Variant_NullType_Boolean?): PurchaseUpdatedListenerOptions {
35
+ return PurchaseUpdatedListenerOptions(dedupeTransactionIOS)
36
36
  }
37
37
  }
38
38
  }
@@ -76,8 +76,6 @@ namespace margelo::nitro::iap { struct NitroPreorderDetailsAndroid; }
76
76
  namespace margelo::nitro::iap { struct NitroProduct; }
77
77
  // Forward declaration of `NitroPurchaseResult` to properly resolve imports.
78
78
  namespace margelo::nitro::iap { struct NitroPurchaseResult; }
79
- // Forward declaration of `NitroPurchaseUpdatedListenerOptions` to properly resolve imports.
80
- namespace margelo::nitro::iap { struct NitroPurchaseUpdatedListenerOptions; }
81
79
  // Forward declaration of `NitroPurchase` to properly resolve imports.
82
80
  namespace margelo::nitro::iap { struct NitroPurchase; }
83
81
  // Forward declaration of `NitroReceiptValidationAppleOptions` to properly resolve imports.
@@ -130,6 +128,8 @@ namespace margelo::nitro::iap { struct PurchaseIOS; }
130
128
  namespace margelo::nitro::iap { struct PurchaseOfferIOS; }
131
129
  // Forward declaration of `PurchaseState` to properly resolve imports.
132
130
  namespace margelo::nitro::iap { enum class PurchaseState; }
131
+ // Forward declaration of `PurchaseUpdatedListenerOptions` to properly resolve imports.
132
+ namespace margelo::nitro::iap { struct PurchaseUpdatedListenerOptions; }
133
133
  // Forward declaration of `PurchaseVerificationProvider` to properly resolve imports.
134
134
  namespace margelo::nitro::iap { enum class PurchaseVerificationProvider; }
135
135
  // Forward declaration of `RenewalInfoIOS` to properly resolve imports.
@@ -183,7 +183,6 @@ namespace NitroIap { class HybridRnIapSpec_cxx; }
183
183
  #include "NitroProduct.hpp"
184
184
  #include "NitroPurchase.hpp"
185
185
  #include "NitroPurchaseResult.hpp"
186
- #include "NitroPurchaseUpdatedListenerOptions.hpp"
187
186
  #include "NitroReceiptValidationAppleOptions.hpp"
188
187
  #include "NitroReceiptValidationGoogleOptions.hpp"
189
188
  #include "NitroReceiptValidationHorizonOptions.hpp"
@@ -209,6 +208,7 @@ namespace NitroIap { class HybridRnIapSpec_cxx; }
209
208
  #include "PurchaseIOS.hpp"
210
209
  #include "PurchaseOfferIOS.hpp"
211
210
  #include "PurchaseState.hpp"
211
+ #include "PurchaseUpdatedListenerOptions.hpp"
212
212
  #include "PurchaseVerificationProvider.hpp"
213
213
  #include "RenewalInfoIOS.hpp"
214
214
  #include "SubscriptionProductReplacementParamsAndroid.hpp"
@@ -2115,18 +2115,18 @@ namespace margelo::nitro::iap::bridge::swift {
2115
2115
  return Func_void_NitroPurchase_Wrapper(std::move(value));
2116
2116
  }
2117
2117
 
2118
- // pragma MARK: std::optional<NitroPurchaseUpdatedListenerOptions>
2118
+ // pragma MARK: std::optional<PurchaseUpdatedListenerOptions>
2119
2119
  /**
2120
- * Specialized version of `std::optional<NitroPurchaseUpdatedListenerOptions>`.
2120
+ * Specialized version of `std::optional<PurchaseUpdatedListenerOptions>`.
2121
2121
  */
2122
- using std__optional_NitroPurchaseUpdatedListenerOptions_ = std::optional<NitroPurchaseUpdatedListenerOptions>;
2123
- inline std::optional<NitroPurchaseUpdatedListenerOptions> create_std__optional_NitroPurchaseUpdatedListenerOptions_(const NitroPurchaseUpdatedListenerOptions& value) noexcept {
2124
- return std::optional<NitroPurchaseUpdatedListenerOptions>(value);
2122
+ using std__optional_PurchaseUpdatedListenerOptions_ = std::optional<PurchaseUpdatedListenerOptions>;
2123
+ inline std::optional<PurchaseUpdatedListenerOptions> create_std__optional_PurchaseUpdatedListenerOptions_(const PurchaseUpdatedListenerOptions& value) noexcept {
2124
+ return std::optional<PurchaseUpdatedListenerOptions>(value);
2125
2125
  }
2126
- inline bool has_value_std__optional_NitroPurchaseUpdatedListenerOptions_(const std::optional<NitroPurchaseUpdatedListenerOptions>& optional) noexcept {
2126
+ inline bool has_value_std__optional_PurchaseUpdatedListenerOptions_(const std::optional<PurchaseUpdatedListenerOptions>& optional) noexcept {
2127
2127
  return optional.has_value();
2128
2128
  }
2129
- inline NitroPurchaseUpdatedListenerOptions get_std__optional_NitroPurchaseUpdatedListenerOptions_(const std::optional<NitroPurchaseUpdatedListenerOptions>& optional) noexcept {
2129
+ inline PurchaseUpdatedListenerOptions get_std__optional_PurchaseUpdatedListenerOptions_(const std::optional<PurchaseUpdatedListenerOptions>& optional) noexcept {
2130
2130
  return optional.value();
2131
2131
  }
2132
2132
 
@@ -92,8 +92,6 @@ namespace margelo::nitro::iap { struct NitroProduct; }
92
92
  namespace margelo::nitro::iap { struct NitroPurchaseRequest; }
93
93
  // Forward declaration of `NitroPurchaseResult` to properly resolve imports.
94
94
  namespace margelo::nitro::iap { struct NitroPurchaseResult; }
95
- // Forward declaration of `NitroPurchaseUpdatedListenerOptions` to properly resolve imports.
96
- namespace margelo::nitro::iap { struct NitroPurchaseUpdatedListenerOptions; }
97
95
  // Forward declaration of `NitroPurchase` to properly resolve imports.
98
96
  namespace margelo::nitro::iap { struct NitroPurchase; }
99
97
  // Forward declaration of `NitroReceiptValidationAppleOptions` to properly resolve imports.
@@ -150,6 +148,8 @@ namespace margelo::nitro::iap { struct PurchaseIOS; }
150
148
  namespace margelo::nitro::iap { struct PurchaseOfferIOS; }
151
149
  // Forward declaration of `PurchaseState` to properly resolve imports.
152
150
  namespace margelo::nitro::iap { enum class PurchaseState; }
151
+ // Forward declaration of `PurchaseUpdatedListenerOptions` to properly resolve imports.
152
+ namespace margelo::nitro::iap { struct PurchaseUpdatedListenerOptions; }
153
153
  // Forward declaration of `PurchaseVerificationProvider` to properly resolve imports.
154
154
  namespace margelo::nitro::iap { enum class PurchaseVerificationProvider; }
155
155
  // Forward declaration of `RenewalInfoIOS` to properly resolve imports.
@@ -207,7 +207,6 @@ namespace margelo::nitro::iap { struct WinBackOfferInputIOS; }
207
207
  #include "NitroPurchase.hpp"
208
208
  #include "NitroPurchaseRequest.hpp"
209
209
  #include "NitroPurchaseResult.hpp"
210
- #include "NitroPurchaseUpdatedListenerOptions.hpp"
211
210
  #include "NitroReceiptValidationAppleOptions.hpp"
212
211
  #include "NitroReceiptValidationGoogleOptions.hpp"
213
212
  #include "NitroReceiptValidationHorizonOptions.hpp"
@@ -235,6 +234,7 @@ namespace margelo::nitro::iap { struct WinBackOfferInputIOS; }
235
234
  #include "PurchaseIOS.hpp"
236
235
  #include "PurchaseOfferIOS.hpp"
237
236
  #include "PurchaseState.hpp"
237
+ #include "PurchaseUpdatedListenerOptions.hpp"
238
238
  #include "PurchaseVerificationProvider.hpp"
239
239
  #include "RenewalInfoIOS.hpp"
240
240
  #include "SubscriptionProductReplacementParamsAndroid.hpp"
@@ -98,8 +98,8 @@ namespace margelo::nitro::iap { struct NitroFinishTransactionParams; }
98
98
  namespace margelo::nitro::iap { struct NitroFinishTransactionIosParams; }
99
99
  // Forward declaration of `NitroFinishTransactionAndroidParams` to properly resolve imports.
100
100
  namespace margelo::nitro::iap { struct NitroFinishTransactionAndroidParams; }
101
- // Forward declaration of `NitroPurchaseUpdatedListenerOptions` to properly resolve imports.
102
- namespace margelo::nitro::iap { struct NitroPurchaseUpdatedListenerOptions; }
101
+ // Forward declaration of `PurchaseUpdatedListenerOptions` to properly resolve imports.
102
+ namespace margelo::nitro::iap { struct PurchaseUpdatedListenerOptions; }
103
103
  // Forward declaration of `NitroSubscriptionStatus` to properly resolve imports.
104
104
  namespace margelo::nitro::iap { struct NitroSubscriptionStatus; }
105
105
  // Forward declaration of `NitroSubscriptionRenewalInfo` to properly resolve imports.
@@ -216,7 +216,7 @@ namespace margelo::nitro::iap { enum class ExternalPurchaseCustomLinkNoticeTypeI
216
216
  #include "NitroFinishTransactionIosParams.hpp"
217
217
  #include "NitroFinishTransactionAndroidParams.hpp"
218
218
  #include <functional>
219
- #include "NitroPurchaseUpdatedListenerOptions.hpp"
219
+ #include "PurchaseUpdatedListenerOptions.hpp"
220
220
  #include "NitroSubscriptionStatus.hpp"
221
221
  #include "NitroSubscriptionRenewalInfo.hpp"
222
222
  #include "NitroReceiptValidationResultIOS.hpp"
@@ -364,7 +364,7 @@ namespace margelo::nitro::iap {
364
364
  auto __value = std::move(__result.value());
365
365
  return __value;
366
366
  }
367
- inline double addPurchaseUpdatedListener(const std::function<void(const NitroPurchase& /* purchase */)>& listener, const std::optional<NitroPurchaseUpdatedListenerOptions>& options) override {
367
+ inline double addPurchaseUpdatedListener(const std::function<void(const NitroPurchase& /* purchase */)>& listener, const std::optional<PurchaseUpdatedListenerOptions>& options) override {
368
368
  auto __result = _swiftPart.addPurchaseUpdatedListener(listener, options);
369
369
  if (__result.hasError()) [[unlikely]] {
370
370
  std::rethrow_exception(__result.error());
@@ -21,7 +21,7 @@ public protocol HybridRnIapSpec_protocol: HybridObject {
21
21
  func getActiveSubscriptions(subscriptionIds: [String]?) throws -> Promise<[NitroActiveSubscription]>
22
22
  func hasActiveSubscriptions(subscriptionIds: [String]?) throws -> Promise<Bool>
23
23
  func finishTransaction(params: NitroFinishTransactionParams) throws -> Promise<Variant_Bool_NitroPurchaseResult>
24
- func addPurchaseUpdatedListener(listener: @escaping (_ purchase: NitroPurchase) -> Void, options: NitroPurchaseUpdatedListenerOptions?) throws -> Double
24
+ func addPurchaseUpdatedListener(listener: @escaping (_ purchase: NitroPurchase) -> Void, options: PurchaseUpdatedListenerOptions?) throws -> Double
25
25
  func addPurchaseErrorListener(listener: @escaping (_ error: NitroPurchaseResult) -> Void) throws -> Void
26
26
  func removePurchaseUpdatedListener(token: Double) throws -> Void
27
27
  func removePurchaseErrorListener(listener: @escaping (_ error: NitroPurchaseResult) -> Void) throws -> Void
@@ -359,7 +359,7 @@ open class HybridRnIapSpec_cxx {
359
359
  }
360
360
 
361
361
  @inline(__always)
362
- public final func addPurchaseUpdatedListener(listener: bridge.Func_void_NitroPurchase, options: bridge.std__optional_NitroPurchaseUpdatedListenerOptions_) -> bridge.Result_double_ {
362
+ public final func addPurchaseUpdatedListener(listener: bridge.Func_void_NitroPurchase, options: bridge.std__optional_PurchaseUpdatedListenerOptions_) -> bridge.Result_double_ {
363
363
  do {
364
364
  let __result = try self.__implementation.addPurchaseUpdatedListener(listener: { () -> (NitroPurchase) -> Void in
365
365
  let __wrappedFunction = bridge.wrap_Func_void_NitroPurchase(listener)