react-native-iap 15.4.0-rc.3 → 15.4.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 +23 -25
- package/android/src/main/java/com/margelo/nitro/iap/ConnectionLifecycleQueue.kt +113 -0
- package/android/src/main/java/com/margelo/nitro/iap/HybridRnIap.kt +471 -255
- package/android/src/main/java/com/margelo/nitro/iap/ProductSerialization.kt +98 -0
- package/android/src/main/java/com/margelo/nitro/iap/RnIapLog.kt +23 -1
- package/ios/HybridRnIap.swift +230 -140
- package/ios/RnIapHelper.swift +180 -28
- package/ios/RnIapLog.swift +24 -1
- package/lib/module/hooks/useIAP.js +20 -4
- package/lib/module/hooks/useIAP.js.map +1 -1
- package/lib/module/index.js +151 -46
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.kepler.js +3 -0
- package/lib/module/index.kepler.js.map +1 -1
- package/lib/module/types.js +77 -14
- package/lib/module/types.js.map +1 -1
- package/lib/module/utils/error.js +7 -3
- package/lib/module/utils/error.js.map +1 -1
- package/lib/module/utils/errorMapping.js +2 -0
- package/lib/module/utils/errorMapping.js.map +1 -1
- package/lib/module/utils/type-bridge.js +50 -22
- package/lib/module/utils/type-bridge.js.map +1 -1
- package/lib/module/vega-adapter.js +55 -8
- package/lib/module/vega-adapter.js.map +1 -1
- package/lib/typescript/src/hooks/useIAP.d.ts +28 -5
- package/lib/typescript/src/hooks/useIAP.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +50 -10
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/index.kepler.d.ts +3 -0
- package/lib/typescript/src/index.kepler.d.ts.map +1 -1
- package/lib/typescript/src/specs/RnIap.nitro.d.ts +98 -26
- package/lib/typescript/src/specs/RnIap.nitro.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +279 -59
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/utils/error.d.ts.map +1 -1
- package/lib/typescript/src/utils/errorMapping.d.ts +3 -1
- package/lib/typescript/src/utils/errorMapping.d.ts.map +1 -1
- package/lib/typescript/src/utils/type-bridge.d.ts.map +1 -1
- package/lib/typescript/src/vega-adapter.d.ts.map +1 -1
- package/nitro.json +8 -2
- package/nitrogen/generated/android/NitroIap+autolinking.cmake +4 -1
- package/nitrogen/generated/android/NitroIapOnLoad.cpp +2 -2
- package/nitrogen/generated/android/c++/JAdvancedCommerceInfoIOS.hpp +10 -10
- package/nitrogen/generated/android/c++/JAdvancedCommerceItemDetailsIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JAdvancedCommerceItemIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JAdvancedCommerceRefundIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JAlternativeBillingModeAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JAndroidSubscriptionOfferInput.hpp +2 -2
- package/nitrogen/generated/android/c++/JBillingChoiceImageLayoutAndroid.hpp +61 -0
- package/nitrogen/generated/android/c++/JBillingChoiceScreenTypeAndroid.hpp +61 -0
- package/nitrogen/generated/android/c++/JBillingProgramAndroid.hpp +5 -2
- package/nitrogen/generated/android/c++/JDeveloperBillingLaunchModeAndroid.hpp +61 -0
- package/nitrogen/generated/android/c++/JDeveloperBillingOptionParamsAndroid.hpp +78 -0
- package/nitrogen/generated/android/c++/JDeveloperBillingTypeAndroid.hpp +61 -0
- package/nitrogen/generated/android/c++/JDeveloperProvidedBillingDetailsAndroid.hpp +47 -7
- package/nitrogen/generated/android/c++/JDeveloperProvidedBillingProductAndroid.hpp +72 -0
- package/nitrogen/generated/android/c++/JExternalLinkLaunchModeAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JExternalLinkTypeAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkNoticeResultIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkNoticeTypeIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkTokenResultIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkTokenTypeIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JExternalPurchaseLinkResultIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JExternalPurchaseNoticeAction.hpp +2 -2
- package/nitrogen/generated/android/c++/JExternalPurchaseNoticeResultIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JFunc_void_DeveloperProvidedBillingDetailsAndroid.hpp +12 -2
- package/nitrogen/generated/android/c++/JFunc_void_NitroProduct.hpp +2 -2
- package/nitrogen/generated/android/c++/JFunc_void_NitroPurchase.hpp +26 -2
- package/nitrogen/generated/android/c++/JFunc_void_NitroPurchaseResult.hpp +5 -2
- package/nitrogen/generated/android/c++/JFunc_void_UserChoiceBillingDetails.hpp +12 -2
- package/nitrogen/generated/android/c++/JHybridRnIapSpec.cpp +160 -48
- package/nitrogen/generated/android/c++/JHybridRnIapSpec.hpp +7 -4
- package/nitrogen/generated/android/c++/JIapPlatform.hpp +2 -2
- package/nitrogen/generated/android/c++/JIapStore.hpp +2 -2
- package/nitrogen/generated/android/c++/JIapkitPurchaseState.hpp +2 -2
- package/nitrogen/generated/android/c++/JInAppMessageCategoryAndroid.hpp +58 -0
- package/nitrogen/generated/android/c++/JInAppMessageResponseCodeAndroid.hpp +58 -0
- package/nitrogen/generated/android/c++/JInitConnectionConfig.hpp +9 -3
- package/nitrogen/generated/android/c++/JNitroActiveSubscription.hpp +7 -2
- package/nitrogen/generated/android/c++/JNitroAvailablePurchasesAndroidOptions.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroAvailablePurchasesAndroidType.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroAvailablePurchasesIosOptions.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroAvailablePurchasesOptions.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroBillingChoiceInfoAndroid.hpp +66 -0
- package/nitrogen/generated/android/c++/JNitroBillingProgramAvailabilityResultAndroid.hpp +20 -5
- package/nitrogen/generated/android/c++/JNitroBillingProgramInformationDialogParamsAndroid.hpp +63 -0
- package/nitrogen/generated/android/c++/JNitroBillingProgramReportingDetailsAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroBillingResultAndroid.hpp +72 -0
- package/nitrogen/generated/android/c++/JNitroDeepLinkOptionsAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroDiscountAmountAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroDiscountDisplayInfoAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroFinishTransactionAndroidParams.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroFinishTransactionIosParams.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroFinishTransactionParams.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroGetBillingChoiceInfoParamsAndroid.hpp +74 -0
- package/nitrogen/generated/android/c++/JNitroInAppMessageParamsAndroid.hpp +64 -0
- package/nitrogen/generated/android/c++/JNitroInAppMessageResultAndroid.hpp +68 -0
- package/nitrogen/generated/android/c++/JNitroLaunchExternalLinkParamsAndroid.hpp +12 -3
- package/nitrogen/generated/android/c++/JNitroLimitedQuantityInfoAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroOneTimePurchaseOfferDetail.hpp +15 -11
- package/nitrogen/generated/android/c++/JNitroPreorderDetailsAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroProduct.hpp +15 -3
- package/nitrogen/generated/android/c++/JNitroPurchase.hpp +53 -5
- package/nitrogen/generated/android/c++/JNitroPurchaseRequest.hpp +9 -2
- package/nitrogen/generated/android/c++/JNitroPurchaseResult.hpp +46 -5
- package/nitrogen/generated/android/c++/JNitroReceiptValidationAppleOptions.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroReceiptValidationGoogleOptions.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroReceiptValidationHorizonOptions.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroReceiptValidationParams.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroReceiptValidationResultAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroReceiptValidationResultIOS.hpp +26 -2
- package/nitrogen/generated/android/c++/JNitroRenewalInfoIOS.hpp +16 -3
- package/nitrogen/generated/android/c++/JNitroRentalDetailsAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroRequestPurchaseAndroid.hpp +26 -11
- package/nitrogen/generated/android/c++/JNitroRequestPurchaseIos.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroSubscriptionStatus.hpp +15 -9
- package/nitrogen/generated/android/c++/JNitroValidTimeWindowAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitAmazonProps.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitAppleProps.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitGoogleProps.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitProps.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitResult.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithProviderError.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithProviderProps.hpp +2 -2
- package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithProviderResult.hpp +2 -2
- package/nitrogen/generated/android/c++/JPaymentModeIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JPendingPurchaseUpdateAndroid.hpp +10 -10
- package/nitrogen/generated/android/c++/JProductType.hpp +58 -0
- package/nitrogen/generated/android/c++/JPromotionalOfferJwsInputIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JPurchase.hpp +3 -3
- package/nitrogen/generated/android/c++/JPurchaseAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JPurchaseIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JPurchaseOfferIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JPurchaseState.hpp +2 -2
- package/nitrogen/generated/android/c++/JPurchaseUpdatedListenerOptions.hpp +2 -2
- package/nitrogen/generated/android/c++/JPurchaseVerificationProvider.hpp +2 -2
- package/nitrogen/generated/android/c++/JRenewalCommitmentInfoIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JRenewalInfoIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JRequestPurchaseResult.cpp +4 -4
- package/nitrogen/generated/android/c++/JRequestPurchaseResult.hpp +9 -9
- package/nitrogen/generated/android/c++/JSubResponseCodeAndroid.hpp +61 -0
- package/nitrogen/generated/android/c++/JSubscriptionBillingPlanTypeIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JSubscriptionProductReplacementParamsAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JSubscriptionReplacementModeAndroid.hpp +2 -2
- package/nitrogen/generated/android/c++/JTransactionCommitmentInfoIOS.hpp +2 -2
- package/nitrogen/generated/android/c++/JUserChoiceBillingDetails.hpp +29 -11
- package/nitrogen/generated/android/c++/JVariant_Boolean_NitroPurchaseResult.hpp +6 -3
- package/nitrogen/generated/android/c++/JVariant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.hpp +27 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_AdvancedCommerceInfoIOS.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_AdvancedCommerceItemDetailsIOS.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_AdvancedCommerceRefundIOS_.cpp +4 -4
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_AdvancedCommerceRefundIOS_.hpp +7 -7
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_AndroidSubscriptionOfferInput_.cpp +4 -4
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_AndroidSubscriptionOfferInput_.hpp +7 -7
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_DeveloperProvidedBillingProductAndroid_.cpp +35 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_DeveloperProvidedBillingProductAndroid_.hpp +86 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_InAppMessageCategoryAndroid_.cpp +35 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_InAppMessageCategoryAndroid_.hpp +81 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroOneTimePurchaseOfferDetail_.cpp +4 -4
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroOneTimePurchaseOfferDetail_.hpp +7 -7
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroSubscriptionStatus_.cpp +4 -4
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroSubscriptionStatus_.hpp +16 -10
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroVerifyPurchaseWithProviderError_.cpp +4 -4
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroVerifyPurchaseWithProviderError_.hpp +7 -7
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_String_.cpp +4 -4
- package/nitrogen/generated/android/c++/JVariant_NullType_Array_String_.hpp +7 -7
- package/nitrogen/generated/android/c++/JVariant_NullType_Boolean.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_DeveloperBillingOptionParamsAndroid.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_DeveloperBillingOptionParamsAndroid.hpp +78 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_Double.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_InitConnectionConfig.hpp +5 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_Map_String__String_.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroAvailablePurchasesAndroidOptions.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroAvailablePurchasesIosOptions.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroDiscountAmountAndroid.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroDiscountDisplayInfoAndroid.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroFinishTransactionAndroidParams.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroFinishTransactionIosParams.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroInAppMessageParamsAndroid.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroInAppMessageParamsAndroid.hpp +76 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroLimitedQuantityInfoAndroid.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroPreorderDetailsAndroid.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroProduct.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroPurchase.hpp +27 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationAppleOptions.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationGoogleOptions.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationHorizonOptions.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroRenewalInfoIOS.hpp +8 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroRentalDetailsAndroid.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroRequestPurchaseAndroid.hpp +10 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroRequestPurchaseIos.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroValidTimeWindowAndroid.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitAmazonProps.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitAppleProps.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitGoogleProps.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitProps.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitResult.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_PendingPurchaseUpdateAndroid.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_PromotionalOfferJwsInputIOS.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_PurchaseOfferIOS.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_RenewalCommitmentInfoIOS.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_RenewalInfoIOS.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_String.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_SubscriptionProductReplacementParamsAndroid.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_TransactionCommitmentInfoIOS.hpp +3 -3
- package/nitrogen/generated/android/c++/JVariant_NullType_WinBackOfferInputIOS.hpp +3 -3
- package/nitrogen/generated/android/c++/JWinBackOfferInputIOS.hpp +2 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceInfoIOS.kt +27 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceItemDetailsIOS.kt +13 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceItemIOS.kt +17 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceRefundIOS.kt +13 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AndroidSubscriptionOfferInput.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/BillingChoiceImageLayoutAndroid.kt +24 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/BillingChoiceScreenTypeAndroid.kt +24 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/BillingProgramAndroid.kt +2 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/DeveloperBillingLaunchModeAndroid.kt +24 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/DeveloperBillingOptionParamsAndroid.kt +66 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/DeveloperBillingTypeAndroid.kt +24 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/DeveloperProvidedBillingDetailsAndroid.kt +32 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/DeveloperProvidedBillingProductAndroid.kt +61 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseCustomLinkNoticeResultIOS.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseCustomLinkTokenResultIOS.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseLinkResultIOS.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseNoticeResultIOS.kt +17 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/HybridRnIapSpec.kt +14 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/InAppMessageCategoryAndroid.kt +23 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/InAppMessageResponseCodeAndroid.kt +23 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/InitConnectionConfig.kt +22 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroActiveSubscription.kt +39 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesAndroidOptions.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesIosOptions.kt +21 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesOptions.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingChoiceInfoAndroid.kt +56 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingProgramAvailabilityResultAndroid.kt +29 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingProgramInformationDialogParamsAndroid.kt +56 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingProgramReportingDetailsAndroid.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingResultAndroid.kt +61 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroDeepLinkOptionsAndroid.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroDiscountAmountAndroid.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroDiscountDisplayInfoAndroid.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionAndroidParams.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionIosParams.kt +13 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionParams.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroGetBillingChoiceInfoParamsAndroid.kt +61 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroInAppMessageParamsAndroid.kt +51 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroInAppMessageResultAndroid.kt +56 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroLaunchExternalLinkParamsAndroid.kt +27 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroLimitedQuantityInfoAndroid.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroOneTimePurchaseOfferDetail.kt +42 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPreorderDetailsAndroid.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroProduct.kt +96 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchase.kt +128 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchaseRequest.kt +19 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchaseResult.kt +49 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationAppleOptions.kt +13 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationGoogleOptions.kt +21 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationHorizonOptions.kt +17 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationParams.kt +17 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationResultAndroid.kt +47 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationResultIOS.kt +19 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRenewalInfoIOS.kt +45 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRentalDetailsAndroid.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRequestPurchaseAndroid.kt +41 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRequestPurchaseIos.kt +31 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroSubscriptionStatus.kt +19 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroValidTimeWindowAndroid.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitAmazonProps.kt +17 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitAppleProps.kt +13 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitGoogleProps.kt +13 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitProps.kt +19 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitResult.kt +17 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithProviderError.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithProviderProps.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithProviderResult.kt +17 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PendingPurchaseUpdateAndroid.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ProductType.kt +23 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PromotionalOfferJwsInputIOS.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Purchase.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseAndroid.kt +55 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseIOS.kt +85 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseOfferIOS.kt +17 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseUpdatedListenerOptions.kt +13 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/RenewalCommitmentInfoIOS.kt +21 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/RenewalInfoIOS.kt +37 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/RequestPurchaseResult.kt +20 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/SubResponseCodeAndroid.kt +24 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/SubscriptionProductReplacementParamsAndroid.kt +15 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/TransactionCommitmentInfoIOS.kt +19 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/UserChoiceBillingDetails.kt +28 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_Boolean_NitroPurchaseResult.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_AdvancedCommerceInfoIOS.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_AdvancedCommerceItemDetailsIOS.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_AdvancedCommerceRefundIOS_.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_AndroidSubscriptionOfferInput_.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_DeveloperProvidedBillingProductAndroid_.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_InAppMessageCategoryAndroid_.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_NitroOneTimePurchaseOfferDetail_.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_NitroSubscriptionStatus_.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_NitroVerifyPurchaseWithProviderError_.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_String_.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Boolean.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_DeveloperBillingOptionParamsAndroid.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Double.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_InitConnectionConfig.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Map_String__String_.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroAvailablePurchasesAndroidOptions.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroAvailablePurchasesIosOptions.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroDiscountAmountAndroid.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroDiscountDisplayInfoAndroid.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroFinishTransactionAndroidParams.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroFinishTransactionIosParams.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroInAppMessageParamsAndroid.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroLimitedQuantityInfoAndroid.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroPreorderDetailsAndroid.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroProduct.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroPurchase.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroReceiptValidationAppleOptions.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroReceiptValidationGoogleOptions.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroReceiptValidationHorizonOptions.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRenewalInfoIOS.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRentalDetailsAndroid.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRequestPurchaseAndroid.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRequestPurchaseIos.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroValidTimeWindowAndroid.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitAmazonProps.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitAppleProps.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitGoogleProps.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitProps.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitResult.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_PendingPurchaseUpdateAndroid.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_PromotionalOfferJwsInputIOS.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_PurchaseOfferIOS.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_RenewalCommitmentInfoIOS.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_RenewalInfoIOS.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_String.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_SubscriptionProductReplacementParamsAndroid.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_TransactionCommitmentInfoIOS.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_WinBackOfferInputIOS.kt +16 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/WinBackOfferInputIOS.kt +13 -0
- package/nitrogen/generated/ios/NitroIap+autolinking.rb +2 -0
- package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.cpp +24 -0
- package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.hpp +441 -47
- package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Umbrella.hpp +48 -3
- package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.hpp +75 -6
- package/nitrogen/generated/ios/swift/BillingChoiceImageLayoutAndroid.swift +44 -0
- package/nitrogen/generated/ios/swift/BillingChoiceScreenTypeAndroid.swift +44 -0
- package/nitrogen/generated/ios/swift/BillingProgramAndroid.swift +4 -0
- package/nitrogen/generated/ios/swift/DeveloperBillingLaunchModeAndroid.swift +44 -0
- package/nitrogen/generated/ios/swift/DeveloperBillingOptionParamsAndroid.swift +114 -0
- package/nitrogen/generated/ios/swift/DeveloperBillingTypeAndroid.swift +44 -0
- package/nitrogen/generated/ios/swift/DeveloperProvidedBillingDetailsAndroid.swift +121 -4
- package/nitrogen/generated/ios/swift/DeveloperProvidedBillingProductAndroid.swift +71 -0
- package/nitrogen/generated/ios/swift/Func_void_NitroBillingChoiceInfoAndroid.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_NitroBillingResultAndroid.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_NitroInAppMessageResultAndroid.swift +46 -0
- package/nitrogen/generated/ios/swift/HybridRnIapSpec.swift +5 -2
- package/nitrogen/generated/ios/swift/HybridRnIapSpec_cxx.swift +85 -9
- package/nitrogen/generated/ios/swift/InAppMessageCategoryAndroid.swift +40 -0
- package/nitrogen/generated/ios/swift/InAppMessageResponseCodeAndroid.swift +40 -0
- package/nitrogen/generated/ios/swift/InitConnectionConfig.swift +12 -1
- package/nitrogen/generated/ios/swift/NitroBillingChoiceInfoAndroid.swift +66 -0
- package/nitrogen/generated/ios/swift/NitroBillingProgramAvailabilityResultAndroid.swift +50 -2
- package/nitrogen/generated/ios/swift/NitroBillingProgramInformationDialogParamsAndroid.swift +34 -0
- package/nitrogen/generated/ios/swift/NitroBillingResultAndroid.swift +77 -0
- package/nitrogen/generated/ios/swift/NitroGetBillingChoiceInfoParamsAndroid.swift +71 -0
- package/nitrogen/generated/ios/swift/NitroInAppMessageParamsAndroid.swift +67 -0
- package/nitrogen/generated/ios/swift/NitroInAppMessageResultAndroid.swift +66 -0
- package/nitrogen/generated/ios/swift/NitroLaunchExternalLinkParamsAndroid.swift +39 -2
- package/nitrogen/generated/ios/swift/NitroOneTimePurchaseOfferDetail.swift +39 -2
- package/nitrogen/generated/ios/swift/NitroProduct.swift +113 -2
- package/nitrogen/generated/ios/swift/NitroPurchase.swift +204 -2
- package/nitrogen/generated/ios/swift/NitroPurchaseResult.swift +90 -1
- package/nitrogen/generated/ios/swift/NitroRenewalInfoIOS.swift +49 -1
- package/nitrogen/generated/ios/swift/NitroRequestPurchaseAndroid.swift +75 -1
- package/nitrogen/generated/ios/swift/NitroSubscriptionStatus.swift +11 -11
- package/nitrogen/generated/ios/swift/ProductType.swift +40 -0
- package/nitrogen/generated/ios/swift/Purchase.swift +12 -0
- package/nitrogen/generated/ios/swift/RequestPurchaseResult.swift +14 -0
- package/nitrogen/generated/ios/swift/SubResponseCodeAndroid.swift +44 -0
- package/nitrogen/generated/ios/swift/UserChoiceBillingDetails.swift +82 -2
- package/nitrogen/generated/ios/swift/Variant_Bool_NitroPurchaseResult.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_AdvancedCommerceInfoIOS.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_AdvancedCommerceItemDetailsIOS.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_Bool.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_DeveloperBillingOptionParamsAndroid.swift +30 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_Dictionary_String__String_.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_Double.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_InitConnectionConfig.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroAvailablePurchasesAndroidOptions.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroAvailablePurchasesIosOptions.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroDiscountAmountAndroid.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroDiscountDisplayInfoAndroid.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroFinishTransactionAndroidParams.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroFinishTransactionIosParams.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroInAppMessageParamsAndroid.swift +30 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroLimitedQuantityInfoAndroid.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroPreorderDetailsAndroid.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroProduct.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroPurchase.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroReceiptValidationAppleOptions.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroReceiptValidationGoogleOptions.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroReceiptValidationHorizonOptions.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroRenewalInfoIOS.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroRentalDetailsAndroid.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroRequestPurchaseAndroid.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroRequestPurchaseIos.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroValidTimeWindowAndroid.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitAmazonProps.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitAppleProps.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitGoogleProps.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitProps.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitResult.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_PendingPurchaseUpdateAndroid.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_PromotionalOfferJwsInputIOS.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_PurchaseOfferIOS.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_RenewalCommitmentInfoIOS.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_RenewalInfoIOS.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_String.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_SubscriptionProductReplacementParamsAndroid.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_TransactionCommitmentInfoIOS.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_WinBackOfferInputIOS.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType__AdvancedCommerceRefundIOS_.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType__AndroidSubscriptionOfferInput_.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType__DeveloperProvidedBillingProductAndroid_.swift +30 -0
- package/nitrogen/generated/ios/swift/Variant_NullType__InAppMessageCategoryAndroid_.swift +30 -0
- package/nitrogen/generated/ios/swift/Variant_NullType__NitroOneTimePurchaseOfferDetail_.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType__NitroSubscriptionStatus_.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType__NitroVerifyPurchaseWithProviderError_.swift +12 -0
- package/nitrogen/generated/ios/swift/Variant_NullType__String_.swift +12 -0
- package/nitrogen/generated/shared/c++/AdvancedCommerceInfoIOS.hpp +1 -1
- package/nitrogen/generated/shared/c++/AdvancedCommerceItemIOS.hpp +1 -1
- package/nitrogen/generated/shared/c++/BillingChoiceImageLayoutAndroid.hpp +80 -0
- package/nitrogen/generated/shared/c++/BillingChoiceScreenTypeAndroid.hpp +80 -0
- package/nitrogen/generated/shared/c++/BillingProgramAndroid.hpp +4 -0
- package/nitrogen/generated/shared/c++/DeveloperBillingLaunchModeAndroid.hpp +80 -0
- package/nitrogen/generated/shared/c++/DeveloperBillingOptionParamsAndroid.hpp +103 -0
- package/nitrogen/generated/shared/c++/DeveloperBillingTypeAndroid.hpp +80 -0
- package/nitrogen/generated/shared/c++/DeveloperProvidedBillingDetailsAndroid.hpp +25 -7
- package/nitrogen/generated/shared/c++/DeveloperProvidedBillingProductAndroid.hpp +96 -0
- package/nitrogen/generated/shared/c++/HybridRnIapSpec.cpp +3 -0
- package/nitrogen/generated/shared/c++/HybridRnIapSpec.hpp +26 -2
- package/nitrogen/generated/shared/c++/InAppMessageCategoryAndroid.hpp +76 -0
- package/nitrogen/generated/shared/c++/InAppMessageResponseCodeAndroid.hpp +76 -0
- package/nitrogen/generated/shared/c++/InitConnectionConfig.hpp +8 -1
- package/nitrogen/generated/shared/c++/NitroBillingChoiceInfoAndroid.hpp +90 -0
- package/nitrogen/generated/shared/c++/NitroBillingProgramAvailabilityResultAndroid.hpp +16 -2
- package/nitrogen/generated/shared/c++/NitroBillingProgramInformationDialogParamsAndroid.hpp +89 -0
- package/nitrogen/generated/shared/c++/NitroBillingResultAndroid.hpp +96 -0
- package/nitrogen/generated/shared/c++/NitroGetBillingChoiceInfoParamsAndroid.hpp +99 -0
- package/nitrogen/generated/shared/c++/NitroInAppMessageParamsAndroid.hpp +88 -0
- package/nitrogen/generated/shared/c++/NitroInAppMessageResultAndroid.hpp +92 -0
- package/nitrogen/generated/shared/c++/NitroLaunchExternalLinkParamsAndroid.hpp +9 -2
- package/nitrogen/generated/shared/c++/NitroOneTimePurchaseOfferDetail.hpp +6 -2
- package/nitrogen/generated/shared/c++/NitroProduct.hpp +14 -2
- package/nitrogen/generated/shared/c++/NitroPurchase.hpp +40 -3
- package/nitrogen/generated/shared/c++/NitroPurchaseRequest.hpp +1 -1
- package/nitrogen/generated/shared/c++/NitroPurchaseResult.hpp +27 -4
- package/nitrogen/generated/shared/c++/NitroReceiptValidationResultIOS.hpp +1 -1
- package/nitrogen/generated/shared/c++/NitroRenewalInfoIOS.hpp +15 -2
- package/nitrogen/generated/shared/c++/NitroRequestPurchaseAndroid.hpp +13 -2
- package/nitrogen/generated/shared/c++/NitroSubscriptionStatus.hpp +8 -8
- package/nitrogen/generated/shared/c++/NitroVerifyPurchaseWithProviderResult.hpp +1 -1
- package/nitrogen/generated/shared/c++/PendingPurchaseUpdateAndroid.hpp +1 -1
- package/nitrogen/generated/shared/c++/ProductType.hpp +76 -0
- package/nitrogen/generated/shared/c++/PurchaseAndroid.hpp +1 -1
- package/nitrogen/generated/shared/c++/PurchaseIOS.hpp +1 -1
- package/nitrogen/generated/shared/c++/SubResponseCodeAndroid.hpp +80 -0
- package/nitrogen/generated/shared/c++/UserChoiceBillingDetails.hpp +16 -3
- package/openiap-versions.json +3 -3
- package/package.json +8 -5
- package/src/hooks/useIAP.ts +70 -4
- package/src/index.kepler.ts +9 -0
- package/src/index.ts +268 -120
- package/src/specs/RnIap.nitro.ts +141 -27
- package/src/types.ts +294 -59
- package/src/utils/error.ts +11 -8
- package/src/utils/errorMapping.ts +9 -1
- package/src/utils/type-bridge.ts +63 -42
- package/src/vega-adapter.ts +112 -15
- package/nitrogen/generated/android/c++/JNitroSubscriptionRenewalInfo.hpp +0 -83
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroSubscriptionRenewalInfo.cpp +0 -26
- package/nitrogen/generated/android/c++/JVariant_NullType_NitroSubscriptionRenewalInfo.hpp +0 -75
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroSubscriptionRenewalInfo.kt +0 -53
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroSubscriptionRenewalInfo.kt +0 -53
- package/nitrogen/generated/ios/swift/NitroSubscriptionRenewalInfo.swift +0 -182
- package/nitrogen/generated/ios/swift/Variant_NullType_NitroSubscriptionRenewalInfo.swift +0 -18
- package/nitrogen/generated/shared/c++/NitroSubscriptionRenewalInfo.hpp +0 -106
package/src/index.ts
CHANGED
|
@@ -18,11 +18,6 @@ import {ErrorCode} from './types';
|
|
|
18
18
|
import type {
|
|
19
19
|
AndroidSubscriptionOfferInput,
|
|
20
20
|
DiscountOfferInputIOS,
|
|
21
|
-
ExternalPurchaseCustomLinkNoticeResultIOS,
|
|
22
|
-
ExternalPurchaseCustomLinkNoticeTypeIOS,
|
|
23
|
-
ExternalPurchaseCustomLinkTokenResultIOS,
|
|
24
|
-
ExternalPurchaseCustomLinkTokenTypeIOS,
|
|
25
|
-
ExternalPurchaseNoticeResultIOS,
|
|
26
21
|
FetchProductsResult,
|
|
27
22
|
MutationField,
|
|
28
23
|
Product,
|
|
@@ -73,7 +68,17 @@ import {getVegaIapModule, isVegaOS} from './vega';
|
|
|
73
68
|
// Note: BillingProgramAndroid, ExternalLinkLaunchModeAndroid, and ExternalLinkTypeAndroid
|
|
74
69
|
// are exported from './types' (auto-generated from openiap-gql).
|
|
75
70
|
// Import them here for use in this file's interfaces and functions.
|
|
76
|
-
import type {
|
|
71
|
+
import type {
|
|
72
|
+
BillingChoiceInfoAndroid,
|
|
73
|
+
BillingProgramAndroid,
|
|
74
|
+
BillingProgramInformationDialogParamsAndroid,
|
|
75
|
+
BillingProgramReportingDetailsAndroid,
|
|
76
|
+
BillingResultAndroid,
|
|
77
|
+
DeveloperBillingTypeAndroid,
|
|
78
|
+
GetBillingChoiceInfoParamsAndroid,
|
|
79
|
+
InAppMessageParamsAndroid,
|
|
80
|
+
InAppMessageResultAndroid,
|
|
81
|
+
} from './types';
|
|
77
82
|
|
|
78
83
|
// Export all types
|
|
79
84
|
export type {
|
|
@@ -309,13 +314,23 @@ const purchaseUpdateDuplicateNativeHandler: NitroPurchaseListener = (
|
|
|
309
314
|
const purchaseErrorJsListeners = new Set<(error: PurchaseError) => void>();
|
|
310
315
|
let purchaseErrorNativeAttached = false;
|
|
311
316
|
const purchaseErrorNativeHandler: NitroPurchaseErrorListener = (error) => {
|
|
317
|
+
const normalizedCode =
|
|
318
|
+
error.code === DUPLICATE_PURCHASE_CODE
|
|
319
|
+
? ErrorCode.DuplicatePurchase
|
|
320
|
+
: normalizeErrorCodeFromNative(error.code);
|
|
312
321
|
const normalized: PurchaseError = {
|
|
313
|
-
code:
|
|
314
|
-
error.code === DUPLICATE_PURCHASE_CODE
|
|
315
|
-
? ErrorCode.DuplicatePurchase
|
|
316
|
-
: normalizeErrorCodeFromNative(error.code),
|
|
322
|
+
code: normalizedCode,
|
|
317
323
|
message: error.message,
|
|
318
|
-
|
|
324
|
+
responseCode:
|
|
325
|
+
normalizedCode === ErrorCode.QueryProduct
|
|
326
|
+
? error.responseCode
|
|
327
|
+
: undefined,
|
|
328
|
+
debugMessage: error.debugMessage,
|
|
329
|
+
productId: error.productId,
|
|
330
|
+
productIds: error.productIds,
|
|
331
|
+
productType: error.productType,
|
|
332
|
+
isEmptyProductList: error.isEmptyProductList,
|
|
333
|
+
subResponseCodeAndroid: error.subResponseCodeAndroid,
|
|
319
334
|
};
|
|
320
335
|
for (const listener of purchaseErrorJsListeners) {
|
|
321
336
|
try {
|
|
@@ -621,12 +636,11 @@ export const userChoiceBillingListenerAndroid = (
|
|
|
621
636
|
};
|
|
622
637
|
|
|
623
638
|
/**
|
|
624
|
-
* Add a listener for developer provided billing events (Android 8.3.0+
|
|
625
|
-
* Fires
|
|
639
|
+
* Add a listener for developer provided billing events (Android 8.3.0+).
|
|
640
|
+
* Fires for External Payments and Billing Choice developer billing flows.
|
|
626
641
|
*
|
|
627
|
-
*
|
|
628
|
-
*
|
|
629
|
-
* external payment option directly in the purchase flow. (Japan only)
|
|
642
|
+
* The payload includes selected products and nullable token, link, and original
|
|
643
|
+
* transaction fields. Billing Choice fields require Billing Library 9.1.0+.
|
|
630
644
|
*
|
|
631
645
|
* @param listener - Function to call when user chooses developer billing
|
|
632
646
|
* @returns EventSubscription with remove() method to unsubscribe
|
|
@@ -636,14 +650,10 @@ export const userChoiceBillingListenerAndroid = (
|
|
|
636
650
|
* @example
|
|
637
651
|
* ```typescript
|
|
638
652
|
* const subscription = developerProvidedBillingListenerAndroid((details) => {
|
|
639
|
-
*
|
|
640
|
-
*
|
|
641
|
-
*
|
|
642
|
-
*
|
|
643
|
-
* await processExternalPayment();
|
|
644
|
-
*
|
|
645
|
-
* // Report transaction to Google Play (within 24 hours)
|
|
646
|
-
* await reportToGooglePlay(details.externalTransactionToken);
|
|
653
|
+
* await processExternalPayment(details.products, details.linkUri);
|
|
654
|
+
* if (details.externalTransactionToken) {
|
|
655
|
+
* await reportToGooglePlay(details.externalTransactionToken);
|
|
656
|
+
* }
|
|
647
657
|
* });
|
|
648
658
|
*
|
|
649
659
|
* // Later, remove the listener
|
|
@@ -712,8 +722,8 @@ export const developerProvidedBillingListenerAndroid = (
|
|
|
712
722
|
/**
|
|
713
723
|
* Listen for subscription billing-issue events (cross-platform).
|
|
714
724
|
*
|
|
715
|
-
* Fires when
|
|
716
|
-
* - iOS
|
|
725
|
+
* Fires when a subscription enters a billing-issue state:
|
|
726
|
+
* - iOS / Mac Catalyst 16.4+ and visionOS 1.0+: via StoreKit 2 `Message.Reason.billingIssue`.
|
|
717
727
|
* - Android (Play Billing 8.1+): when `isSuspendedAndroid === true` is observed.
|
|
718
728
|
* - Horizon / iOS 17 / older platforms: never fires.
|
|
719
729
|
*
|
|
@@ -1109,6 +1119,12 @@ export const getStorefrontIOS: QueryField<'getStorefrontIOS'> = async () => {
|
|
|
1109
1119
|
|
|
1110
1120
|
try {
|
|
1111
1121
|
const storefront = await IAP.instance.getStorefrontIOS();
|
|
1122
|
+
if (typeof storefront !== 'string' || storefront.trim().length === 0) {
|
|
1123
|
+
throw createPurchaseError({
|
|
1124
|
+
code: ErrorCode.ServiceError,
|
|
1125
|
+
message: 'Storefront lookup returned no country code.',
|
|
1126
|
+
});
|
|
1127
|
+
}
|
|
1112
1128
|
return storefront;
|
|
1113
1129
|
} catch (error) {
|
|
1114
1130
|
RnIapConsole.error('Failed to get storefront:', error);
|
|
@@ -1123,35 +1139,50 @@ export const getStorefrontIOS: QueryField<'getStorefrontIOS'> = async () => {
|
|
|
1123
1139
|
*/
|
|
1124
1140
|
export const getStorefront: QueryField<'getStorefront'> = async () => {
|
|
1125
1141
|
if (Platform.OS !== 'ios' && !isAndroidStoreRuntime()) {
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1142
|
+
throw createPurchaseError({
|
|
1143
|
+
code: ErrorCode.FeatureNotSupported,
|
|
1144
|
+
message: `Storefront lookup is not supported on ${Platform.OS}.`,
|
|
1145
|
+
});
|
|
1130
1146
|
}
|
|
1131
1147
|
|
|
1132
1148
|
const hasUnifiedMethod = typeof IAP.instance.getStorefront === 'function';
|
|
1133
1149
|
|
|
1134
|
-
if (!hasUnifiedMethod && Platform.OS
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
'[getStorefront] Native getStorefront is not available on this build.',
|
|
1141
|
-
);
|
|
1142
|
-
return '';
|
|
1150
|
+
if (!hasUnifiedMethod && Platform.OS !== 'ios') {
|
|
1151
|
+
throw createPurchaseError({
|
|
1152
|
+
code: ErrorCode.FeatureNotSupported,
|
|
1153
|
+
message: 'Native getStorefront is not available on this build.',
|
|
1154
|
+
platform: 'android',
|
|
1155
|
+
});
|
|
1143
1156
|
}
|
|
1144
1157
|
|
|
1158
|
+
let storefront: string | null | undefined;
|
|
1145
1159
|
try {
|
|
1146
|
-
|
|
1147
|
-
|
|
1160
|
+
storefront = hasUnifiedMethod
|
|
1161
|
+
? await IAP.instance.getStorefront()
|
|
1162
|
+
: await getStorefrontIOS();
|
|
1148
1163
|
} catch (error) {
|
|
1149
|
-
|
|
1164
|
+
const parsedError = parseErrorAndLogIfNeeded(
|
|
1150
1165
|
`[getStorefront] Failed to get storefront on ${Platform.OS}:`,
|
|
1151
1166
|
error,
|
|
1152
1167
|
);
|
|
1153
|
-
throw
|
|
1168
|
+
throw createPurchaseError({
|
|
1169
|
+
code: parsedError.code,
|
|
1170
|
+
message: parsedError.message,
|
|
1171
|
+
responseCode: parsedError.responseCode,
|
|
1172
|
+
debugMessage: parsedError.debugMessage,
|
|
1173
|
+
platform: Platform.OS === 'ios' ? 'ios' : 'android',
|
|
1174
|
+
});
|
|
1154
1175
|
}
|
|
1176
|
+
|
|
1177
|
+
if (typeof storefront !== 'string' || storefront.trim().length === 0) {
|
|
1178
|
+
throw createPurchaseError({
|
|
1179
|
+
code: ErrorCode.ServiceError,
|
|
1180
|
+
message: 'Storefront lookup returned no country code.',
|
|
1181
|
+
platform: Platform.OS === 'ios' ? 'ios' : 'android',
|
|
1182
|
+
});
|
|
1183
|
+
}
|
|
1184
|
+
|
|
1185
|
+
return storefront;
|
|
1155
1186
|
};
|
|
1156
1187
|
|
|
1157
1188
|
/**
|
|
@@ -1621,6 +1652,10 @@ export const getTransactionJwsIOS: QueryField<'getTransactionJwsIOS'> = async (
|
|
|
1621
1652
|
* ```ts
|
|
1622
1653
|
* await initConnection();
|
|
1623
1654
|
* await initConnection({ enableBillingProgramAndroid: 'external-offer' });
|
|
1655
|
+
* await initConnection({
|
|
1656
|
+
* enableBillingProgramAndroid: 'billing-choice',
|
|
1657
|
+
* billingChoiceScreenTypeAndroid: 'developer-rendered',
|
|
1658
|
+
* });
|
|
1624
1659
|
* ```
|
|
1625
1660
|
*
|
|
1626
1661
|
* @remarks When using `useIAP()`, connection is auto-managed on mount/unmount —
|
|
@@ -1843,8 +1878,12 @@ export const requestPurchase: MutationField<'requestPurchase'> = async (
|
|
|
1843
1878
|
if (androidRequest.isOfferPersonalized != null) {
|
|
1844
1879
|
androidPayload.isOfferPersonalized = androidRequest.isOfferPersonalized;
|
|
1845
1880
|
}
|
|
1881
|
+
if (androidRequest.developerBillingOption) {
|
|
1882
|
+
androidPayload.developerBillingOption =
|
|
1883
|
+
androidRequest.developerBillingOption;
|
|
1884
|
+
}
|
|
1846
1885
|
|
|
1847
|
-
// One-time purchase offerToken (Android
|
|
1886
|
+
// One-time purchase offerToken (Android 8.0+)
|
|
1848
1887
|
if (!isSubs) {
|
|
1849
1888
|
const purchaseRequest = androidRequest as RequestPurchaseAndroidProps;
|
|
1850
1889
|
if (purchaseRequest.offerToken) {
|
|
@@ -1857,6 +1896,10 @@ export const requestPurchase: MutationField<'requestPurchase'> = async (
|
|
|
1857
1896
|
if (subsRequest.purchaseToken) {
|
|
1858
1897
|
androidPayload.purchaseToken = subsRequest.purchaseToken;
|
|
1859
1898
|
}
|
|
1899
|
+
if (subsRequest.originalExternalTransactionId) {
|
|
1900
|
+
androidPayload.originalExternalTransactionId =
|
|
1901
|
+
subsRequest.originalExternalTransactionId;
|
|
1902
|
+
}
|
|
1860
1903
|
if (subsRequest.replacementMode != null) {
|
|
1861
1904
|
androidPayload.replacementMode = subsRequest.replacementMode;
|
|
1862
1905
|
}
|
|
@@ -2394,41 +2437,30 @@ export const presentCodeRedemptionSheetIOS: MutationField<
|
|
|
2394
2437
|
*
|
|
2395
2438
|
* @see {@link https://openiap.dev/docs/apis/ios/request-purchase-on-promoted-product-ios}
|
|
2396
2439
|
*/
|
|
2397
|
-
export const requestPurchaseOnPromotedProductIOS
|
|
2398
|
-
|
|
2399
|
-
|
|
2400
|
-
|
|
2401
|
-
|
|
2402
|
-
|
|
2403
|
-
|
|
2404
|
-
|
|
2405
|
-
try {
|
|
2406
|
-
await IAP.instance.buyPromotedProductIOS();
|
|
2407
|
-
const pending = await IAP.instance.getPendingTransactionsIOS();
|
|
2408
|
-
const latest = pending.find((purchase) => purchase != null);
|
|
2409
|
-
if (!latest) {
|
|
2410
|
-
throw new Error('No promoted purchase available after request');
|
|
2411
|
-
}
|
|
2412
|
-
|
|
2413
|
-
const converted = convertNitroPurchaseToPurchase(latest);
|
|
2414
|
-
if (converted.platform !== 'ios') {
|
|
2415
|
-
throw new Error('Promoted purchase result not available for iOS');
|
|
2416
|
-
}
|
|
2440
|
+
export const requestPurchaseOnPromotedProductIOS: MutationField<
|
|
2441
|
+
'requestPurchaseOnPromotedProductIOS'
|
|
2442
|
+
> = async () => {
|
|
2443
|
+
if (Platform.OS !== 'ios') {
|
|
2444
|
+
throw new Error(
|
|
2445
|
+
'requestPurchaseOnPromotedProductIOS is only available on iOS',
|
|
2446
|
+
);
|
|
2447
|
+
}
|
|
2417
2448
|
|
|
2418
|
-
|
|
2419
|
-
|
|
2420
|
-
|
|
2421
|
-
|
|
2422
|
-
|
|
2423
|
-
|
|
2424
|
-
|
|
2425
|
-
|
|
2426
|
-
|
|
2427
|
-
|
|
2428
|
-
|
|
2429
|
-
|
|
2430
|
-
}
|
|
2431
|
-
}
|
|
2449
|
+
try {
|
|
2450
|
+
return await IAP.instance.buyPromotedProductIOS();
|
|
2451
|
+
} catch (error) {
|
|
2452
|
+
const parsedError = parseErrorAndLogIfNeeded(
|
|
2453
|
+
'[requestPurchaseOnPromotedProductIOS] Failed:',
|
|
2454
|
+
error,
|
|
2455
|
+
);
|
|
2456
|
+
throw createPurchaseError({
|
|
2457
|
+
code: parsedError.code,
|
|
2458
|
+
message: parsedError.message,
|
|
2459
|
+
responseCode: parsedError.responseCode,
|
|
2460
|
+
debugMessage: parsedError.debugMessage,
|
|
2461
|
+
});
|
|
2462
|
+
}
|
|
2463
|
+
};
|
|
2432
2464
|
|
|
2433
2465
|
/**
|
|
2434
2466
|
* Clear unfinished transactions on iOS
|
|
@@ -2925,7 +2957,9 @@ export const isBillingProgramAvailableAndroid: MutationField<
|
|
|
2925
2957
|
const result = await IAP.instance.isBillingProgramAvailableAndroid(program);
|
|
2926
2958
|
return {
|
|
2927
2959
|
billingProgram: result.billingProgram as unknown as BillingProgramAndroid,
|
|
2960
|
+
choiceScreenType: result.choiceScreenType,
|
|
2928
2961
|
isAvailable: result.isAvailable,
|
|
2962
|
+
isExternalLinkAvailable: result.isExternalLinkAvailable,
|
|
2929
2963
|
};
|
|
2930
2964
|
} catch (error) {
|
|
2931
2965
|
RnIapConsole.error('Failed to check billing program availability:', error);
|
|
@@ -2933,6 +2967,37 @@ export const isBillingProgramAvailableAndroid: MutationField<
|
|
|
2933
2967
|
}
|
|
2934
2968
|
};
|
|
2935
2969
|
|
|
2970
|
+
/**
|
|
2971
|
+
* Fetch Play Billing assets and loyalty text for developer-rendered Billing Choice screens (Android only).
|
|
2972
|
+
*
|
|
2973
|
+
* @param params - Billing Choice info request parameters
|
|
2974
|
+
* @returns Promise with Play-hosted image URL and optional loyalty information
|
|
2975
|
+
* @platform Android
|
|
2976
|
+
* @since Google Play Billing Library 9.1.0+
|
|
2977
|
+
*
|
|
2978
|
+
* @see {@link https://openiap.dev/docs/apis/android/get-billing-choice-info-android}
|
|
2979
|
+
*/
|
|
2980
|
+
export const getBillingChoiceInfoAndroid: QueryField<
|
|
2981
|
+
'getBillingChoiceInfoAndroid'
|
|
2982
|
+
> = async (
|
|
2983
|
+
params: GetBillingChoiceInfoParamsAndroid = {},
|
|
2984
|
+
): Promise<BillingChoiceInfoAndroid> => {
|
|
2985
|
+
if (Platform.OS !== 'android') {
|
|
2986
|
+
throw new Error('Billing Choice API is only supported on Android');
|
|
2987
|
+
}
|
|
2988
|
+
try {
|
|
2989
|
+
return await IAP.instance.getBillingChoiceInfoAndroid({
|
|
2990
|
+
billingProgram: params.billingProgram ?? 'billing-choice',
|
|
2991
|
+
playBillingChoiceImageLayout:
|
|
2992
|
+
params.playBillingChoiceImageLayout ?? 'rectangular-four-by-one',
|
|
2993
|
+
userLocale: params.userLocale ?? null,
|
|
2994
|
+
});
|
|
2995
|
+
} catch (error) {
|
|
2996
|
+
RnIapConsole.error('Failed to get Billing Choice info:', error);
|
|
2997
|
+
throw error;
|
|
2998
|
+
}
|
|
2999
|
+
};
|
|
3000
|
+
|
|
2936
3001
|
/**
|
|
2937
3002
|
* Create billing program reporting details for external transactions (Android only).
|
|
2938
3003
|
* Used to get the external transaction token needed for reporting to Google.
|
|
@@ -2954,15 +3019,34 @@ export const isBillingProgramAvailableAndroid: MutationField<
|
|
|
2954
3019
|
*
|
|
2955
3020
|
* @see {@link https://openiap.dev/docs/apis/android/create-billing-program-reporting-details-android}
|
|
2956
3021
|
*/
|
|
2957
|
-
export const createBillingProgramReportingDetailsAndroid: MutationField<
|
|
2958
|
-
|
|
2959
|
-
|
|
3022
|
+
export const createBillingProgramReportingDetailsAndroid: MutationField<'createBillingProgramReportingDetailsAndroid'> &
|
|
3023
|
+
((
|
|
3024
|
+
program: BillingProgramAndroid,
|
|
3025
|
+
developerBillingType?: DeveloperBillingTypeAndroid | null,
|
|
3026
|
+
) => Promise<BillingProgramReportingDetailsAndroid>) = async (
|
|
3027
|
+
programOrArgs:
|
|
3028
|
+
| BillingProgramAndroid
|
|
3029
|
+
| {
|
|
3030
|
+
program: BillingProgramAndroid;
|
|
3031
|
+
developerBillingType?: DeveloperBillingTypeAndroid | null;
|
|
3032
|
+
},
|
|
3033
|
+
developerBillingType?: DeveloperBillingTypeAndroid | null,
|
|
3034
|
+
): Promise<BillingProgramReportingDetailsAndroid> => {
|
|
2960
3035
|
if (Platform.OS !== 'android') {
|
|
2961
3036
|
throw new Error('Billing Programs API is only supported on Android');
|
|
2962
3037
|
}
|
|
2963
3038
|
try {
|
|
3039
|
+
const program =
|
|
3040
|
+
typeof programOrArgs === 'string' ? programOrArgs : programOrArgs.program;
|
|
3041
|
+
const resolvedDeveloperBillingType =
|
|
3042
|
+
typeof programOrArgs === 'string'
|
|
3043
|
+
? developerBillingType
|
|
3044
|
+
: (programOrArgs.developerBillingType ?? developerBillingType);
|
|
2964
3045
|
const result =
|
|
2965
|
-
await IAP.instance.createBillingProgramReportingDetailsAndroid(
|
|
3046
|
+
await IAP.instance.createBillingProgramReportingDetailsAndroid(
|
|
3047
|
+
program,
|
|
3048
|
+
resolvedDeveloperBillingType ?? null,
|
|
3049
|
+
);
|
|
2966
3050
|
return {
|
|
2967
3051
|
billingProgram: result.billingProgram as unknown as BillingProgramAndroid,
|
|
2968
3052
|
externalTransactionToken: result.externalTransactionToken,
|
|
@@ -2977,7 +3061,67 @@ export const createBillingProgramReportingDetailsAndroid: MutationField<
|
|
|
2977
3061
|
};
|
|
2978
3062
|
|
|
2979
3063
|
/**
|
|
2980
|
-
*
|
|
3064
|
+
* Show Google's mandatory information dialog before a developer-rendered,
|
|
3065
|
+
* in-app Billing Choice screen (Android only).
|
|
3066
|
+
*
|
|
3067
|
+
* @param params - Dialog parameters with the external transaction token
|
|
3068
|
+
* @returns Promise with BillingResult
|
|
3069
|
+
* @platform Android
|
|
3070
|
+
* @since Google Play Billing Library 9.1.0+
|
|
3071
|
+
*
|
|
3072
|
+
* @see {@link https://openiap.dev/docs/apis/android/show-billing-program-information-dialog-android}
|
|
3073
|
+
*/
|
|
3074
|
+
export const showBillingProgramInformationDialogAndroid: MutationField<
|
|
3075
|
+
'showBillingProgramInformationDialogAndroid'
|
|
3076
|
+
> = async (
|
|
3077
|
+
params: BillingProgramInformationDialogParamsAndroid,
|
|
3078
|
+
): Promise<BillingResultAndroid> => {
|
|
3079
|
+
if (Platform.OS !== 'android') {
|
|
3080
|
+
throw new Error('Billing Choice API is only supported on Android');
|
|
3081
|
+
}
|
|
3082
|
+
try {
|
|
3083
|
+
return await IAP.instance.showBillingProgramInformationDialogAndroid({
|
|
3084
|
+
billingProgram: params.billingProgram ?? 'billing-choice',
|
|
3085
|
+
externalTransactionToken: params.externalTransactionToken,
|
|
3086
|
+
});
|
|
3087
|
+
} catch (error) {
|
|
3088
|
+
RnIapConsole.error(
|
|
3089
|
+
'Failed to show Billing Choice information dialog:',
|
|
3090
|
+
error,
|
|
3091
|
+
);
|
|
3092
|
+
throw error;
|
|
3093
|
+
}
|
|
3094
|
+
};
|
|
3095
|
+
|
|
3096
|
+
/**
|
|
3097
|
+
* Show Play Billing in-app messages, such as transactional subscription updates (Android only).
|
|
3098
|
+
*
|
|
3099
|
+
* @param params - Optional in-app message categories
|
|
3100
|
+
* @returns Promise with in-app message result
|
|
3101
|
+
* @platform Android
|
|
3102
|
+
* @since Google Play Billing Library 4.1.0+
|
|
3103
|
+
*
|
|
3104
|
+
* @see {@link https://openiap.dev/docs/apis/android/show-in-app-messages-android}
|
|
3105
|
+
*/
|
|
3106
|
+
export const showInAppMessagesAndroid: MutationField<
|
|
3107
|
+
'showInAppMessagesAndroid'
|
|
3108
|
+
> = async (
|
|
3109
|
+
params?: InAppMessageParamsAndroid | null,
|
|
3110
|
+
): Promise<InAppMessageResultAndroid> => {
|
|
3111
|
+
if (Platform.OS !== 'android') {
|
|
3112
|
+
throw new Error('In-app messages are only supported on Android');
|
|
3113
|
+
}
|
|
3114
|
+
try {
|
|
3115
|
+
return await IAP.instance.showInAppMessagesAndroid(params ?? null);
|
|
3116
|
+
} catch (error) {
|
|
3117
|
+
RnIapConsole.error('Failed to show in-app messages:', error);
|
|
3118
|
+
throw error;
|
|
3119
|
+
}
|
|
3120
|
+
};
|
|
3121
|
+
|
|
3122
|
+
/**
|
|
3123
|
+
* Launch an external link for Billing Programs (Android only). Developer-rendered
|
|
3124
|
+
* Billing Choice external-link flows require 9.1.0+ and a pre-generated token.
|
|
2981
3125
|
*
|
|
2982
3126
|
* @param params - Parameters for launching the external link
|
|
2983
3127
|
* @returns Promise<boolean> - true if user accepted, false otherwise
|
|
@@ -2987,7 +3131,8 @@ export const createBillingProgramReportingDetailsAndroid: MutationField<
|
|
|
2987
3131
|
* @example
|
|
2988
3132
|
* ```typescript
|
|
2989
3133
|
* const success = await launchExternalLinkAndroid({
|
|
2990
|
-
* billingProgram: '
|
|
3134
|
+
* billingProgram: 'billing-choice',
|
|
3135
|
+
* externalTransactionToken: reportingDetails.externalTransactionToken,
|
|
2991
3136
|
* launchMode: 'launch-in-external-browser-or-app',
|
|
2992
3137
|
* linkType: 'link-to-digital-content-offer',
|
|
2993
3138
|
* linkUri: 'https://your-website.com/purchase'
|
|
@@ -3008,6 +3153,7 @@ export const launchExternalLinkAndroid: MutationField<
|
|
|
3008
3153
|
try {
|
|
3009
3154
|
return await IAP.instance.launchExternalLinkAndroid({
|
|
3010
3155
|
billingProgram: params.billingProgram,
|
|
3156
|
+
externalTransactionToken: params.externalTransactionToken,
|
|
3011
3157
|
launchMode: params.launchMode,
|
|
3012
3158
|
linkType: params.linkType,
|
|
3013
3159
|
linkUri: params.linkUri,
|
|
@@ -3078,21 +3224,22 @@ export const canPresentExternalPurchaseNoticeIOS: QueryField<
|
|
|
3078
3224
|
*
|
|
3079
3225
|
* @see {@link https://openiap.dev/docs/apis/ios/present-external-purchase-notice-sheet-ios}
|
|
3080
3226
|
*/
|
|
3081
|
-
export const presentExternalPurchaseNoticeSheetIOS
|
|
3082
|
-
|
|
3083
|
-
|
|
3084
|
-
|
|
3085
|
-
|
|
3086
|
-
|
|
3087
|
-
|
|
3088
|
-
|
|
3089
|
-
|
|
3090
|
-
|
|
3091
|
-
|
|
3092
|
-
|
|
3093
|
-
|
|
3094
|
-
|
|
3095
|
-
}
|
|
3227
|
+
export const presentExternalPurchaseNoticeSheetIOS: MutationField<
|
|
3228
|
+
'presentExternalPurchaseNoticeSheetIOS'
|
|
3229
|
+
> = async () => {
|
|
3230
|
+
if (Platform.OS !== 'ios') {
|
|
3231
|
+
throw new Error('External purchase is only supported on iOS');
|
|
3232
|
+
}
|
|
3233
|
+
try {
|
|
3234
|
+
return await IAP.instance.presentExternalPurchaseNoticeSheetIOS();
|
|
3235
|
+
} catch (error) {
|
|
3236
|
+
RnIapConsole.error(
|
|
3237
|
+
'Failed to present external purchase notice sheet:',
|
|
3238
|
+
error,
|
|
3239
|
+
);
|
|
3240
|
+
throw error;
|
|
3241
|
+
}
|
|
3242
|
+
};
|
|
3096
3243
|
|
|
3097
3244
|
/**
|
|
3098
3245
|
* Present an external purchase link to redirect users to your website (iOS 16.0+).
|
|
@@ -3147,21 +3294,22 @@ export const presentExternalPurchaseLinkIOS: MutationField<
|
|
|
3147
3294
|
*
|
|
3148
3295
|
* @see {@link https://openiap.dev/docs/apis/ios/is-eligible-for-external-purchase-custom-link-ios}
|
|
3149
3296
|
*/
|
|
3150
|
-
export const isEligibleForExternalPurchaseCustomLinkIOS
|
|
3151
|
-
|
|
3152
|
-
|
|
3153
|
-
|
|
3154
|
-
|
|
3155
|
-
|
|
3156
|
-
|
|
3157
|
-
|
|
3158
|
-
|
|
3159
|
-
|
|
3160
|
-
|
|
3161
|
-
|
|
3162
|
-
|
|
3163
|
-
|
|
3164
|
-
}
|
|
3297
|
+
export const isEligibleForExternalPurchaseCustomLinkIOS: QueryField<
|
|
3298
|
+
'isEligibleForExternalPurchaseCustomLinkIOS'
|
|
3299
|
+
> = async () => {
|
|
3300
|
+
if (Platform.OS !== 'ios') {
|
|
3301
|
+
return false;
|
|
3302
|
+
}
|
|
3303
|
+
try {
|
|
3304
|
+
return await IAP.instance.isEligibleForExternalPurchaseCustomLinkIOS();
|
|
3305
|
+
} catch (error) {
|
|
3306
|
+
RnIapConsole.error(
|
|
3307
|
+
'Failed to check external purchase custom link eligibility:',
|
|
3308
|
+
error,
|
|
3309
|
+
);
|
|
3310
|
+
return false;
|
|
3311
|
+
}
|
|
3312
|
+
};
|
|
3165
3313
|
|
|
3166
3314
|
/**
|
|
3167
3315
|
* Get external purchase token for reporting to Apple (iOS 18.1+).
|
|
@@ -3184,9 +3332,9 @@ export const isEligibleForExternalPurchaseCustomLinkIOS =
|
|
|
3184
3332
|
*
|
|
3185
3333
|
* @see {@link https://openiap.dev/docs/apis/ios/get-external-purchase-custom-link-token-ios}
|
|
3186
3334
|
*/
|
|
3187
|
-
export const getExternalPurchaseCustomLinkTokenIOS
|
|
3188
|
-
|
|
3189
|
-
)
|
|
3335
|
+
export const getExternalPurchaseCustomLinkTokenIOS: QueryField<
|
|
3336
|
+
'getExternalPurchaseCustomLinkTokenIOS'
|
|
3337
|
+
> = async (tokenType) => {
|
|
3190
3338
|
if (Platform.OS !== 'ios') {
|
|
3191
3339
|
throw new Error(
|
|
3192
3340
|
'External purchase custom link is only supported on iOS 18.1+',
|
|
@@ -3224,9 +3372,9 @@ export const getExternalPurchaseCustomLinkTokenIOS = async (
|
|
|
3224
3372
|
*
|
|
3225
3373
|
* @see {@link https://openiap.dev/docs/apis/ios/show-external-purchase-custom-link-notice-ios}
|
|
3226
3374
|
*/
|
|
3227
|
-
export const showExternalPurchaseCustomLinkNoticeIOS
|
|
3228
|
-
|
|
3229
|
-
)
|
|
3375
|
+
export const showExternalPurchaseCustomLinkNoticeIOS: MutationField<
|
|
3376
|
+
'showExternalPurchaseCustomLinkNoticeIOS'
|
|
3377
|
+
> = async (noticeType) => {
|
|
3230
3378
|
if (Platform.OS !== 'ios') {
|
|
3231
3379
|
throw new Error(
|
|
3232
3380
|
'External purchase custom link is only supported on iOS 18.1+',
|