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.
- package/README.md +29 -49
- package/android/build.gradle +92 -22
- package/android/gradle.properties +5 -1
- package/android/src/main/java/com/margelo/nitro/iap/HybridRnIap.kt +1 -1
- package/android/src/main/java/com/margelo/nitro/iap/RnIapLog.kt +3 -1
- package/ios/HybridRnIap.swift +12 -6
- package/lib/module/index.js +73 -158
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/src/hooks/useIAP.d.ts +15 -15
- package/lib/typescript/src/index.d.ts +59 -88
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/specs/RnIap.nitro.d.ts +2 -15
- package/lib/typescript/src/specs/RnIap.nitro.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +47 -47
- package/nitro.json +0 -1
- package/nitrogen/generated/android/c++/JHybridRnIapSpec.cpp +7 -7
- package/nitrogen/generated/android/c++/JHybridRnIapSpec.hpp +1 -1
- package/nitrogen/generated/android/c++/{JNitroPurchaseUpdatedListenerOptions.hpp → JPurchaseUpdatedListenerOptions.hpp} +10 -10
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/HybridRnIapSpec.kt +2 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/{NitroPurchaseUpdatedListenerOptions.kt → PurchaseUpdatedListenerOptions.kt} +5 -5
- package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.hpp +10 -10
- package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Umbrella.hpp +3 -3
- package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.hpp +4 -4
- package/nitrogen/generated/ios/swift/HybridRnIapSpec.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridRnIapSpec_cxx.swift +1 -1
- package/nitrogen/generated/ios/swift/{NitroPurchaseUpdatedListenerOptions.swift → PurchaseUpdatedListenerOptions.swift} +5 -5
- package/nitrogen/generated/shared/c++/HybridRnIapSpec.hpp +4 -4
- package/nitrogen/generated/shared/c++/{NitroPurchaseUpdatedListenerOptions.hpp → PurchaseUpdatedListenerOptions.hpp} +11 -11
- package/openiap-versions.json +2 -2
- package/package.json +4 -6
- package/src/hooks/useIAP.ts +15 -15
- package/src/index.ts +93 -204
- package/src/specs/RnIap.nitro.ts +2 -15
- 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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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
|
@@ -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 `
|
|
129
|
-
namespace margelo::nitro::iap { struct
|
|
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 "
|
|
335
|
-
#include "
|
|
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<
|
|
595
|
-
static const auto method = _javaPart->javaClassStatic()->getMethod<double(jni::alias_ref<JFunc_void_NitroPurchase::javaobject> /* listener */, jni::alias_ref<
|
|
596
|
-
auto __result = method(_javaPart, JFunc_void_NitroPurchase_cxx::fromCpp(listener), options.has_value() ?
|
|
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<
|
|
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
|
-
///
|
|
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 "
|
|
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 "
|
|
24
|
+
* The C++ JNI bridge between the C++ struct "PurchaseUpdatedListenerOptions" and the the Kotlin data class "PurchaseUpdatedListenerOptions".
|
|
25
25
|
*/
|
|
26
|
-
struct
|
|
26
|
+
struct JPurchaseUpdatedListenerOptions final: public jni::JavaClass<JPurchaseUpdatedListenerOptions> {
|
|
27
27
|
public:
|
|
28
|
-
static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/iap/
|
|
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
|
|
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
|
-
|
|
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
|
|
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<
|
|
51
|
-
using JSignature =
|
|
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:
|
|
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:
|
|
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
|
-
///
|
|
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 "
|
|
15
|
+
* Represents the JavaScript object/struct "PurchaseUpdatedListenerOptions".
|
|
16
16
|
*/
|
|
17
17
|
@DoNotStrip
|
|
18
18
|
@Keep
|
|
19
|
-
data class
|
|
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?):
|
|
35
|
-
return
|
|
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<
|
|
2118
|
+
// pragma MARK: std::optional<PurchaseUpdatedListenerOptions>
|
|
2119
2119
|
/**
|
|
2120
|
-
* Specialized version of `std::optional<
|
|
2120
|
+
* Specialized version of `std::optional<PurchaseUpdatedListenerOptions>`.
|
|
2121
2121
|
*/
|
|
2122
|
-
using
|
|
2123
|
-
inline std::optional<
|
|
2124
|
-
return std::optional<
|
|
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
|
|
2126
|
+
inline bool has_value_std__optional_PurchaseUpdatedListenerOptions_(const std::optional<PurchaseUpdatedListenerOptions>& optional) noexcept {
|
|
2127
2127
|
return optional.has_value();
|
|
2128
2128
|
}
|
|
2129
|
-
inline
|
|
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 `
|
|
102
|
-
namespace margelo::nitro::iap { struct
|
|
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 "
|
|
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<
|
|
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:
|
|
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.
|
|
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)
|