react-native-iap 15.4.0 → 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.
Files changed (422) hide show
  1. package/android/src/main/java/com/margelo/nitro/iap/ConnectionLifecycleQueue.kt +113 -0
  2. package/android/src/main/java/com/margelo/nitro/iap/HybridRnIap.kt +221 -87
  3. package/android/src/main/java/com/margelo/nitro/iap/RnIapLog.kt +23 -1
  4. package/ios/HybridRnIap.swift +211 -139
  5. package/ios/RnIapHelper.swift +150 -26
  6. package/ios/RnIapLog.swift +24 -1
  7. package/lib/module/hooks/useIAP.js +1 -1
  8. package/lib/module/hooks/useIAP.js.map +1 -1
  9. package/lib/module/index.js +47 -28
  10. package/lib/module/index.js.map +1 -1
  11. package/lib/module/types.js +11 -9
  12. package/lib/module/types.js.map +1 -1
  13. package/lib/module/utils/error.js +7 -3
  14. package/lib/module/utils/error.js.map +1 -1
  15. package/lib/module/utils/errorMapping.js +2 -0
  16. package/lib/module/utils/errorMapping.js.map +1 -1
  17. package/lib/module/utils/type-bridge.js +28 -19
  18. package/lib/module/utils/type-bridge.js.map +1 -1
  19. package/lib/module/vega-adapter.js +31 -6
  20. package/lib/module/vega-adapter.js.map +1 -1
  21. package/lib/typescript/src/hooks/useIAP.d.ts +3 -3
  22. package/lib/typescript/src/hooks/useIAP.d.ts.map +1 -1
  23. package/lib/typescript/src/index.d.ts.map +1 -1
  24. package/lib/typescript/src/specs/RnIap.nitro.d.ts +21 -19
  25. package/lib/typescript/src/specs/RnIap.nitro.d.ts.map +1 -1
  26. package/lib/typescript/src/types.d.ts +58 -26
  27. package/lib/typescript/src/types.d.ts.map +1 -1
  28. package/lib/typescript/src/utils/error.d.ts.map +1 -1
  29. package/lib/typescript/src/utils/errorMapping.d.ts +3 -1
  30. package/lib/typescript/src/utils/errorMapping.d.ts.map +1 -1
  31. package/lib/typescript/src/utils/type-bridge.d.ts.map +1 -1
  32. package/lib/typescript/src/vega-adapter.d.ts.map +1 -1
  33. package/nitro.json +8 -2
  34. package/nitrogen/generated/android/NitroIap+autolinking.cmake +1 -1
  35. package/nitrogen/generated/android/NitroIapOnLoad.cpp +2 -2
  36. package/nitrogen/generated/android/c++/JAdvancedCommerceInfoIOS.hpp +10 -10
  37. package/nitrogen/generated/android/c++/JAdvancedCommerceItemDetailsIOS.hpp +2 -2
  38. package/nitrogen/generated/android/c++/JAdvancedCommerceItemIOS.hpp +2 -2
  39. package/nitrogen/generated/android/c++/JAdvancedCommerceRefundIOS.hpp +2 -2
  40. package/nitrogen/generated/android/c++/JAlternativeBillingModeAndroid.hpp +2 -2
  41. package/nitrogen/generated/android/c++/JAndroidSubscriptionOfferInput.hpp +2 -2
  42. package/nitrogen/generated/android/c++/JBillingChoiceImageLayoutAndroid.hpp +2 -2
  43. package/nitrogen/generated/android/c++/JBillingChoiceScreenTypeAndroid.hpp +2 -2
  44. package/nitrogen/generated/android/c++/JBillingProgramAndroid.hpp +2 -2
  45. package/nitrogen/generated/android/c++/JDeveloperBillingLaunchModeAndroid.hpp +2 -2
  46. package/nitrogen/generated/android/c++/JDeveloperBillingOptionParamsAndroid.hpp +2 -2
  47. package/nitrogen/generated/android/c++/JDeveloperBillingTypeAndroid.hpp +2 -2
  48. package/nitrogen/generated/android/c++/JDeveloperProvidedBillingDetailsAndroid.hpp +10 -10
  49. package/nitrogen/generated/android/c++/JDeveloperProvidedBillingProductAndroid.hpp +2 -2
  50. package/nitrogen/generated/android/c++/JExternalLinkLaunchModeAndroid.hpp +2 -2
  51. package/nitrogen/generated/android/c++/JExternalLinkTypeAndroid.hpp +2 -2
  52. package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkNoticeResultIOS.hpp +2 -2
  53. package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkNoticeTypeIOS.hpp +2 -2
  54. package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkTokenResultIOS.hpp +2 -2
  55. package/nitrogen/generated/android/c++/JExternalPurchaseCustomLinkTokenTypeIOS.hpp +2 -2
  56. package/nitrogen/generated/android/c++/JExternalPurchaseLinkResultIOS.hpp +2 -2
  57. package/nitrogen/generated/android/c++/JExternalPurchaseNoticeAction.hpp +2 -2
  58. package/nitrogen/generated/android/c++/JExternalPurchaseNoticeResultIOS.hpp +2 -2
  59. package/nitrogen/generated/android/c++/JFunc_void_DeveloperProvidedBillingDetailsAndroid.hpp +2 -2
  60. package/nitrogen/generated/android/c++/JFunc_void_NitroProduct.hpp +2 -2
  61. package/nitrogen/generated/android/c++/JFunc_void_NitroPurchase.hpp +26 -2
  62. package/nitrogen/generated/android/c++/JFunc_void_NitroPurchaseResult.hpp +5 -2
  63. package/nitrogen/generated/android/c++/JFunc_void_UserChoiceBillingDetails.hpp +12 -2
  64. package/nitrogen/generated/android/c++/JHybridRnIapSpec.cpp +51 -54
  65. package/nitrogen/generated/android/c++/JHybridRnIapSpec.hpp +3 -3
  66. package/nitrogen/generated/android/c++/JIapPlatform.hpp +2 -2
  67. package/nitrogen/generated/android/c++/JIapStore.hpp +2 -2
  68. package/nitrogen/generated/android/c++/JIapkitPurchaseState.hpp +2 -2
  69. package/nitrogen/generated/android/c++/JInAppMessageCategoryAndroid.hpp +2 -2
  70. package/nitrogen/generated/android/c++/JInAppMessageResponseCodeAndroid.hpp +2 -2
  71. package/nitrogen/generated/android/c++/JInitConnectionConfig.hpp +2 -2
  72. package/nitrogen/generated/android/c++/JNitroActiveSubscription.hpp +7 -2
  73. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesAndroidOptions.hpp +2 -2
  74. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesAndroidType.hpp +2 -2
  75. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesIosOptions.hpp +2 -2
  76. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesOptions.hpp +2 -2
  77. package/nitrogen/generated/android/c++/JNitroBillingChoiceInfoAndroid.hpp +2 -2
  78. package/nitrogen/generated/android/c++/JNitroBillingProgramAvailabilityResultAndroid.hpp +2 -2
  79. package/nitrogen/generated/android/c++/JNitroBillingProgramInformationDialogParamsAndroid.hpp +2 -2
  80. package/nitrogen/generated/android/c++/JNitroBillingProgramReportingDetailsAndroid.hpp +2 -2
  81. package/nitrogen/generated/android/c++/JNitroBillingResultAndroid.hpp +2 -2
  82. package/nitrogen/generated/android/c++/JNitroDeepLinkOptionsAndroid.hpp +2 -2
  83. package/nitrogen/generated/android/c++/JNitroDiscountAmountAndroid.hpp +2 -2
  84. package/nitrogen/generated/android/c++/JNitroDiscountDisplayInfoAndroid.hpp +2 -2
  85. package/nitrogen/generated/android/c++/JNitroFinishTransactionAndroidParams.hpp +2 -2
  86. package/nitrogen/generated/android/c++/JNitroFinishTransactionIosParams.hpp +2 -2
  87. package/nitrogen/generated/android/c++/JNitroFinishTransactionParams.hpp +2 -2
  88. package/nitrogen/generated/android/c++/JNitroGetBillingChoiceInfoParamsAndroid.hpp +2 -2
  89. package/nitrogen/generated/android/c++/JNitroInAppMessageParamsAndroid.hpp +2 -2
  90. package/nitrogen/generated/android/c++/JNitroInAppMessageResultAndroid.hpp +2 -2
  91. package/nitrogen/generated/android/c++/JNitroLaunchExternalLinkParamsAndroid.hpp +2 -2
  92. package/nitrogen/generated/android/c++/JNitroLimitedQuantityInfoAndroid.hpp +2 -2
  93. package/nitrogen/generated/android/c++/JNitroOneTimePurchaseOfferDetail.hpp +10 -10
  94. package/nitrogen/generated/android/c++/JNitroPreorderDetailsAndroid.hpp +2 -2
  95. package/nitrogen/generated/android/c++/JNitroProduct.hpp +2 -2
  96. package/nitrogen/generated/android/c++/JNitroPurchase.hpp +53 -5
  97. package/nitrogen/generated/android/c++/JNitroPurchaseRequest.hpp +2 -2
  98. package/nitrogen/generated/android/c++/JNitroPurchaseResult.hpp +46 -5
  99. package/nitrogen/generated/android/c++/JNitroReceiptValidationAppleOptions.hpp +2 -2
  100. package/nitrogen/generated/android/c++/JNitroReceiptValidationGoogleOptions.hpp +2 -2
  101. package/nitrogen/generated/android/c++/JNitroReceiptValidationHorizonOptions.hpp +2 -2
  102. package/nitrogen/generated/android/c++/JNitroReceiptValidationParams.hpp +2 -2
  103. package/nitrogen/generated/android/c++/JNitroReceiptValidationResultAndroid.hpp +2 -2
  104. package/nitrogen/generated/android/c++/JNitroReceiptValidationResultIOS.hpp +26 -2
  105. package/nitrogen/generated/android/c++/JNitroRenewalInfoIOS.hpp +16 -3
  106. package/nitrogen/generated/android/c++/JNitroRentalDetailsAndroid.hpp +2 -2
  107. package/nitrogen/generated/android/c++/JNitroRequestPurchaseAndroid.hpp +10 -10
  108. package/nitrogen/generated/android/c++/JNitroRequestPurchaseIos.hpp +2 -2
  109. package/nitrogen/generated/android/c++/JNitroSubscriptionStatus.hpp +15 -9
  110. package/nitrogen/generated/android/c++/JNitroValidTimeWindowAndroid.hpp +2 -2
  111. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitAmazonProps.hpp +2 -2
  112. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitAppleProps.hpp +2 -2
  113. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitGoogleProps.hpp +2 -2
  114. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitProps.hpp +2 -2
  115. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithIapkitResult.hpp +2 -2
  116. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithProviderError.hpp +2 -2
  117. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithProviderProps.hpp +2 -2
  118. package/nitrogen/generated/android/c++/JNitroVerifyPurchaseWithProviderResult.hpp +2 -2
  119. package/nitrogen/generated/android/c++/JPaymentModeIOS.hpp +2 -2
  120. package/nitrogen/generated/android/c++/JPendingPurchaseUpdateAndroid.hpp +10 -10
  121. package/nitrogen/generated/android/c++/JProductType.hpp +2 -2
  122. package/nitrogen/generated/android/c++/JPromotionalOfferJwsInputIOS.hpp +2 -2
  123. package/nitrogen/generated/android/c++/JPurchase.hpp +3 -3
  124. package/nitrogen/generated/android/c++/JPurchaseAndroid.hpp +2 -2
  125. package/nitrogen/generated/android/c++/JPurchaseIOS.hpp +2 -2
  126. package/nitrogen/generated/android/c++/JPurchaseOfferIOS.hpp +2 -2
  127. package/nitrogen/generated/android/c++/JPurchaseState.hpp +2 -2
  128. package/nitrogen/generated/android/c++/JPurchaseUpdatedListenerOptions.hpp +2 -2
  129. package/nitrogen/generated/android/c++/JPurchaseVerificationProvider.hpp +2 -2
  130. package/nitrogen/generated/android/c++/JRenewalCommitmentInfoIOS.hpp +2 -2
  131. package/nitrogen/generated/android/c++/JRenewalInfoIOS.hpp +2 -2
  132. package/nitrogen/generated/android/c++/JRequestPurchaseResult.cpp +4 -4
  133. package/nitrogen/generated/android/c++/JRequestPurchaseResult.hpp +9 -9
  134. package/nitrogen/generated/android/c++/JSubResponseCodeAndroid.hpp +2 -2
  135. package/nitrogen/generated/android/c++/JSubscriptionBillingPlanTypeIOS.hpp +2 -2
  136. package/nitrogen/generated/android/c++/JSubscriptionProductReplacementParamsAndroid.hpp +2 -2
  137. package/nitrogen/generated/android/c++/JSubscriptionReplacementModeAndroid.hpp +2 -2
  138. package/nitrogen/generated/android/c++/JTransactionCommitmentInfoIOS.hpp +2 -2
  139. package/nitrogen/generated/android/c++/JUserChoiceBillingDetails.hpp +29 -11
  140. package/nitrogen/generated/android/c++/JVariant_Boolean_NitroPurchaseResult.hpp +6 -3
  141. package/nitrogen/generated/android/c++/JVariant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.hpp +27 -3
  142. package/nitrogen/generated/android/c++/JVariant_NullType_AdvancedCommerceInfoIOS.hpp +3 -3
  143. package/nitrogen/generated/android/c++/JVariant_NullType_AdvancedCommerceItemDetailsIOS.hpp +3 -3
  144. package/nitrogen/generated/android/c++/JVariant_NullType_Array_AdvancedCommerceRefundIOS_.cpp +4 -4
  145. package/nitrogen/generated/android/c++/JVariant_NullType_Array_AdvancedCommerceRefundIOS_.hpp +7 -7
  146. package/nitrogen/generated/android/c++/JVariant_NullType_Array_AndroidSubscriptionOfferInput_.cpp +4 -4
  147. package/nitrogen/generated/android/c++/JVariant_NullType_Array_AndroidSubscriptionOfferInput_.hpp +7 -7
  148. package/nitrogen/generated/android/c++/JVariant_NullType_Array_DeveloperProvidedBillingProductAndroid_.cpp +35 -0
  149. package/nitrogen/generated/android/c++/JVariant_NullType_Array_DeveloperProvidedBillingProductAndroid_.hpp +86 -0
  150. package/nitrogen/generated/android/c++/JVariant_NullType_Array_InAppMessageCategoryAndroid_.cpp +4 -4
  151. package/nitrogen/generated/android/c++/JVariant_NullType_Array_InAppMessageCategoryAndroid_.hpp +7 -7
  152. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroOneTimePurchaseOfferDetail_.cpp +4 -4
  153. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroOneTimePurchaseOfferDetail_.hpp +7 -7
  154. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroSubscriptionStatus_.cpp +4 -4
  155. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroSubscriptionStatus_.hpp +16 -10
  156. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroVerifyPurchaseWithProviderError_.cpp +4 -4
  157. package/nitrogen/generated/android/c++/JVariant_NullType_Array_NitroVerifyPurchaseWithProviderError_.hpp +7 -7
  158. package/nitrogen/generated/android/c++/JVariant_NullType_Array_String_.cpp +4 -4
  159. package/nitrogen/generated/android/c++/JVariant_NullType_Array_String_.hpp +7 -7
  160. package/nitrogen/generated/android/c++/JVariant_NullType_Boolean.hpp +3 -3
  161. package/nitrogen/generated/android/c++/JVariant_NullType_DeveloperBillingOptionParamsAndroid.hpp +3 -3
  162. package/nitrogen/generated/android/c++/JVariant_NullType_Double.hpp +3 -3
  163. package/nitrogen/generated/android/c++/JVariant_NullType_InitConnectionConfig.hpp +3 -3
  164. package/nitrogen/generated/android/c++/JVariant_NullType_Map_String__String_.hpp +3 -3
  165. package/nitrogen/generated/android/c++/JVariant_NullType_NitroAvailablePurchasesAndroidOptions.hpp +3 -3
  166. package/nitrogen/generated/android/c++/JVariant_NullType_NitroAvailablePurchasesIosOptions.hpp +3 -3
  167. package/nitrogen/generated/android/c++/JVariant_NullType_NitroDiscountAmountAndroid.hpp +3 -3
  168. package/nitrogen/generated/android/c++/JVariant_NullType_NitroDiscountDisplayInfoAndroid.hpp +3 -3
  169. package/nitrogen/generated/android/c++/JVariant_NullType_NitroFinishTransactionAndroidParams.hpp +3 -3
  170. package/nitrogen/generated/android/c++/JVariant_NullType_NitroFinishTransactionIosParams.hpp +3 -3
  171. package/nitrogen/generated/android/c++/JVariant_NullType_NitroInAppMessageParamsAndroid.hpp +3 -3
  172. package/nitrogen/generated/android/c++/JVariant_NullType_NitroLimitedQuantityInfoAndroid.hpp +3 -3
  173. package/nitrogen/generated/android/c++/JVariant_NullType_NitroPreorderDetailsAndroid.hpp +3 -3
  174. package/nitrogen/generated/android/c++/JVariant_NullType_NitroProduct.hpp +3 -3
  175. package/nitrogen/generated/android/c++/JVariant_NullType_NitroPurchase.hpp +27 -3
  176. package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationAppleOptions.hpp +3 -3
  177. package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationGoogleOptions.hpp +3 -3
  178. package/nitrogen/generated/android/c++/JVariant_NullType_NitroReceiptValidationHorizonOptions.hpp +3 -3
  179. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRenewalInfoIOS.hpp +8 -3
  180. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRentalDetailsAndroid.hpp +3 -3
  181. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRequestPurchaseAndroid.hpp +3 -3
  182. package/nitrogen/generated/android/c++/JVariant_NullType_NitroRequestPurchaseIos.hpp +3 -3
  183. package/nitrogen/generated/android/c++/JVariant_NullType_NitroValidTimeWindowAndroid.hpp +3 -3
  184. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitAmazonProps.hpp +3 -3
  185. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitAppleProps.hpp +3 -3
  186. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitGoogleProps.hpp +3 -3
  187. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitProps.hpp +3 -3
  188. package/nitrogen/generated/android/c++/JVariant_NullType_NitroVerifyPurchaseWithIapkitResult.hpp +3 -3
  189. package/nitrogen/generated/android/c++/JVariant_NullType_PendingPurchaseUpdateAndroid.hpp +3 -3
  190. package/nitrogen/generated/android/c++/JVariant_NullType_PromotionalOfferJwsInputIOS.hpp +3 -3
  191. package/nitrogen/generated/android/c++/JVariant_NullType_PurchaseOfferIOS.hpp +3 -3
  192. package/nitrogen/generated/android/c++/JVariant_NullType_RenewalCommitmentInfoIOS.hpp +3 -3
  193. package/nitrogen/generated/android/c++/JVariant_NullType_RenewalInfoIOS.hpp +3 -3
  194. package/nitrogen/generated/android/c++/JVariant_NullType_String.hpp +3 -3
  195. package/nitrogen/generated/android/c++/JVariant_NullType_SubscriptionProductReplacementParamsAndroid.hpp +3 -3
  196. package/nitrogen/generated/android/c++/JVariant_NullType_TransactionCommitmentInfoIOS.hpp +3 -3
  197. package/nitrogen/generated/android/c++/JVariant_NullType_WinBackOfferInputIOS.hpp +3 -3
  198. package/nitrogen/generated/android/c++/JWinBackOfferInputIOS.hpp +2 -2
  199. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceInfoIOS.kt +27 -0
  200. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceItemDetailsIOS.kt +13 -0
  201. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceItemIOS.kt +17 -0
  202. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceRefundIOS.kt +13 -0
  203. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AndroidSubscriptionOfferInput.kt +15 -0
  204. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/DeveloperBillingOptionParamsAndroid.kt +19 -0
  205. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/DeveloperProvidedBillingDetailsAndroid.kt +19 -0
  206. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/DeveloperProvidedBillingProductAndroid.kt +17 -0
  207. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseCustomLinkNoticeResultIOS.kt +15 -0
  208. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseCustomLinkTokenResultIOS.kt +15 -0
  209. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseLinkResultIOS.kt +15 -0
  210. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/ExternalPurchaseNoticeResultIOS.kt +17 -0
  211. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/HybridRnIapSpec.kt +1 -1
  212. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/InitConnectionConfig.kt +17 -0
  213. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroActiveSubscription.kt +39 -0
  214. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesAndroidOptions.kt +15 -0
  215. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesIosOptions.kt +21 -0
  216. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesOptions.kt +15 -0
  217. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingChoiceInfoAndroid.kt +15 -0
  218. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingProgramAvailabilityResultAndroid.kt +19 -0
  219. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingProgramInformationDialogParamsAndroid.kt +15 -0
  220. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingProgramReportingDetailsAndroid.kt +15 -0
  221. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroBillingResultAndroid.kt +17 -0
  222. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroDeepLinkOptionsAndroid.kt +15 -0
  223. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroDiscountAmountAndroid.kt +15 -0
  224. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroDiscountDisplayInfoAndroid.kt +15 -0
  225. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionAndroidParams.kt +15 -0
  226. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionIosParams.kt +13 -0
  227. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionParams.kt +15 -0
  228. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroGetBillingChoiceInfoParamsAndroid.kt +17 -0
  229. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroInAppMessageParamsAndroid.kt +13 -0
  230. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroInAppMessageResultAndroid.kt +15 -0
  231. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroLaunchExternalLinkParamsAndroid.kt +21 -0
  232. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroLimitedQuantityInfoAndroid.kt +15 -0
  233. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroOneTimePurchaseOfferDetail.kt +37 -0
  234. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPreorderDetailsAndroid.kt +15 -0
  235. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroProduct.kt +85 -0
  236. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchase.kt +128 -3
  237. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchaseRequest.kt +19 -0
  238. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchaseResult.kt +49 -3
  239. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationAppleOptions.kt +13 -0
  240. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationGoogleOptions.kt +21 -0
  241. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationHorizonOptions.kt +17 -0
  242. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationParams.kt +17 -0
  243. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationResultAndroid.kt +47 -0
  244. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationResultIOS.kt +19 -0
  245. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRenewalInfoIOS.kt +45 -2
  246. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRentalDetailsAndroid.kt +15 -0
  247. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRequestPurchaseAndroid.kt +33 -0
  248. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRequestPurchaseIos.kt +31 -0
  249. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroSubscriptionStatus.kt +19 -2
  250. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroValidTimeWindowAndroid.kt +15 -0
  251. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitAmazonProps.kt +17 -0
  252. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitAppleProps.kt +13 -0
  253. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitGoogleProps.kt +13 -0
  254. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitProps.kt +19 -0
  255. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithIapkitResult.kt +17 -0
  256. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithProviderError.kt +15 -0
  257. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithProviderProps.kt +15 -0
  258. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroVerifyPurchaseWithProviderResult.kt +17 -0
  259. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PendingPurchaseUpdateAndroid.kt +15 -0
  260. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PromotionalOfferJwsInputIOS.kt +15 -0
  261. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Purchase.kt +16 -7
  262. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseAndroid.kt +55 -0
  263. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseIOS.kt +85 -0
  264. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseOfferIOS.kt +17 -0
  265. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseUpdatedListenerOptions.kt +13 -0
  266. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/RenewalCommitmentInfoIOS.kt +21 -0
  267. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/RenewalInfoIOS.kt +37 -0
  268. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/RequestPurchaseResult.kt +20 -9
  269. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/SubscriptionProductReplacementParamsAndroid.kt +15 -0
  270. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/TransactionCommitmentInfoIOS.kt +19 -0
  271. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/UserChoiceBillingDetails.kt +28 -3
  272. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_Boolean_NitroPurchaseResult.kt +16 -7
  273. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.kt +16 -7
  274. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_AdvancedCommerceInfoIOS.kt +16 -7
  275. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_AdvancedCommerceItemDetailsIOS.kt +16 -7
  276. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_AdvancedCommerceRefundIOS_.kt +16 -7
  277. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_AndroidSubscriptionOfferInput_.kt +16 -7
  278. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_DeveloperProvidedBillingProductAndroid_.kt +62 -0
  279. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_InAppMessageCategoryAndroid_.kt +16 -7
  280. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_NitroOneTimePurchaseOfferDetail_.kt +16 -7
  281. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_NitroSubscriptionStatus_.kt +16 -7
  282. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_NitroVerifyPurchaseWithProviderError_.kt +16 -7
  283. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_String_.kt +16 -7
  284. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Boolean.kt +16 -7
  285. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_DeveloperBillingOptionParamsAndroid.kt +16 -7
  286. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Double.kt +16 -7
  287. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_InitConnectionConfig.kt +16 -7
  288. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Map_String__String_.kt +16 -7
  289. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroAvailablePurchasesAndroidOptions.kt +16 -7
  290. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroAvailablePurchasesIosOptions.kt +16 -7
  291. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroDiscountAmountAndroid.kt +16 -7
  292. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroDiscountDisplayInfoAndroid.kt +16 -7
  293. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroFinishTransactionAndroidParams.kt +16 -7
  294. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroFinishTransactionIosParams.kt +16 -7
  295. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroInAppMessageParamsAndroid.kt +16 -7
  296. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroLimitedQuantityInfoAndroid.kt +16 -7
  297. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroPreorderDetailsAndroid.kt +16 -7
  298. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroProduct.kt +16 -7
  299. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroPurchase.kt +16 -7
  300. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroReceiptValidationAppleOptions.kt +16 -7
  301. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroReceiptValidationGoogleOptions.kt +16 -7
  302. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroReceiptValidationHorizonOptions.kt +16 -7
  303. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRenewalInfoIOS.kt +16 -7
  304. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRentalDetailsAndroid.kt +16 -7
  305. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRequestPurchaseAndroid.kt +16 -7
  306. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroRequestPurchaseIos.kt +16 -7
  307. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroValidTimeWindowAndroid.kt +16 -7
  308. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitAmazonProps.kt +16 -7
  309. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitAppleProps.kt +16 -7
  310. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitGoogleProps.kt +16 -7
  311. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitProps.kt +16 -7
  312. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroVerifyPurchaseWithIapkitResult.kt +16 -7
  313. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_PendingPurchaseUpdateAndroid.kt +16 -7
  314. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_PromotionalOfferJwsInputIOS.kt +16 -7
  315. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_PurchaseOfferIOS.kt +16 -7
  316. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_RenewalCommitmentInfoIOS.kt +16 -7
  317. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_RenewalInfoIOS.kt +16 -7
  318. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_String.kt +16 -7
  319. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_SubscriptionProductReplacementParamsAndroid.kt +16 -7
  320. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_TransactionCommitmentInfoIOS.kt +16 -7
  321. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_WinBackOfferInputIOS.kt +16 -7
  322. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/WinBackOfferInputIOS.kt +13 -0
  323. package/nitrogen/generated/ios/NitroIap+autolinking.rb +2 -0
  324. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.hpp +85 -73
  325. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Umbrella.hpp +0 -3
  326. package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.hpp +7 -10
  327. package/nitrogen/generated/ios/swift/HybridRnIapSpec.swift +1 -1
  328. package/nitrogen/generated/ios/swift/HybridRnIapSpec_cxx.swift +7 -7
  329. package/nitrogen/generated/ios/swift/NitroPurchase.swift +204 -2
  330. package/nitrogen/generated/ios/swift/NitroPurchaseResult.swift +90 -1
  331. package/nitrogen/generated/ios/swift/NitroRenewalInfoIOS.swift +49 -1
  332. package/nitrogen/generated/ios/swift/NitroSubscriptionStatus.swift +11 -11
  333. package/nitrogen/generated/ios/swift/Purchase.swift +12 -0
  334. package/nitrogen/generated/ios/swift/RequestPurchaseResult.swift +14 -0
  335. package/nitrogen/generated/ios/swift/UserChoiceBillingDetails.swift +82 -2
  336. package/nitrogen/generated/ios/swift/Variant_Bool_NitroPurchaseResult.swift +12 -0
  337. package/nitrogen/generated/ios/swift/Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.swift +12 -0
  338. package/nitrogen/generated/ios/swift/Variant_NullType_AdvancedCommerceInfoIOS.swift +12 -0
  339. package/nitrogen/generated/ios/swift/Variant_NullType_AdvancedCommerceItemDetailsIOS.swift +12 -0
  340. package/nitrogen/generated/ios/swift/Variant_NullType_Bool.swift +12 -0
  341. package/nitrogen/generated/ios/swift/Variant_NullType_DeveloperBillingOptionParamsAndroid.swift +12 -0
  342. package/nitrogen/generated/ios/swift/Variant_NullType_Dictionary_String__String_.swift +12 -0
  343. package/nitrogen/generated/ios/swift/Variant_NullType_Double.swift +12 -0
  344. package/nitrogen/generated/ios/swift/Variant_NullType_InitConnectionConfig.swift +12 -0
  345. package/nitrogen/generated/ios/swift/Variant_NullType_NitroAvailablePurchasesAndroidOptions.swift +12 -0
  346. package/nitrogen/generated/ios/swift/Variant_NullType_NitroAvailablePurchasesIosOptions.swift +12 -0
  347. package/nitrogen/generated/ios/swift/Variant_NullType_NitroDiscountAmountAndroid.swift +12 -0
  348. package/nitrogen/generated/ios/swift/Variant_NullType_NitroDiscountDisplayInfoAndroid.swift +12 -0
  349. package/nitrogen/generated/ios/swift/Variant_NullType_NitroFinishTransactionAndroidParams.swift +12 -0
  350. package/nitrogen/generated/ios/swift/Variant_NullType_NitroFinishTransactionIosParams.swift +12 -0
  351. package/nitrogen/generated/ios/swift/Variant_NullType_NitroInAppMessageParamsAndroid.swift +12 -0
  352. package/nitrogen/generated/ios/swift/Variant_NullType_NitroLimitedQuantityInfoAndroid.swift +12 -0
  353. package/nitrogen/generated/ios/swift/Variant_NullType_NitroPreorderDetailsAndroid.swift +12 -0
  354. package/nitrogen/generated/ios/swift/Variant_NullType_NitroProduct.swift +12 -0
  355. package/nitrogen/generated/ios/swift/Variant_NullType_NitroPurchase.swift +12 -0
  356. package/nitrogen/generated/ios/swift/Variant_NullType_NitroReceiptValidationAppleOptions.swift +12 -0
  357. package/nitrogen/generated/ios/swift/Variant_NullType_NitroReceiptValidationGoogleOptions.swift +12 -0
  358. package/nitrogen/generated/ios/swift/Variant_NullType_NitroReceiptValidationHorizonOptions.swift +12 -0
  359. package/nitrogen/generated/ios/swift/Variant_NullType_NitroRenewalInfoIOS.swift +12 -0
  360. package/nitrogen/generated/ios/swift/Variant_NullType_NitroRentalDetailsAndroid.swift +12 -0
  361. package/nitrogen/generated/ios/swift/Variant_NullType_NitroRequestPurchaseAndroid.swift +12 -0
  362. package/nitrogen/generated/ios/swift/Variant_NullType_NitroRequestPurchaseIos.swift +12 -0
  363. package/nitrogen/generated/ios/swift/Variant_NullType_NitroValidTimeWindowAndroid.swift +12 -0
  364. package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitAmazonProps.swift +12 -0
  365. package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitAppleProps.swift +12 -0
  366. package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitGoogleProps.swift +12 -0
  367. package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitProps.swift +12 -0
  368. package/nitrogen/generated/ios/swift/Variant_NullType_NitroVerifyPurchaseWithIapkitResult.swift +12 -0
  369. package/nitrogen/generated/ios/swift/Variant_NullType_PendingPurchaseUpdateAndroid.swift +12 -0
  370. package/nitrogen/generated/ios/swift/Variant_NullType_PromotionalOfferJwsInputIOS.swift +12 -0
  371. package/nitrogen/generated/ios/swift/Variant_NullType_PurchaseOfferIOS.swift +12 -0
  372. package/nitrogen/generated/ios/swift/Variant_NullType_RenewalCommitmentInfoIOS.swift +12 -0
  373. package/nitrogen/generated/ios/swift/Variant_NullType_RenewalInfoIOS.swift +12 -0
  374. package/nitrogen/generated/ios/swift/Variant_NullType_String.swift +12 -0
  375. package/nitrogen/generated/ios/swift/Variant_NullType_SubscriptionProductReplacementParamsAndroid.swift +12 -0
  376. package/nitrogen/generated/ios/swift/Variant_NullType_TransactionCommitmentInfoIOS.swift +12 -0
  377. package/nitrogen/generated/ios/swift/Variant_NullType_WinBackOfferInputIOS.swift +12 -0
  378. package/nitrogen/generated/ios/swift/Variant_NullType__AdvancedCommerceRefundIOS_.swift +12 -0
  379. package/nitrogen/generated/ios/swift/Variant_NullType__AndroidSubscriptionOfferInput_.swift +12 -0
  380. package/nitrogen/generated/ios/swift/Variant_NullType__DeveloperProvidedBillingProductAndroid_.swift +30 -0
  381. package/nitrogen/generated/ios/swift/Variant_NullType__InAppMessageCategoryAndroid_.swift +12 -0
  382. package/nitrogen/generated/ios/swift/Variant_NullType__NitroOneTimePurchaseOfferDetail_.swift +12 -0
  383. package/nitrogen/generated/ios/swift/Variant_NullType__NitroSubscriptionStatus_.swift +12 -0
  384. package/nitrogen/generated/ios/swift/Variant_NullType__NitroVerifyPurchaseWithProviderError_.swift +12 -0
  385. package/nitrogen/generated/ios/swift/Variant_NullType__String_.swift +12 -0
  386. package/nitrogen/generated/shared/c++/AdvancedCommerceInfoIOS.hpp +1 -1
  387. package/nitrogen/generated/shared/c++/AdvancedCommerceItemIOS.hpp +1 -1
  388. package/nitrogen/generated/shared/c++/DeveloperProvidedBillingDetailsAndroid.hpp +1 -1
  389. package/nitrogen/generated/shared/c++/HybridRnIapSpec.hpp +1 -1
  390. package/nitrogen/generated/shared/c++/NitroInAppMessageParamsAndroid.hpp +1 -1
  391. package/nitrogen/generated/shared/c++/NitroOneTimePurchaseOfferDetail.hpp +1 -1
  392. package/nitrogen/generated/shared/c++/NitroProduct.hpp +1 -1
  393. package/nitrogen/generated/shared/c++/NitroPurchase.hpp +40 -3
  394. package/nitrogen/generated/shared/c++/NitroPurchaseRequest.hpp +1 -1
  395. package/nitrogen/generated/shared/c++/NitroPurchaseResult.hpp +27 -4
  396. package/nitrogen/generated/shared/c++/NitroReceiptValidationResultIOS.hpp +1 -1
  397. package/nitrogen/generated/shared/c++/NitroRenewalInfoIOS.hpp +15 -2
  398. package/nitrogen/generated/shared/c++/NitroRequestPurchaseAndroid.hpp +1 -1
  399. package/nitrogen/generated/shared/c++/NitroSubscriptionStatus.hpp +8 -8
  400. package/nitrogen/generated/shared/c++/NitroVerifyPurchaseWithProviderResult.hpp +1 -1
  401. package/nitrogen/generated/shared/c++/PendingPurchaseUpdateAndroid.hpp +1 -1
  402. package/nitrogen/generated/shared/c++/PurchaseAndroid.hpp +1 -1
  403. package/nitrogen/generated/shared/c++/PurchaseIOS.hpp +1 -1
  404. package/nitrogen/generated/shared/c++/UserChoiceBillingDetails.hpp +16 -3
  405. package/openiap-versions.json +3 -3
  406. package/package.json +8 -5
  407. package/src/hooks/useIAP.ts +7 -4
  408. package/src/index.ts +59 -39
  409. package/src/specs/RnIap.nitro.ts +25 -19
  410. package/src/types.ts +58 -26
  411. package/src/utils/error.ts +11 -8
  412. package/src/utils/errorMapping.ts +9 -1
  413. package/src/utils/type-bridge.ts +37 -40
  414. package/src/vega-adapter.ts +66 -4
  415. package/nitrogen/generated/android/c++/JNitroSubscriptionRenewalInfo.hpp +0 -83
  416. package/nitrogen/generated/android/c++/JVariant_NullType_NitroSubscriptionRenewalInfo.cpp +0 -26
  417. package/nitrogen/generated/android/c++/JVariant_NullType_NitroSubscriptionRenewalInfo.hpp +0 -75
  418. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroSubscriptionRenewalInfo.kt +0 -53
  419. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_NitroSubscriptionRenewalInfo.kt +0 -53
  420. package/nitrogen/generated/ios/swift/NitroSubscriptionRenewalInfo.swift +0 -182
  421. package/nitrogen/generated/ios/swift/Variant_NullType_NitroSubscriptionRenewalInfo.swift +0 -18
  422. package/nitrogen/generated/shared/c++/NitroSubscriptionRenewalInfo.hpp +0 -106
@@ -68,7 +68,7 @@ namespace margelo::nitro::iap {
68
68
  explicit NitroRequestPurchaseAndroid(std::vector<std::string> skus, std::optional<std::variant<nitro::NullType, std::string>> obfuscatedAccountId, std::optional<std::variant<nitro::NullType, std::string>> obfuscatedProfileId, std::optional<std::variant<nitro::NullType, bool>> isOfferPersonalized, std::optional<std::variant<nitro::NullType, std::string>> offerToken, std::optional<std::variant<nitro::NullType, std::vector<AndroidSubscriptionOfferInput>>> subscriptionOffers, std::optional<std::variant<nitro::NullType, double>> replacementMode, std::optional<std::variant<nitro::NullType, std::string>> purchaseToken, std::optional<std::variant<nitro::NullType, std::string>> originalExternalTransactionId, std::optional<std::variant<nitro::NullType, DeveloperBillingOptionParamsAndroid>> developerBillingOption, std::optional<std::variant<nitro::NullType, SubscriptionProductReplacementParamsAndroid>> subscriptionProductReplacementParams): skus(skus), obfuscatedAccountId(obfuscatedAccountId), obfuscatedProfileId(obfuscatedProfileId), isOfferPersonalized(isOfferPersonalized), offerToken(offerToken), subscriptionOffers(subscriptionOffers), replacementMode(replacementMode), purchaseToken(purchaseToken), originalExternalTransactionId(originalExternalTransactionId), developerBillingOption(developerBillingOption), subscriptionProductReplacementParams(subscriptionProductReplacementParams) {}
69
69
 
70
70
  public:
71
- friend bool operator==(const NitroRequestPurchaseAndroid& lhs, const NitroRequestPurchaseAndroid& rhs) = default;
71
+ // NitroRequestPurchaseAndroid is not equatable because these properties are not equatable: skus, subscriptionOffers
72
72
  };
73
73
 
74
74
  } // namespace margelo::nitro::iap
@@ -28,12 +28,12 @@
28
28
  #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
29
29
  #endif
30
30
 
31
- // Forward declaration of `NitroSubscriptionRenewalInfo` to properly resolve imports.
32
- namespace margelo::nitro::iap { struct NitroSubscriptionRenewalInfo; }
31
+ // Forward declaration of `NitroRenewalInfoIOS` to properly resolve imports.
32
+ namespace margelo::nitro::iap { struct NitroRenewalInfoIOS; }
33
33
 
34
34
  #include <string>
35
35
  #include <NitroModules/Null.hpp>
36
- #include "NitroSubscriptionRenewalInfo.hpp"
36
+ #include "NitroRenewalInfoIOS.hpp"
37
37
  #include <variant>
38
38
  #include <optional>
39
39
 
@@ -46,11 +46,11 @@ namespace margelo::nitro::iap {
46
46
  public:
47
47
  double state SWIFT_PRIVATE;
48
48
  std::string platform SWIFT_PRIVATE;
49
- std::optional<std::variant<nitro::NullType, NitroSubscriptionRenewalInfo>> renewalInfo SWIFT_PRIVATE;
49
+ std::optional<std::variant<nitro::NullType, NitroRenewalInfoIOS>> renewalInfo SWIFT_PRIVATE;
50
50
 
51
51
  public:
52
52
  NitroSubscriptionStatus() = default;
53
- explicit NitroSubscriptionStatus(double state, std::string platform, std::optional<std::variant<nitro::NullType, NitroSubscriptionRenewalInfo>> renewalInfo): state(state), platform(platform), renewalInfo(renewalInfo) {}
53
+ explicit NitroSubscriptionStatus(double state, std::string platform, std::optional<std::variant<nitro::NullType, NitroRenewalInfoIOS>> renewalInfo): state(state), platform(platform), renewalInfo(renewalInfo) {}
54
54
 
55
55
  public:
56
56
  friend bool operator==(const NitroSubscriptionStatus& lhs, const NitroSubscriptionStatus& rhs) = default;
@@ -68,14 +68,14 @@ namespace margelo::nitro {
68
68
  return margelo::nitro::iap::NitroSubscriptionStatus(
69
69
  JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "state"))),
70
70
  JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "platform"))),
71
- JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::iap::NitroSubscriptionRenewalInfo>>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "renewalInfo")))
71
+ JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::iap::NitroRenewalInfoIOS>>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "renewalInfo")))
72
72
  );
73
73
  }
74
74
  static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::iap::NitroSubscriptionStatus& arg) {
75
75
  jsi::Object obj(runtime);
76
76
  obj.setProperty(runtime, PropNameIDCache::get(runtime, "state"), JSIConverter<double>::toJSI(runtime, arg.state));
77
77
  obj.setProperty(runtime, PropNameIDCache::get(runtime, "platform"), JSIConverter<std::string>::toJSI(runtime, arg.platform));
78
- obj.setProperty(runtime, PropNameIDCache::get(runtime, "renewalInfo"), JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::iap::NitroSubscriptionRenewalInfo>>>::toJSI(runtime, arg.renewalInfo));
78
+ obj.setProperty(runtime, PropNameIDCache::get(runtime, "renewalInfo"), JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::iap::NitroRenewalInfoIOS>>>::toJSI(runtime, arg.renewalInfo));
79
79
  return obj;
80
80
  }
81
81
  static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
@@ -88,7 +88,7 @@ namespace margelo::nitro {
88
88
  }
89
89
  if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "state")))) return false;
90
90
  if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "platform")))) return false;
91
- if (!JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::iap::NitroSubscriptionRenewalInfo>>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "renewalInfo")))) return false;
91
+ if (!JSIConverter<std::optional<std::variant<nitro::NullType, margelo::nitro::iap::NitroRenewalInfoIOS>>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "renewalInfo")))) return false;
92
92
  return true;
93
93
  }
94
94
  };
@@ -59,7 +59,7 @@ namespace margelo::nitro::iap {
59
59
  explicit NitroVerifyPurchaseWithProviderResult(std::optional<std::variant<nitro::NullType, NitroVerifyPurchaseWithIapkitResult>> iapkit, std::optional<std::variant<nitro::NullType, std::vector<NitroVerifyPurchaseWithProviderError>>> errors, PurchaseVerificationProvider provider): iapkit(iapkit), errors(errors), provider(provider) {}
60
60
 
61
61
  public:
62
- friend bool operator==(const NitroVerifyPurchaseWithProviderResult& lhs, const NitroVerifyPurchaseWithProviderResult& rhs) = default;
62
+ // NitroVerifyPurchaseWithProviderResult is not equatable because these properties are not equatable: errors
63
63
  };
64
64
 
65
65
  } // namespace margelo::nitro::iap
@@ -48,7 +48,7 @@ namespace margelo::nitro::iap {
48
48
  explicit PendingPurchaseUpdateAndroid(std::vector<std::string> products, std::string purchaseToken): products(products), purchaseToken(purchaseToken) {}
49
49
 
50
50
  public:
51
- friend bool operator==(const PendingPurchaseUpdateAndroid& lhs, const PendingPurchaseUpdateAndroid& rhs) = default;
51
+ // PendingPurchaseUpdateAndroid is not equatable because these properties are not equatable: products
52
52
  };
53
53
 
54
54
  } // namespace margelo::nitro::iap
@@ -82,7 +82,7 @@ namespace margelo::nitro::iap {
82
82
  explicit PurchaseAndroid(std::optional<std::variant<nitro::NullType, bool>> autoRenewingAndroid, std::optional<std::variant<nitro::NullType, std::string>> currentPlanId, std::optional<std::variant<nitro::NullType, std::string>> dataAndroid, std::optional<std::variant<nitro::NullType, std::string>> developerPayloadAndroid, std::string id, std::optional<std::variant<nitro::NullType, std::vector<std::string>>> ids, std::optional<std::variant<nitro::NullType, bool>> isAcknowledgedAndroid, bool isAutoRenewing, std::optional<std::variant<nitro::NullType, bool>> isSuspendedAndroid, std::optional<std::variant<nitro::NullType, std::string>> obfuscatedAccountIdAndroid, std::optional<std::variant<nitro::NullType, std::string>> obfuscatedProfileIdAndroid, std::optional<std::variant<nitro::NullType, std::string>> packageNameAndroid, std::optional<std::variant<nitro::NullType, PendingPurchaseUpdateAndroid>> pendingPurchaseUpdateAndroid, IapPlatform platform, std::string productId, PurchaseState purchaseState, std::optional<std::variant<nitro::NullType, std::string>> purchaseToken, double quantity, std::optional<std::variant<nitro::NullType, std::string>> signatureAndroid, IapStore store, double transactionDate, std::optional<std::variant<nitro::NullType, std::string>> transactionId): autoRenewingAndroid(autoRenewingAndroid), currentPlanId(currentPlanId), dataAndroid(dataAndroid), developerPayloadAndroid(developerPayloadAndroid), id(id), ids(ids), isAcknowledgedAndroid(isAcknowledgedAndroid), isAutoRenewing(isAutoRenewing), isSuspendedAndroid(isSuspendedAndroid), obfuscatedAccountIdAndroid(obfuscatedAccountIdAndroid), obfuscatedProfileIdAndroid(obfuscatedProfileIdAndroid), packageNameAndroid(packageNameAndroid), pendingPurchaseUpdateAndroid(pendingPurchaseUpdateAndroid), platform(platform), productId(productId), purchaseState(purchaseState), purchaseToken(purchaseToken), quantity(quantity), signatureAndroid(signatureAndroid), store(store), transactionDate(transactionDate), transactionId(transactionId) {}
83
83
 
84
84
  public:
85
- friend bool operator==(const PurchaseAndroid& lhs, const PurchaseAndroid& rhs) = default;
85
+ // PurchaseAndroid is not equatable because these properties are not equatable: ids, pendingPurchaseUpdateAndroid
86
86
  };
87
87
 
88
88
  } // namespace margelo::nitro::iap
@@ -109,7 +109,7 @@ namespace margelo::nitro::iap {
109
109
  explicit PurchaseIOS(std::optional<std::variant<nitro::NullType, AdvancedCommerceInfoIOS>> advancedCommerceInfoIOS, std::optional<std::variant<nitro::NullType, std::string>> appAccountToken, std::optional<std::variant<nitro::NullType, std::string>> appBundleIdIOS, std::optional<SubscriptionBillingPlanTypeIOS> billingPlanTypeIOS, std::optional<std::variant<nitro::NullType, TransactionCommitmentInfoIOS>> commitmentInfoIOS, std::optional<std::variant<nitro::NullType, std::string>> countryCodeIOS, std::optional<std::variant<nitro::NullType, std::string>> currencyCodeIOS, std::optional<std::variant<nitro::NullType, std::string>> currencySymbolIOS, std::optional<std::variant<nitro::NullType, std::string>> currentPlanId, std::optional<std::variant<nitro::NullType, std::string>> environmentIOS, std::optional<std::variant<nitro::NullType, double>> expirationDateIOS, std::string id, std::optional<std::variant<nitro::NullType, std::vector<std::string>>> ids, bool isAutoRenewing, std::optional<std::variant<nitro::NullType, bool>> isUpgradedIOS, std::optional<std::variant<nitro::NullType, PurchaseOfferIOS>> offerIOS, std::optional<std::variant<nitro::NullType, double>> originalTransactionDateIOS, std::optional<std::variant<nitro::NullType, std::string>> originalTransactionIdentifierIOS, std::optional<std::variant<nitro::NullType, std::string>> ownershipTypeIOS, IapPlatform platform, std::string productId, PurchaseState purchaseState, std::optional<std::variant<nitro::NullType, std::string>> purchaseToken, double quantity, std::optional<std::variant<nitro::NullType, double>> quantityIOS, std::optional<std::variant<nitro::NullType, std::string>> reasonIOS, std::optional<std::variant<nitro::NullType, std::string>> reasonStringRepresentationIOS, std::optional<std::variant<nitro::NullType, RenewalInfoIOS>> renewalInfoIOS, std::optional<std::variant<nitro::NullType, double>> revocationDateIOS, std::optional<std::variant<nitro::NullType, std::string>> revocationReasonIOS, IapStore store, std::optional<std::variant<nitro::NullType, std::string>> storefrontCountryCodeIOS, std::optional<std::variant<nitro::NullType, std::string>> subscriptionGroupIdIOS, double transactionDate, std::string transactionId, std::optional<std::variant<nitro::NullType, std::string>> transactionReasonIOS, std::optional<std::variant<nitro::NullType, std::string>> webOrderLineItemIdIOS): advancedCommerceInfoIOS(advancedCommerceInfoIOS), appAccountToken(appAccountToken), appBundleIdIOS(appBundleIdIOS), billingPlanTypeIOS(billingPlanTypeIOS), commitmentInfoIOS(commitmentInfoIOS), countryCodeIOS(countryCodeIOS), currencyCodeIOS(currencyCodeIOS), currencySymbolIOS(currencySymbolIOS), currentPlanId(currentPlanId), environmentIOS(environmentIOS), expirationDateIOS(expirationDateIOS), id(id), ids(ids), isAutoRenewing(isAutoRenewing), isUpgradedIOS(isUpgradedIOS), offerIOS(offerIOS), originalTransactionDateIOS(originalTransactionDateIOS), originalTransactionIdentifierIOS(originalTransactionIdentifierIOS), ownershipTypeIOS(ownershipTypeIOS), platform(platform), productId(productId), purchaseState(purchaseState), purchaseToken(purchaseToken), quantity(quantity), quantityIOS(quantityIOS), reasonIOS(reasonIOS), reasonStringRepresentationIOS(reasonStringRepresentationIOS), renewalInfoIOS(renewalInfoIOS), revocationDateIOS(revocationDateIOS), revocationReasonIOS(revocationReasonIOS), store(store), storefrontCountryCodeIOS(storefrontCountryCodeIOS), subscriptionGroupIdIOS(subscriptionGroupIdIOS), transactionDate(transactionDate), transactionId(transactionId), transactionReasonIOS(transactionReasonIOS), webOrderLineItemIdIOS(webOrderLineItemIdIOS) {}
110
110
 
111
111
  public:
112
- friend bool operator==(const PurchaseIOS& lhs, const PurchaseIOS& rhs) = default;
112
+ // PurchaseIOS is not equatable because these properties are not equatable: advancedCommerceInfoIOS, ids
113
113
  };
114
114
 
115
115
  } // namespace margelo::nitro::iap
@@ -28,9 +28,14 @@
28
28
  #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
29
29
  #endif
30
30
 
31
-
31
+ // Forward declaration of `DeveloperProvidedBillingProductAndroid` to properly resolve imports.
32
+ namespace margelo::nitro::iap { struct DeveloperProvidedBillingProductAndroid; }
32
33
 
33
34
  #include <string>
35
+ #include <NitroModules/Null.hpp>
36
+ #include <variant>
37
+ #include <optional>
38
+ #include "DeveloperProvidedBillingProductAndroid.hpp"
34
39
  #include <vector>
35
40
 
36
41
  namespace margelo::nitro::iap {
@@ -41,14 +46,16 @@ namespace margelo::nitro::iap {
41
46
  struct UserChoiceBillingDetails final {
42
47
  public:
43
48
  std::string externalTransactionToken SWIFT_PRIVATE;
49
+ std::optional<std::variant<nitro::NullType, std::string>> originalExternalTransactionId SWIFT_PRIVATE;
50
+ std::optional<std::variant<nitro::NullType, std::vector<DeveloperProvidedBillingProductAndroid>>> productDetailsAndroid SWIFT_PRIVATE;
44
51
  std::vector<std::string> products SWIFT_PRIVATE;
45
52
 
46
53
  public:
47
54
  UserChoiceBillingDetails() = default;
48
- explicit UserChoiceBillingDetails(std::string externalTransactionToken, std::vector<std::string> products): externalTransactionToken(externalTransactionToken), products(products) {}
55
+ explicit UserChoiceBillingDetails(std::string externalTransactionToken, std::optional<std::variant<nitro::NullType, std::string>> originalExternalTransactionId, std::optional<std::variant<nitro::NullType, std::vector<DeveloperProvidedBillingProductAndroid>>> productDetailsAndroid, std::vector<std::string> products): externalTransactionToken(externalTransactionToken), originalExternalTransactionId(originalExternalTransactionId), productDetailsAndroid(productDetailsAndroid), products(products) {}
49
56
 
50
57
  public:
51
- friend bool operator==(const UserChoiceBillingDetails& lhs, const UserChoiceBillingDetails& rhs) = default;
58
+ // UserChoiceBillingDetails is not equatable because these properties are not equatable: productDetailsAndroid, products
52
59
  };
53
60
 
54
61
  } // namespace margelo::nitro::iap
@@ -62,12 +69,16 @@ namespace margelo::nitro {
62
69
  jsi::Object obj = arg.asObject(runtime);
63
70
  return margelo::nitro::iap::UserChoiceBillingDetails(
64
71
  JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "externalTransactionToken"))),
72
+ JSIConverter<std::optional<std::variant<nitro::NullType, std::string>>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "originalExternalTransactionId"))),
73
+ JSIConverter<std::optional<std::variant<nitro::NullType, std::vector<margelo::nitro::iap::DeveloperProvidedBillingProductAndroid>>>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "productDetailsAndroid"))),
65
74
  JSIConverter<std::vector<std::string>>::fromJSI(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "products")))
66
75
  );
67
76
  }
68
77
  static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::iap::UserChoiceBillingDetails& arg) {
69
78
  jsi::Object obj(runtime);
70
79
  obj.setProperty(runtime, PropNameIDCache::get(runtime, "externalTransactionToken"), JSIConverter<std::string>::toJSI(runtime, arg.externalTransactionToken));
80
+ obj.setProperty(runtime, PropNameIDCache::get(runtime, "originalExternalTransactionId"), JSIConverter<std::optional<std::variant<nitro::NullType, std::string>>>::toJSI(runtime, arg.originalExternalTransactionId));
81
+ obj.setProperty(runtime, PropNameIDCache::get(runtime, "productDetailsAndroid"), JSIConverter<std::optional<std::variant<nitro::NullType, std::vector<margelo::nitro::iap::DeveloperProvidedBillingProductAndroid>>>>::toJSI(runtime, arg.productDetailsAndroid));
71
82
  obj.setProperty(runtime, PropNameIDCache::get(runtime, "products"), JSIConverter<std::vector<std::string>>::toJSI(runtime, arg.products));
72
83
  return obj;
73
84
  }
@@ -80,6 +91,8 @@ namespace margelo::nitro {
80
91
  return false;
81
92
  }
82
93
  if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "externalTransactionToken")))) return false;
94
+ if (!JSIConverter<std::optional<std::variant<nitro::NullType, std::string>>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "originalExternalTransactionId")))) return false;
95
+ if (!JSIConverter<std::optional<std::variant<nitro::NullType, std::vector<margelo::nitro::iap::DeveloperProvidedBillingProductAndroid>>>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "productDetailsAndroid")))) return false;
83
96
  if (!JSIConverter<std::vector<std::string>>::canConvert(runtime, obj.getProperty(runtime, PropNameIDCache::get(runtime, "products")))) return false;
84
97
  return true;
85
98
  }
@@ -1,5 +1,5 @@
1
1
  {
2
- "spec": "2.1.0",
3
- "google": "2.3.0",
4
- "apple": "2.2.5"
2
+ "spec": "2.3.0",
3
+ "google": "2.3.1",
4
+ "apple": "2.3.0"
5
5
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-iap",
3
- "version": "15.4.0",
3
+ "version": "15.4.1",
4
4
  "description": "React Native In-App Purchases module for iOS and Android using Nitro",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -105,12 +105,12 @@
105
105
  "husky": "^8.0.3",
106
106
  "jest": "^30.1.1",
107
107
  "lint-staged": "^15.2.0",
108
- "nitrogen": "^0.35.0",
108
+ "nitrogen": "^0.35.10",
109
109
  "prettier": "^3.3.3",
110
110
  "react": "19.1.0",
111
111
  "react-native": "0.81.1",
112
112
  "react-native-builder-bob": "^0.38.4",
113
- "react-native-nitro-modules": "^0.35.0",
113
+ "react-native-nitro-modules": "^0.35.10",
114
114
  "react-test-renderer": "^19.1.1",
115
115
  "typescript": "^5.9.2"
116
116
  },
@@ -119,7 +119,7 @@
119
119
  "@amazon-devices/package-manager-lib": "~1.0.1767254401",
120
120
  "react": "*",
121
121
  "react-native": "*",
122
- "react-native-nitro-modules": "^0.35.0"
122
+ "react-native-nitro-modules": "^0.35.10"
123
123
  },
124
124
  "peerDependenciesMeta": {
125
125
  "@amazon-devices/keplerscript-appstore-iap-lib": {
@@ -174,5 +174,8 @@
174
174
  "prettier --write"
175
175
  ]
176
176
  },
177
- "packageManager": "yarn@3.6.1"
177
+ "packageManager": "yarn@3.6.1",
178
+ "resolutions": {
179
+ "nitrogen@^0.35.10": "patch:nitrogen@npm%3A0.35.10#./.yarn/patches/nitrogen-npm-0.35.10-ac6318648e.patch"
180
+ }
178
181
  }
@@ -311,9 +311,9 @@ export interface UseIapOptions {
311
311
  details: DeveloperProvidedBillingDetailsAndroid,
312
312
  ) => void;
313
313
  /**
314
- * Fires when an active subscription enters a billing-issue state
315
- * (StoreKit 2 Message.billingIssue on iOS 18+, Purchase.isSuspended on
316
- * Play Billing 8.1+). Not invoked on Meta Horizon.
314
+ * Fires when a subscription enters a billing-issue state
315
+ * (StoreKit 2 Message.billingIssue on iOS / Mac Catalyst 16.4+ and visionOS 1.0+, Purchase.isSuspended on
316
+ * Play Billing 8.1+). Not invoked on Meta Horizon or Amazon Appstore.
317
317
  *
318
318
  * Recommended: call deepLinkToSubscriptions on the returned purchase so
319
319
  * the user can update their payment method in the platform subscription
@@ -435,7 +435,10 @@ export function useIAP(options?: UseIapOptions): UseIap {
435
435
  skus: params.skus,
436
436
  type: requestType,
437
437
  });
438
- RnIapConsole.debug('[useIAP] fetchProducts result:', result);
438
+ RnIapConsole.debug(
439
+ '[useIAP] fetchProducts count:',
440
+ result?.length ?? 0,
441
+ );
439
442
  const items = (result ?? []) as (Product | ProductSubscription)[];
440
443
 
441
444
  // fetchProducts already returns properly filtered results based on type
package/src/index.ts CHANGED
@@ -314,13 +314,23 @@ const purchaseUpdateDuplicateNativeHandler: NitroPurchaseListener = (
314
314
  const purchaseErrorJsListeners = new Set<(error: PurchaseError) => void>();
315
315
  let purchaseErrorNativeAttached = false;
316
316
  const purchaseErrorNativeHandler: NitroPurchaseErrorListener = (error) => {
317
+ const normalizedCode =
318
+ error.code === DUPLICATE_PURCHASE_CODE
319
+ ? ErrorCode.DuplicatePurchase
320
+ : normalizeErrorCodeFromNative(error.code);
317
321
  const normalized: PurchaseError = {
318
- code:
319
- error.code === DUPLICATE_PURCHASE_CODE
320
- ? ErrorCode.DuplicatePurchase
321
- : normalizeErrorCodeFromNative(error.code),
322
+ code: normalizedCode,
322
323
  message: error.message,
323
- productId: undefined,
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,
324
334
  };
325
335
  for (const listener of purchaseErrorJsListeners) {
326
336
  try {
@@ -712,8 +722,8 @@ export const developerProvidedBillingListenerAndroid = (
712
722
  /**
713
723
  * Listen for subscription billing-issue events (cross-platform).
714
724
  *
715
- * Fires when an active subscription enters a billing-issue state:
716
- * - iOS 18+ / Mac Catalyst 18+: via StoreKit 2 `Message.Reason.billingIssue`.
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
  *
@@ -854,7 +864,8 @@ export const fetchProducts: QueryField<'fetchProducts'> = async (request) => {
854
864
 
855
865
  if (normalizedType === 'all') {
856
866
  const converted = (await fetchAndConvert('all')) as (
857
- Product | ProductSubscription
867
+ | Product
868
+ | ProductSubscription
858
869
  )[];
859
870
 
860
871
  RnIapConsole.debug(
@@ -1108,6 +1119,12 @@ export const getStorefrontIOS: QueryField<'getStorefrontIOS'> = async () => {
1108
1119
 
1109
1120
  try {
1110
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
+ }
1111
1128
  return storefront;
1112
1129
  } catch (error) {
1113
1130
  RnIapConsole.error('Failed to get storefront:', error);
@@ -1122,35 +1139,50 @@ export const getStorefrontIOS: QueryField<'getStorefrontIOS'> = async () => {
1122
1139
  */
1123
1140
  export const getStorefront: QueryField<'getStorefront'> = async () => {
1124
1141
  if (Platform.OS !== 'ios' && !isAndroidStoreRuntime()) {
1125
- RnIapConsole.warn(
1126
- '[getStorefront] Storefront lookup is only supported on iOS, Android, and Vega OS.',
1127
- );
1128
- return '';
1142
+ throw createPurchaseError({
1143
+ code: ErrorCode.FeatureNotSupported,
1144
+ message: `Storefront lookup is not supported on ${Platform.OS}.`,
1145
+ });
1129
1146
  }
1130
1147
 
1131
1148
  const hasUnifiedMethod = typeof IAP.instance.getStorefront === 'function';
1132
1149
 
1133
- if (!hasUnifiedMethod && Platform.OS === 'ios') {
1134
- return getStorefrontIOS();
1135
- }
1136
-
1137
- if (!hasUnifiedMethod) {
1138
- RnIapConsole.warn(
1139
- '[getStorefront] Native getStorefront is not available on this build.',
1140
- );
1141
- 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
+ });
1142
1156
  }
1143
1157
 
1158
+ let storefront: string | null | undefined;
1144
1159
  try {
1145
- const storefront = await IAP.instance.getStorefront();
1146
- return storefront ?? '';
1160
+ storefront = hasUnifiedMethod
1161
+ ? await IAP.instance.getStorefront()
1162
+ : await getStorefrontIOS();
1147
1163
  } catch (error) {
1148
- RnIapConsole.error(
1164
+ const parsedError = parseErrorAndLogIfNeeded(
1149
1165
  `[getStorefront] Failed to get storefront on ${Platform.OS}:`,
1150
1166
  error,
1151
1167
  );
1152
- throw error;
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
+ });
1153
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;
1154
1186
  };
1155
1187
 
1156
1188
  /**
@@ -1851,7 +1883,7 @@ export const requestPurchase: MutationField<'requestPurchase'> = async (
1851
1883
  androidRequest.developerBillingOption;
1852
1884
  }
1853
1885
 
1854
- // One-time purchase offerToken (Android 7.0+)
1886
+ // One-time purchase offerToken (Android 8.0+)
1855
1887
  if (!isSubs) {
1856
1888
  const purchaseRequest = androidRequest as RequestPurchaseAndroidProps;
1857
1889
  if (purchaseRequest.offerToken) {
@@ -2415,19 +2447,7 @@ export const requestPurchaseOnPromotedProductIOS: MutationField<
2415
2447
  }
2416
2448
 
2417
2449
  try {
2418
- await IAP.instance.buyPromotedProductIOS();
2419
- const pending = await IAP.instance.getPendingTransactionsIOS();
2420
- const latest = pending.find((purchase) => purchase != null);
2421
- if (!latest) {
2422
- throw new Error('No promoted purchase available after request');
2423
- }
2424
-
2425
- const converted = convertNitroPurchaseToPurchase(latest);
2426
- if (converted.platform !== 'ios') {
2427
- throw new Error('Promoted purchase result not available for iOS');
2428
- }
2429
-
2430
- return true;
2450
+ return await IAP.instance.buyPromotedProductIOS();
2431
2451
  } catch (error) {
2432
2452
  const parsedError = parseErrorAndLogIfNeeded(
2433
2453
  '[requestPurchaseOnPromotedProductIOS] Failed:',
@@ -25,6 +25,7 @@ import type {HybridObject} from 'react-native-nitro-modules';
25
25
  // removing the types entirely.
26
26
  import type {
27
27
  ActiveSubscription,
28
+ AdvancedCommerceInfoIOS,
28
29
  AndroidSubscriptionOfferInput,
29
30
  DeepLinkOptions,
30
31
  InitConnectionConfig,
@@ -53,8 +54,12 @@ import type {
53
54
  RequestSubscriptionIosProps,
54
55
  UserChoiceBillingDetails,
55
56
  PaymentModeIOS,
57
+ PendingPurchaseUpdateAndroid,
58
+ RenewalCommitmentInfoIOS,
59
+ SubscriptionBillingPlanTypeIOS,
56
60
  SubscriptionProductReplacementParamsAndroid,
57
61
  SubResponseCodeAndroid,
62
+ TransactionCommitmentInfoIOS,
58
63
  WinBackOfferInputIOS,
59
64
  } from '../types';
60
65
 
@@ -236,7 +241,7 @@ export interface NitroRequestPurchaseAndroid {
236
241
  obfuscatedProfileId?: RequestSubscriptionAndroidProps['obfuscatedProfileId'];
237
242
  isOfferPersonalized?: RequestSubscriptionAndroidProps['isOfferPersonalized'];
238
243
  /**
239
- * Offer token for one-time purchase discounts (7.0+).
244
+ * Offer token for one-time purchase discounts (8.0+).
240
245
  * Pass the offerToken from oneTimePurchaseOfferDetailsAndroid or discountOffers
241
246
  * to apply a discount offer to the purchase.
242
247
  */
@@ -360,25 +365,13 @@ export interface NitroInAppMessageParamsAndroid {
360
365
  // ║ TYPES ║
361
366
  // ╚══════════════════════════════════════════════════════════════════════════╝
362
367
 
363
- /**
364
- * Subscription renewal information (iOS only)
365
- */
366
- export interface NitroSubscriptionRenewalInfo {
367
- autoRenewStatus: boolean;
368
- autoRenewPreference?: string | null;
369
- expirationReason?: number | null;
370
- gracePeriodExpirationDate?: number | null;
371
- currentProductID?: string | null;
372
- platform: string;
373
- }
374
-
375
368
  /**
376
369
  * Subscription status information (iOS only)
377
370
  */
378
371
  export interface NitroSubscriptionStatus {
379
372
  state: number;
380
373
  platform: string;
381
- renewalInfo?: NitroSubscriptionRenewalInfo | null;
374
+ renewalInfo?: NitroRenewalInfoIOS | null;
382
375
  }
383
376
 
384
377
  /**
@@ -390,6 +383,11 @@ export interface NitroPurchaseResult {
390
383
  code: string;
391
384
  message: string;
392
385
  purchaseToken?: string;
386
+ productId?: string;
387
+ productIds?: string[];
388
+ productType?: string;
389
+ isEmptyProductList?: boolean;
390
+ subResponseCodeAndroid?: SubResponseCodeAndroid;
393
391
  }
394
392
 
395
393
  export interface NitroBillingResultAndroid {
@@ -560,7 +558,7 @@ export interface NitroValidTimeWindowAndroid {
560
558
 
561
559
  /**
562
560
  * Android one-time purchase offer details
563
- * Available in Google Play Billing Library 7.0+
561
+ * Available in Google Play Billing Library 8.0+
564
562
  */
565
563
  export interface NitroOneTimePurchaseOfferDetail {
566
564
  discountDisplayInfo?: NitroDiscountDisplayInfoAndroid | null;
@@ -583,6 +581,8 @@ export interface NitroPurchase {
583
581
  productId: PurchaseCommon['productId'];
584
582
  transactionDate: PurchaseCommon['transactionDate'];
585
583
  purchaseToken?: PurchaseCommon['purchaseToken'];
584
+ currentPlanId?: PurchaseCommon['currentPlanId'];
585
+ ids?: PurchaseCommon['ids'];
586
586
  /** @deprecated Use store instead */
587
587
  platform: IapPlatform;
588
588
  /** Store where purchase was made */
@@ -591,6 +591,9 @@ export interface NitroPurchase {
591
591
  purchaseState: PurchaseCommon['purchaseState'];
592
592
  isAutoRenewing: PurchaseCommon['isAutoRenewing'];
593
593
  // iOS specific fields
594
+ advancedCommerceInfoIOS?: AdvancedCommerceInfoIOS | null;
595
+ billingPlanTypeIOS?: SubscriptionBillingPlanTypeIOS | null;
596
+ commitmentInfoIOS?: TransactionCommitmentInfoIOS | null;
594
597
  quantityIOS?: number | null;
595
598
  originalTransactionDateIOS?: number | null;
596
599
  originalTransactionIdentifierIOS?: string | null;
@@ -625,6 +628,7 @@ export interface NitroPurchase {
625
628
  obfuscatedProfileIdAndroid?: string | null;
626
629
  developerPayloadAndroid?: string | null;
627
630
  isSuspendedAndroid?: boolean | null;
631
+ pendingPurchaseUpdateAndroid?: PendingPurchaseUpdateAndroid | null;
628
632
  }
629
633
 
630
634
  /**
@@ -656,12 +660,14 @@ export interface NitroActiveSubscription {
656
660
  export interface NitroRenewalInfoIOS {
657
661
  willAutoRenew: boolean;
658
662
  autoRenewPreference?: string | null;
663
+ commitmentInfo?: RenewalCommitmentInfoIOS | null;
659
664
  pendingUpgradeProductId?: string | null;
660
665
  renewalDate?: number | null;
661
666
  expirationReason?: string | null;
662
667
  isInBillingRetry?: boolean | null;
663
668
  gracePeriodExpirationDate?: number | null;
664
669
  priceIncreaseStatus?: string | null;
670
+ renewalBillingPlanType?: SubscriptionBillingPlanTypeIOS | null;
665
671
  renewalOfferType?: string | null;
666
672
  renewalOfferId?: string | null;
667
673
  jsonRepresentation?: string | null;
@@ -880,10 +886,10 @@ export interface RnIap extends HybridObject<{ios: 'swift'; android: 'kotlin'}> {
880
886
 
881
887
  /**
882
888
  * Buy the promoted product from the App Store (iOS only)
883
- * @returns Promise<void>
889
+ * @returns Promise<boolean> - Whether a promoted product was available and the request was initiated
884
890
  * @platform iOS
885
891
  */
886
- buyPromotedProductIOS(): Promise<void>;
892
+ buyPromotedProductIOS(): Promise<boolean>;
887
893
 
888
894
  /**
889
895
  * Present the code redemption sheet for offer codes (iOS only)
@@ -940,7 +946,7 @@ export interface RnIap extends HybridObject<{ios: 'swift'; android: 'kotlin'}> {
940
946
 
941
947
  /**
942
948
  * Get the full StoreKit 2 transaction history as PurchaseIOS values.
943
- * Requires SK2ConsumableTransactionHistory Info.plist key for finished consumables (iOS 18+).
949
+ * Requires SKIncludeConsumableInAppPurchaseHistory Info.plist key for finished consumables (iOS 18+).
944
950
  * @returns Promise<NitroPurchase[]> - Array of all transactions
945
951
  * @platform iOS
946
952
  */
@@ -1188,7 +1194,7 @@ export interface RnIap extends HybridObject<{ios: 'swift'; android: 'kotlin'}> {
1188
1194
  *
1189
1195
  * Fires when a user's active subscription enters a state that needs attention
1190
1196
  * (payment method failed, card expired, etc.). Unifies:
1191
- * - StoreKit 2 `Message.Reason.billingIssue` (iOS 18+ / Mac Catalyst 18+)
1197
+ * - StoreKit 2 `Message.Reason.billingIssue` (iOS / Mac Catalyst 16.4+, visionOS 1.0+)
1192
1198
  * - Google Play Billing `Purchase.isSuspended` (Play Billing 8.1+)
1193
1199
  *
1194
1200
  * NOT fired on Meta Horizon (Billing 7.0 compat SDK lacks the suspended signal).