react-native-iap 13.0.4 → 14.0.0-rc.2

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 (381) hide show
  1. package/NitroIap.podspec +33 -0
  2. package/README.md +163 -51
  3. package/android/CMakeLists.txt +32 -0
  4. package/android/build.gradle +107 -138
  5. package/android/fix-prefab.gradle +51 -0
  6. package/android/gradle.properties +5 -13
  7. package/android/src/main/AndroidManifest.xml +1 -4
  8. package/android/src/main/cpp/cpp-adapter.cpp +6 -0
  9. package/android/src/main/java/com/margelo/nitro/iap/HybridRnIap.kt +843 -0
  10. package/android/src/main/java/com/margelo/nitro/iap/NitroIapPackage.java +33 -0
  11. package/android/src/main/java/com/margelo/nitro/iap/Types.kt +173 -0
  12. package/ios/Bridge.h +8 -0
  13. package/ios/ErrorUtils.swift +153 -0
  14. package/ios/HybridRnIap.swift +1326 -0
  15. package/ios/ProductStore.swift +33 -0
  16. package/ios/reactnativeiap.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  17. package/ios/reactnativeiap.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  18. package/lib/module/helpers/subscription.js +56 -0
  19. package/lib/module/helpers/subscription.js.map +1 -0
  20. package/lib/module/hooks/useIAP.js +175 -123
  21. package/lib/module/hooks/useIAP.js.map +1 -1
  22. package/lib/module/index.js +1015 -9
  23. package/lib/module/index.js.map +1 -1
  24. package/lib/module/package.json +1 -0
  25. package/lib/module/specs/RnIap.nitro.js +4 -0
  26. package/lib/{commonjs/modules/common.js.map → module/specs/RnIap.nitro.js.map} +1 -1
  27. package/lib/module/types.js +187 -0
  28. package/lib/module/types.js.map +1 -0
  29. package/lib/module/utils/error.js +80 -0
  30. package/lib/module/utils/error.js.map +1 -0
  31. package/lib/module/utils/type-bridge.js +202 -0
  32. package/lib/module/utils/type-bridge.js.map +1 -0
  33. package/lib/typescript/package.json +1 -0
  34. package/lib/typescript/plugin/src/withIAP.d.ts +2 -7
  35. package/lib/typescript/plugin/src/withIAP.d.ts.map +1 -1
  36. package/lib/typescript/scripts/check-nitro-versions.d.ts +3 -0
  37. package/lib/typescript/scripts/check-nitro-versions.d.ts.map +1 -0
  38. package/lib/typescript/src/helpers/subscription.d.ts +14 -0
  39. package/lib/typescript/src/helpers/subscription.d.ts.map +1 -0
  40. package/lib/typescript/src/hooks/useIAP.d.ts +42 -26
  41. package/lib/typescript/src/hooks/useIAP.d.ts.map +1 -1
  42. package/lib/typescript/src/index.d.ts +356 -8
  43. package/lib/typescript/src/index.d.ts.map +1 -1
  44. package/lib/typescript/src/specs/RnIap.nitro.d.ts +404 -0
  45. package/lib/typescript/src/specs/RnIap.nitro.d.ts.map +1 -0
  46. package/lib/typescript/src/types.d.ts +544 -0
  47. package/lib/typescript/src/types.d.ts.map +1 -0
  48. package/lib/typescript/src/utils/error.d.ts +30 -0
  49. package/lib/typescript/src/utils/error.d.ts.map +1 -0
  50. package/lib/typescript/src/utils/type-bridge.d.ts +40 -0
  51. package/lib/typescript/src/utils/type-bridge.d.ts.map +1 -0
  52. package/nitro.json +17 -0
  53. package/nitrogen/generated/android/NitroIap+autolinking.cmake +80 -0
  54. package/nitrogen/generated/android/NitroIap+autolinking.gradle +27 -0
  55. package/nitrogen/generated/android/NitroIapOnLoad.cpp +50 -0
  56. package/nitrogen/generated/android/NitroIapOnLoad.hpp +25 -0
  57. package/nitrogen/generated/android/c++/JFunc_void_NitroProduct.hpp +78 -0
  58. package/nitrogen/generated/android/c++/JFunc_void_NitroPurchase.hpp +78 -0
  59. package/nitrogen/generated/android/c++/JFunc_void_NitroPurchaseResult.hpp +78 -0
  60. package/nitrogen/generated/android/c++/JHybridRnIapSpec.cpp +577 -0
  61. package/nitrogen/generated/android/c++/JHybridRnIapSpec.hpp +93 -0
  62. package/nitrogen/generated/android/c++/JNitroAndroidReceiptValidationOptions.hpp +66 -0
  63. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesAndroidOptions.hpp +54 -0
  64. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesIosOptions.hpp +65 -0
  65. package/nitrogen/generated/android/c++/JNitroAvailablePurchasesOptions.hpp +62 -0
  66. package/nitrogen/generated/android/c++/JNitroFinishTransactionAndroidParams.hpp +58 -0
  67. package/nitrogen/generated/android/c++/JNitroFinishTransactionIosParams.hpp +53 -0
  68. package/nitrogen/generated/android/c++/JNitroFinishTransactionParams.hpp +62 -0
  69. package/nitrogen/generated/android/c++/JNitroProduct.hpp +154 -0
  70. package/nitrogen/generated/android/c++/JNitroPurchase.hpp +122 -0
  71. package/nitrogen/generated/android/c++/JNitroPurchaseRequest.hpp +66 -0
  72. package/nitrogen/generated/android/c++/JNitroPurchaseResult.hpp +70 -0
  73. package/nitrogen/generated/android/c++/JNitroReceiptValidationParams.hpp +60 -0
  74. package/nitrogen/generated/android/c++/JNitroReceiptValidationResultAndroid.hpp +122 -0
  75. package/nitrogen/generated/android/c++/JNitroReceiptValidationResultIOS.hpp +68 -0
  76. package/nitrogen/generated/android/c++/JNitroRequestPurchaseAndroid.hpp +115 -0
  77. package/nitrogen/generated/android/c++/JNitroRequestPurchaseIos.hpp +84 -0
  78. package/nitrogen/generated/android/c++/JNitroSubscriptionOffer.hpp +57 -0
  79. package/nitrogen/generated/android/c++/JNitroSubscriptionRenewalInfo.hpp +74 -0
  80. package/nitrogen/generated/android/c++/JNitroSubscriptionStatus.hpp +64 -0
  81. package/nitrogen/generated/android/c++/JVariant_Boolean_NitroPurchaseResult.cpp +26 -0
  82. package/nitrogen/generated/android/c++/JVariant_Boolean_NitroPurchaseResult.hpp +71 -0
  83. package/nitrogen/generated/android/c++/JVariant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.cpp +26 -0
  84. package/nitrogen/generated/android/c++/JVariant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.hpp +75 -0
  85. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Func_void_NitroProduct.kt +81 -0
  86. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Func_void_NitroPurchase.kt +81 -0
  87. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Func_void_NitroPurchaseResult.kt +81 -0
  88. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/HybridRnIapSpec.kt +198 -0
  89. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAndroidReceiptValidationOptions.kt +38 -0
  90. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesAndroidOptions.kt +29 -0
  91. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesIosOptions.kt +38 -0
  92. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesOptions.kt +32 -0
  93. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionAndroidParams.kt +32 -0
  94. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionIosParams.kt +29 -0
  95. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionParams.kt +32 -0
  96. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroIapOnLoad.kt +35 -0
  97. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroProduct.kt +104 -0
  98. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchase.kt +80 -0
  99. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchaseRequest.kt +32 -0
  100. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchaseResult.kt +41 -0
  101. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationParams.kt +32 -0
  102. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationResultAndroid.kt +80 -0
  103. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationResultIOS.kt +38 -0
  104. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRequestPurchaseAndroid.kt +47 -0
  105. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRequestPurchaseIos.kt +41 -0
  106. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroSubscriptionOffer.kt +32 -0
  107. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroSubscriptionRenewalInfo.kt +44 -0
  108. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroSubscriptionStatus.kt +35 -0
  109. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_Boolean_NitroPurchaseResult.kt +42 -0
  110. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.kt +42 -0
  111. package/nitrogen/generated/ios/NitroIap+autolinking.rb +60 -0
  112. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.cpp +152 -0
  113. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.hpp +1061 -0
  114. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Umbrella.hpp +107 -0
  115. package/nitrogen/generated/ios/NitroIapAutolinking.mm +33 -0
  116. package/nitrogen/generated/ios/NitroIapAutolinking.swift +25 -0
  117. package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.cpp +11 -0
  118. package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.hpp +355 -0
  119. package/nitrogen/generated/ios/swift/Func_void.swift +47 -0
  120. package/nitrogen/generated/ios/swift/Func_void_NitroProduct.swift +47 -0
  121. package/nitrogen/generated/ios/swift/Func_void_NitroPurchase.swift +47 -0
  122. package/nitrogen/generated/ios/swift/Func_void_NitroPurchaseResult.swift +47 -0
  123. package/nitrogen/generated/ios/swift/Func_void_bool.swift +47 -0
  124. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +47 -0
  125. package/nitrogen/generated/ios/swift/Func_void_std__optional_NitroProduct_.swift +54 -0
  126. package/nitrogen/generated/ios/swift/Func_void_std__optional_NitroPurchase_.swift +54 -0
  127. package/nitrogen/generated/ios/swift/Func_void_std__optional_std__string_.swift +54 -0
  128. package/nitrogen/generated/ios/swift/Func_void_std__optional_std__vector_NitroSubscriptionStatus__.swift +54 -0
  129. package/nitrogen/generated/ios/swift/Func_void_std__string.swift +47 -0
  130. package/nitrogen/generated/ios/swift/Func_void_std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid_.swift +59 -0
  131. package/nitrogen/generated/ios/swift/Func_void_std__variant_bool__NitroPurchaseResult_.swift +59 -0
  132. package/nitrogen/generated/ios/swift/Func_void_std__vector_NitroProduct_.swift +47 -0
  133. package/nitrogen/generated/ios/swift/Func_void_std__vector_NitroPurchase_.swift +47 -0
  134. package/nitrogen/generated/ios/swift/HybridRnIapSpec.swift +78 -0
  135. package/nitrogen/generated/ios/swift/HybridRnIapSpec_cxx.swift +750 -0
  136. package/nitrogen/generated/ios/swift/NitroAndroidReceiptValidationOptions.swift +80 -0
  137. package/nitrogen/generated/ios/swift/NitroAvailablePurchasesAndroidOptions.swift +54 -0
  138. package/nitrogen/generated/ios/swift/NitroAvailablePurchasesIosOptions.swift +116 -0
  139. package/nitrogen/generated/ios/swift/NitroAvailablePurchasesOptions.swift +84 -0
  140. package/nitrogen/generated/ios/swift/NitroFinishTransactionAndroidParams.swift +58 -0
  141. package/nitrogen/generated/ios/swift/NitroFinishTransactionIosParams.swift +35 -0
  142. package/nitrogen/generated/ios/swift/NitroFinishTransactionParams.swift +84 -0
  143. package/nitrogen/generated/ios/swift/NitroProduct.swift +653 -0
  144. package/nitrogen/generated/ios/swift/NitroPurchase.swift +453 -0
  145. package/nitrogen/generated/ios/swift/NitroPurchaseRequest.swift +84 -0
  146. package/nitrogen/generated/ios/swift/NitroPurchaseResult.swift +117 -0
  147. package/nitrogen/generated/ios/swift/NitroReceiptValidationParams.swift +65 -0
  148. package/nitrogen/generated/ios/swift/NitroReceiptValidationResultAndroid.swift +258 -0
  149. package/nitrogen/generated/ios/swift/NitroReceiptValidationResultIOS.swift +87 -0
  150. package/nitrogen/generated/ios/swift/NitroRequestPurchaseAndroid.swift +225 -0
  151. package/nitrogen/generated/ios/swift/NitroRequestPurchaseIos.swift +161 -0
  152. package/nitrogen/generated/ios/swift/NitroSubscriptionOffer.swift +46 -0
  153. package/nitrogen/generated/ios/swift/NitroSubscriptionRenewalInfo.swift +152 -0
  154. package/nitrogen/generated/ios/swift/NitroSubscriptionStatus.swift +76 -0
  155. package/nitrogen/generated/ios/swift/Variant_Bool_NitroPurchaseResult.swift +18 -0
  156. package/nitrogen/generated/ios/swift/Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.swift +18 -0
  157. package/nitrogen/generated/shared/c++/HybridRnIapSpec.cpp +50 -0
  158. package/nitrogen/generated/shared/c++/HybridRnIapSpec.hpp +125 -0
  159. package/nitrogen/generated/shared/c++/NitroAndroidReceiptValidationOptions.hpp +80 -0
  160. package/nitrogen/generated/shared/c++/NitroAvailablePurchasesAndroidOptions.hpp +68 -0
  161. package/nitrogen/generated/shared/c++/NitroAvailablePurchasesIosOptions.hpp +79 -0
  162. package/nitrogen/generated/shared/c++/NitroAvailablePurchasesOptions.hpp +76 -0
  163. package/nitrogen/generated/shared/c++/NitroFinishTransactionAndroidParams.hpp +72 -0
  164. package/nitrogen/generated/shared/c++/NitroFinishTransactionIosParams.hpp +67 -0
  165. package/nitrogen/generated/shared/c++/NitroFinishTransactionParams.hpp +76 -0
  166. package/nitrogen/generated/shared/c++/NitroProduct.hpp +168 -0
  167. package/nitrogen/generated/shared/c++/NitroPurchase.hpp +136 -0
  168. package/nitrogen/generated/shared/c++/NitroPurchaseRequest.hpp +76 -0
  169. package/nitrogen/generated/shared/c++/NitroPurchaseResult.hpp +84 -0
  170. package/nitrogen/generated/shared/c++/NitroReceiptValidationParams.hpp +74 -0
  171. package/nitrogen/generated/shared/c++/NitroReceiptValidationResultAndroid.hpp +136 -0
  172. package/nitrogen/generated/shared/c++/NitroReceiptValidationResultIOS.hpp +82 -0
  173. package/nitrogen/generated/shared/c++/NitroRequestPurchaseAndroid.hpp +95 -0
  174. package/nitrogen/generated/shared/c++/NitroRequestPurchaseIos.hpp +85 -0
  175. package/nitrogen/generated/shared/c++/NitroSubscriptionOffer.hpp +71 -0
  176. package/nitrogen/generated/shared/c++/NitroSubscriptionRenewalInfo.hpp +88 -0
  177. package/nitrogen/generated/shared/c++/NitroSubscriptionStatus.hpp +78 -0
  178. package/package.json +144 -104
  179. package/plugin/build/src/withIAP.d.ts +3 -0
  180. package/plugin/build/src/withIAP.js +81 -0
  181. package/plugin/build/tsconfig.tsbuildinfo +1 -0
  182. package/plugin/build/withIAP.d.ts +2 -7
  183. package/plugin/build/withIAP.js +62 -51
  184. package/plugin/src/withIAP.ts +119 -0
  185. package/plugin/tsconfig.json +18 -0
  186. package/plugin/tsconfig.tsbuildinfo +1 -0
  187. package/src/helpers/subscription.ts +65 -0
  188. package/src/hooks/useIAP.ts +361 -222
  189. package/src/index.ts +1194 -9
  190. package/src/specs/RnIap.nitro.ts +501 -0
  191. package/src/types.ts +680 -0
  192. package/src/utils/error.ts +97 -0
  193. package/src/utils/type-bridge.ts +209 -0
  194. package/LICENSE +0 -21
  195. package/RNIap.podspec +0 -36
  196. package/android/src/amazon/AndroidManifest.xml +0 -14
  197. package/android/src/amazon/java/com/dooboolab/rniap/EventSender.kt +0 -10
  198. package/android/src/amazon/java/com/dooboolab/rniap/PurchasingServiceProxy.kt +0 -29
  199. package/android/src/amazon/java/com/dooboolab/rniap/PurchasingServiceProxyAmazonImpl.kt +0 -31
  200. package/android/src/amazon/java/com/dooboolab/rniap/RNIapActivityListener.kt +0 -55
  201. package/android/src/amazon/java/com/dooboolab/rniap/RNIapAmazonListener.kt +0 -325
  202. package/android/src/amazon/java/com/dooboolab/rniap/RNIapAmazonModule.kt +0 -244
  203. package/android/src/amazon/java/com/dooboolab/rniap/RNIapPackage.kt +0 -17
  204. package/android/src/amazon/java/com/dooboolab/rniap/modifysubscription/RNIapAmazonModifySubscriptionListener.kt +0 -88
  205. package/android/src/amazon/java/com/dooboolab/rniap/utils/Extensions.kt +0 -22
  206. package/android/src/main/java/com/dooboolab/rniap/PromiseUtils.kt +0 -62
  207. package/android/src/main/java/com/dooboolab/rniap/PromiseUtlis.kt +0 -43
  208. package/android/src/play/java/com/dooboolab/rniap/PlayUtils.kt +0 -114
  209. package/android/src/play/java/com/dooboolab/rniap/RNIapActivityListener.kt +0 -15
  210. package/android/src/play/java/com/dooboolab/rniap/RNIapModule.kt +0 -911
  211. package/android/src/play/java/com/dooboolab/rniap/RNIapPackage.kt +0 -17
  212. package/android/src/testAmazon/java/com/dooboolab/rniap/RNIapAmazonModuleTest.kt +0 -170
  213. package/app.plugin.js +0 -1
  214. package/ios/IapSerializationUtils.swift +0 -290
  215. package/ios/IapTypes.swift +0 -56
  216. package/ios/IapUtils.swift +0 -40
  217. package/ios/LatestPromiseKeeper.swift +0 -52
  218. package/ios/RNIapIos-Bridging-Header.h +0 -2
  219. package/ios/RNIapIos.m +0 -69
  220. package/ios/RNIapIos.swift +0 -868
  221. package/ios/RNIapIos.xcodeproj/project.pbxproj +0 -289
  222. package/ios/RNIapIosSk2.m +0 -126
  223. package/ios/RNIapIosSk2.swift +0 -1413
  224. package/ios/ThreadSafe.swift +0 -18
  225. package/lib/commonjs/eventEmitter.js +0 -195
  226. package/lib/commonjs/eventEmitter.js.map +0 -1
  227. package/lib/commonjs/hooks/index.js +0 -17
  228. package/lib/commonjs/hooks/index.js.map +0 -1
  229. package/lib/commonjs/hooks/useIAP.js +0 -203
  230. package/lib/commonjs/hooks/useIAP.js.map +0 -1
  231. package/lib/commonjs/hooks/withIAPContext.js +0 -95
  232. package/lib/commonjs/hooks/withIAPContext.js.map +0 -1
  233. package/lib/commonjs/iap.js +0 -836
  234. package/lib/commonjs/iap.js.map +0 -1
  235. package/lib/commonjs/index.js +0 -105
  236. package/lib/commonjs/index.js.map +0 -1
  237. package/lib/commonjs/internal/enhancedFetch.js +0 -26
  238. package/lib/commonjs/internal/enhancedFetch.js.map +0 -1
  239. package/lib/commonjs/internal/fillProductsWithAdditionalData.js +0 -50
  240. package/lib/commonjs/internal/fillProductsWithAdditionalData.js.map +0 -1
  241. package/lib/commonjs/internal/index.js +0 -39
  242. package/lib/commonjs/internal/index.js.map +0 -1
  243. package/lib/commonjs/internal/platform.js +0 -119
  244. package/lib/commonjs/internal/platform.js.map +0 -1
  245. package/lib/commonjs/modules/amazon.js +0 -50
  246. package/lib/commonjs/modules/amazon.js.map +0 -1
  247. package/lib/commonjs/modules/android.js +0 -92
  248. package/lib/commonjs/modules/android.js.map +0 -1
  249. package/lib/commonjs/modules/common.js +0 -2
  250. package/lib/commonjs/modules/index.js +0 -50
  251. package/lib/commonjs/modules/index.js.map +0 -1
  252. package/lib/commonjs/modules/ios.js +0 -160
  253. package/lib/commonjs/modules/ios.js.map +0 -1
  254. package/lib/commonjs/modules/iosSk2.js +0 -113
  255. package/lib/commonjs/modules/iosSk2.js.map +0 -1
  256. package/lib/commonjs/purchaseError.js +0 -170
  257. package/lib/commonjs/purchaseError.js.map +0 -1
  258. package/lib/commonjs/types/amazon.js +0 -2
  259. package/lib/commonjs/types/amazon.js.map +0 -1
  260. package/lib/commonjs/types/android.js +0 -67
  261. package/lib/commonjs/types/android.js.map +0 -1
  262. package/lib/commonjs/types/apple.js +0 -24
  263. package/lib/commonjs/types/apple.js.map +0 -1
  264. package/lib/commonjs/types/appleSk2.js +0 -137
  265. package/lib/commonjs/types/appleSk2.js.map +0 -1
  266. package/lib/commonjs/types/index.js +0 -67
  267. package/lib/commonjs/types/index.js.map +0 -1
  268. package/lib/commonjs/utils/errorMapping.js +0 -83
  269. package/lib/commonjs/utils/errorMapping.js.map +0 -1
  270. package/lib/commonjs/utils/typeGuards.js +0 -74
  271. package/lib/commonjs/utils/typeGuards.js.map +0 -1
  272. package/lib/module/eventEmitter.js +0 -185
  273. package/lib/module/eventEmitter.js.map +0 -1
  274. package/lib/module/hooks/index.js +0 -2
  275. package/lib/module/hooks/index.js.map +0 -1
  276. package/lib/module/hooks/withIAPContext.js +0 -86
  277. package/lib/module/hooks/withIAPContext.js.map +0 -1
  278. package/lib/module/iap.js +0 -805
  279. package/lib/module/iap.js.map +0 -1
  280. package/lib/module/internal/enhancedFetch.js +0 -19
  281. package/lib/module/internal/enhancedFetch.js.map +0 -1
  282. package/lib/module/internal/fillProductsWithAdditionalData.js +0 -43
  283. package/lib/module/internal/fillProductsWithAdditionalData.js.map +0 -1
  284. package/lib/module/internal/index.js +0 -4
  285. package/lib/module/internal/index.js.map +0 -1
  286. package/lib/module/internal/platform.js +0 -102
  287. package/lib/module/internal/platform.js.map +0 -1
  288. package/lib/module/modules/amazon.js +0 -42
  289. package/lib/module/modules/amazon.js.map +0 -1
  290. package/lib/module/modules/android.js +0 -81
  291. package/lib/module/modules/android.js.map +0 -1
  292. package/lib/module/modules/common.js +0 -2
  293. package/lib/module/modules/common.js.map +0 -1
  294. package/lib/module/modules/index.js +0 -5
  295. package/lib/module/modules/index.js.map +0 -1
  296. package/lib/module/modules/ios.js +0 -145
  297. package/lib/module/modules/ios.js.map +0 -1
  298. package/lib/module/modules/iosSk2.js +0 -96
  299. package/lib/module/modules/iosSk2.js.map +0 -1
  300. package/lib/module/purchaseError.js +0 -164
  301. package/lib/module/purchaseError.js.map +0 -1
  302. package/lib/module/types/amazon.js +0 -2
  303. package/lib/module/types/amazon.js.map +0 -1
  304. package/lib/module/types/android.js +0 -63
  305. package/lib/module/types/android.js.map +0 -1
  306. package/lib/module/types/apple.js +0 -17
  307. package/lib/module/types/apple.js.map +0 -1
  308. package/lib/module/types/appleSk2.js +0 -129
  309. package/lib/module/types/appleSk2.js.map +0 -1
  310. package/lib/module/types/index.js +0 -75
  311. package/lib/module/types/index.js.map +0 -1
  312. package/lib/module/utils/errorMapping.js +0 -75
  313. package/lib/module/utils/errorMapping.js.map +0 -1
  314. package/lib/module/utils/typeGuards.js +0 -61
  315. package/lib/module/utils/typeGuards.js.map +0 -1
  316. package/lib/typescript/src/eventEmitter.d.ts +0 -151
  317. package/lib/typescript/src/eventEmitter.d.ts.map +0 -1
  318. package/lib/typescript/src/hooks/index.d.ts +0 -2
  319. package/lib/typescript/src/hooks/index.d.ts.map +0 -1
  320. package/lib/typescript/src/hooks/withIAPContext.d.ts +0 -27
  321. package/lib/typescript/src/hooks/withIAPContext.d.ts.map +0 -1
  322. package/lib/typescript/src/iap.d.ts +0 -503
  323. package/lib/typescript/src/iap.d.ts.map +0 -1
  324. package/lib/typescript/src/internal/enhancedFetch.d.ts +0 -6
  325. package/lib/typescript/src/internal/enhancedFetch.d.ts.map +0 -1
  326. package/lib/typescript/src/internal/fillProductsWithAdditionalData.d.ts +0 -7
  327. package/lib/typescript/src/internal/fillProductsWithAdditionalData.d.ts.map +0 -1
  328. package/lib/typescript/src/internal/index.d.ts +0 -4
  329. package/lib/typescript/src/internal/index.d.ts.map +0 -1
  330. package/lib/typescript/src/internal/platform.d.ts +0 -27
  331. package/lib/typescript/src/internal/platform.d.ts.map +0 -1
  332. package/lib/typescript/src/modules/amazon.d.ts +0 -55
  333. package/lib/typescript/src/modules/amazon.d.ts.map +0 -1
  334. package/lib/typescript/src/modules/android.d.ts +0 -74
  335. package/lib/typescript/src/modules/android.d.ts.map +0 -1
  336. package/lib/typescript/src/modules/common.d.ts +0 -14
  337. package/lib/typescript/src/modules/common.d.ts.map +0 -1
  338. package/lib/typescript/src/modules/index.d.ts +0 -5
  339. package/lib/typescript/src/modules/index.d.ts.map +0 -1
  340. package/lib/typescript/src/modules/ios.d.ts +0 -117
  341. package/lib/typescript/src/modules/ios.d.ts.map +0 -1
  342. package/lib/typescript/src/modules/iosSk2.d.ts +0 -140
  343. package/lib/typescript/src/modules/iosSk2.d.ts.map +0 -1
  344. package/lib/typescript/src/purchaseError.d.ts +0 -133
  345. package/lib/typescript/src/purchaseError.d.ts.map +0 -1
  346. package/lib/typescript/src/types/amazon.d.ts +0 -33
  347. package/lib/typescript/src/types/amazon.d.ts.map +0 -1
  348. package/lib/typescript/src/types/android.d.ts +0 -66
  349. package/lib/typescript/src/types/android.d.ts.map +0 -1
  350. package/lib/typescript/src/types/apple.d.ts +0 -27
  351. package/lib/typescript/src/types/apple.d.ts.map +0 -1
  352. package/lib/typescript/src/types/appleSk2.d.ts +0 -129
  353. package/lib/typescript/src/types/appleSk2.d.ts.map +0 -1
  354. package/lib/typescript/src/types/index.d.ts +0 -302
  355. package/lib/typescript/src/types/index.d.ts.map +0 -1
  356. package/lib/typescript/src/utils/errorMapping.d.ts +0 -29
  357. package/lib/typescript/src/utils/errorMapping.d.ts.map +0 -1
  358. package/lib/typescript/src/utils/typeGuards.d.ts +0 -53
  359. package/lib/typescript/src/utils/typeGuards.d.ts.map +0 -1
  360. package/src/eventEmitter.ts +0 -212
  361. package/src/hooks/index.ts +0 -1
  362. package/src/hooks/withIAPContext.tsx +0 -179
  363. package/src/iap.ts +0 -1046
  364. package/src/internal/enhancedFetch.ts +0 -25
  365. package/src/internal/fillProductsWithAdditionalData.ts +0 -47
  366. package/src/internal/index.ts +0 -3
  367. package/src/internal/platform.ts +0 -135
  368. package/src/modules/amazon.ts +0 -94
  369. package/src/modules/android.ts +0 -179
  370. package/src/modules/common.ts +0 -16
  371. package/src/modules/index.ts +0 -4
  372. package/src/modules/ios.ts +0 -229
  373. package/src/modules/iosSk2.ts +0 -194
  374. package/src/purchaseError.ts +0 -196
  375. package/src/types/amazon.ts +0 -40
  376. package/src/types/android.ts +0 -89
  377. package/src/types/apple.ts +0 -44
  378. package/src/types/appleSk2.ts +0 -275
  379. package/src/types/index.ts +0 -379
  380. package/src/utils/errorMapping.ts +0 -88
  381. package/src/utils/typeGuards.ts +0 -90
@@ -0,0 +1,750 @@
1
+ ///
2
+ /// HybridRnIapSpec_cxx.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ import Foundation
9
+ import NitroModules
10
+
11
+ /**
12
+ * A class implementation that bridges HybridRnIapSpec over to C++.
13
+ * In C++, we cannot use Swift protocols - so we need to wrap it in a class to make it strongly defined.
14
+ *
15
+ * Also, some Swift types need to be bridged with special handling:
16
+ * - Enums need to be wrapped in Structs, otherwise they cannot be accessed bi-directionally (Swift bug: https://github.com/swiftlang/swift/issues/75330)
17
+ * - Other HybridObjects need to be wrapped/unwrapped from the Swift TCxx wrapper
18
+ * - Throwing methods need to be wrapped with a Result<T, Error> type, as exceptions cannot be propagated to C++
19
+ */
20
+ open class HybridRnIapSpec_cxx {
21
+ /**
22
+ * The Swift <> C++ bridge's namespace (`margelo::nitro::iap::bridge::swift`)
23
+ * from `NitroIap-Swift-Cxx-Bridge.hpp`.
24
+ * This contains specialized C++ templates, and C++ helper functions that can be accessed from Swift.
25
+ */
26
+ public typealias bridge = margelo.nitro.iap.bridge.swift
27
+
28
+ /**
29
+ * Holds an instance of the `HybridRnIapSpec` Swift protocol.
30
+ */
31
+ private var __implementation: any HybridRnIapSpec
32
+
33
+ /**
34
+ * Holds a weak pointer to the C++ class that wraps the Swift class.
35
+ */
36
+ private var __cxxPart: bridge.std__weak_ptr_HybridRnIapSpec_
37
+
38
+ /**
39
+ * Create a new `HybridRnIapSpec_cxx` that wraps the given `HybridRnIapSpec`.
40
+ * All properties and methods bridge to C++ types.
41
+ */
42
+ public init(_ implementation: any HybridRnIapSpec) {
43
+ self.__implementation = implementation
44
+ self.__cxxPart = .init()
45
+ /* no base class */
46
+ }
47
+
48
+ /**
49
+ * Get the actual `HybridRnIapSpec` instance this class wraps.
50
+ */
51
+ @inline(__always)
52
+ public func getHybridRnIapSpec() -> any HybridRnIapSpec {
53
+ return __implementation
54
+ }
55
+
56
+ /**
57
+ * Casts this instance to a retained unsafe raw pointer.
58
+ * This acquires one additional strong reference on the object!
59
+ */
60
+ public func toUnsafe() -> UnsafeMutableRawPointer {
61
+ return Unmanaged.passRetained(self).toOpaque()
62
+ }
63
+
64
+ /**
65
+ * Casts an unsafe pointer to a `HybridRnIapSpec_cxx`.
66
+ * The pointer has to be a retained opaque `Unmanaged<HybridRnIapSpec_cxx>`.
67
+ * This removes one strong reference from the object!
68
+ */
69
+ public class func fromUnsafe(_ pointer: UnsafeMutableRawPointer) -> HybridRnIapSpec_cxx {
70
+ return Unmanaged<HybridRnIapSpec_cxx>.fromOpaque(pointer).takeRetainedValue()
71
+ }
72
+
73
+ /**
74
+ * Gets (or creates) the C++ part of this Hybrid Object.
75
+ * The C++ part is a `std::shared_ptr<HybridRnIapSpec>`.
76
+ */
77
+ public func getCxxPart() -> bridge.std__shared_ptr_HybridRnIapSpec_ {
78
+ let cachedCxxPart = self.__cxxPart.lock()
79
+ if cachedCxxPart.__convertToBool() {
80
+ return cachedCxxPart
81
+ } else {
82
+ let newCxxPart = bridge.create_std__shared_ptr_HybridRnIapSpec_(self.toUnsafe())
83
+ __cxxPart = bridge.weakify_std__shared_ptr_HybridRnIapSpec_(newCxxPart)
84
+ return newCxxPart
85
+ }
86
+ }
87
+
88
+
89
+
90
+ /**
91
+ * Get the memory size of the Swift class (plus size of any other allocations)
92
+ * so the JS VM can properly track it and garbage-collect the JS object if needed.
93
+ */
94
+ @inline(__always)
95
+ public var memorySize: Int {
96
+ return MemoryHelper.getSizeOf(self.__implementation) + self.__implementation.memorySize
97
+ }
98
+
99
+ /**
100
+ * Call dispose() on the Swift class.
101
+ * This _may_ be called manually from JS.
102
+ */
103
+ @inline(__always)
104
+ public func dispose() {
105
+ self.__implementation.dispose()
106
+ }
107
+
108
+ // Properties
109
+
110
+
111
+ // Methods
112
+ @inline(__always)
113
+ public final func initConnection() -> bridge.Result_std__shared_ptr_Promise_bool___ {
114
+ do {
115
+ let __result = try self.__implementation.initConnection()
116
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_bool__ in
117
+ let __promise = bridge.create_std__shared_ptr_Promise_bool__()
118
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_bool__(__promise)
119
+ __result
120
+ .then({ __result in __promiseHolder.resolve(__result) })
121
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
122
+ return __promise
123
+ }()
124
+ return bridge.create_Result_std__shared_ptr_Promise_bool___(__resultCpp)
125
+ } catch (let __error) {
126
+ let __exceptionPtr = __error.toCpp()
127
+ return bridge.create_Result_std__shared_ptr_Promise_bool___(__exceptionPtr)
128
+ }
129
+ }
130
+
131
+ @inline(__always)
132
+ public final func endConnection() -> bridge.Result_std__shared_ptr_Promise_bool___ {
133
+ do {
134
+ let __result = try self.__implementation.endConnection()
135
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_bool__ in
136
+ let __promise = bridge.create_std__shared_ptr_Promise_bool__()
137
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_bool__(__promise)
138
+ __result
139
+ .then({ __result in __promiseHolder.resolve(__result) })
140
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
141
+ return __promise
142
+ }()
143
+ return bridge.create_Result_std__shared_ptr_Promise_bool___(__resultCpp)
144
+ } catch (let __error) {
145
+ let __exceptionPtr = __error.toCpp()
146
+ return bridge.create_Result_std__shared_ptr_Promise_bool___(__exceptionPtr)
147
+ }
148
+ }
149
+
150
+ @inline(__always)
151
+ public final func fetchProducts(skus: bridge.std__vector_std__string_, type: std.string) -> bridge.Result_std__shared_ptr_Promise_std__vector_NitroProduct____ {
152
+ do {
153
+ let __result = try self.__implementation.fetchProducts(skus: skus.map({ __item in String(__item) }), type: String(type))
154
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__vector_NitroProduct___ in
155
+ let __promise = bridge.create_std__shared_ptr_Promise_std__vector_NitroProduct___()
156
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__vector_NitroProduct___(__promise)
157
+ __result
158
+ .then({ __result in __promiseHolder.resolve({ () -> bridge.std__vector_NitroProduct_ in
159
+ var __vector = bridge.create_std__vector_NitroProduct_(__result.count)
160
+ for __item in __result {
161
+ __vector.push_back(__item)
162
+ }
163
+ return __vector
164
+ }()) })
165
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
166
+ return __promise
167
+ }()
168
+ return bridge.create_Result_std__shared_ptr_Promise_std__vector_NitroProduct____(__resultCpp)
169
+ } catch (let __error) {
170
+ let __exceptionPtr = __error.toCpp()
171
+ return bridge.create_Result_std__shared_ptr_Promise_std__vector_NitroProduct____(__exceptionPtr)
172
+ }
173
+ }
174
+
175
+ @inline(__always)
176
+ public final func requestPurchase(request: NitroPurchaseRequest) -> bridge.Result_std__shared_ptr_Promise_void___ {
177
+ do {
178
+ let __result = try self.__implementation.requestPurchase(request: request)
179
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
180
+ let __promise = bridge.create_std__shared_ptr_Promise_void__()
181
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
182
+ __result
183
+ .then({ __result in __promiseHolder.resolve() })
184
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
185
+ return __promise
186
+ }()
187
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
188
+ } catch (let __error) {
189
+ let __exceptionPtr = __error.toCpp()
190
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
191
+ }
192
+ }
193
+
194
+ @inline(__always)
195
+ public final func getAvailablePurchases(options: bridge.std__optional_NitroAvailablePurchasesOptions_) -> bridge.Result_std__shared_ptr_Promise_std__vector_NitroPurchase____ {
196
+ do {
197
+ let __result = try self.__implementation.getAvailablePurchases(options: { () -> NitroAvailablePurchasesOptions? in
198
+ if bridge.has_value_std__optional_NitroAvailablePurchasesOptions_(options) {
199
+ let __unwrapped = bridge.get_std__optional_NitroAvailablePurchasesOptions_(options)
200
+ return __unwrapped
201
+ } else {
202
+ return nil
203
+ }
204
+ }())
205
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__vector_NitroPurchase___ in
206
+ let __promise = bridge.create_std__shared_ptr_Promise_std__vector_NitroPurchase___()
207
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__vector_NitroPurchase___(__promise)
208
+ __result
209
+ .then({ __result in __promiseHolder.resolve({ () -> bridge.std__vector_NitroPurchase_ in
210
+ var __vector = bridge.create_std__vector_NitroPurchase_(__result.count)
211
+ for __item in __result {
212
+ __vector.push_back(__item)
213
+ }
214
+ return __vector
215
+ }()) })
216
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
217
+ return __promise
218
+ }()
219
+ return bridge.create_Result_std__shared_ptr_Promise_std__vector_NitroPurchase____(__resultCpp)
220
+ } catch (let __error) {
221
+ let __exceptionPtr = __error.toCpp()
222
+ return bridge.create_Result_std__shared_ptr_Promise_std__vector_NitroPurchase____(__exceptionPtr)
223
+ }
224
+ }
225
+
226
+ @inline(__always)
227
+ public final func finishTransaction(params: NitroFinishTransactionParams) -> bridge.Result_std__shared_ptr_Promise_std__variant_bool__NitroPurchaseResult____ {
228
+ do {
229
+ let __result = try self.__implementation.finishTransaction(params: params)
230
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__variant_bool__NitroPurchaseResult___ in
231
+ let __promise = bridge.create_std__shared_ptr_Promise_std__variant_bool__NitroPurchaseResult___()
232
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__variant_bool__NitroPurchaseResult___(__promise)
233
+ __result
234
+ .then({ __result in __promiseHolder.resolve({ () -> bridge.std__variant_bool__NitroPurchaseResult_ in
235
+ switch __result {
236
+ case .first(let __value):
237
+ return bridge.create_std__variant_bool__NitroPurchaseResult_(__value)
238
+ case .second(let __value):
239
+ return bridge.create_std__variant_bool__NitroPurchaseResult_(__value)
240
+ }
241
+ }().variant) })
242
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
243
+ return __promise
244
+ }()
245
+ return bridge.create_Result_std__shared_ptr_Promise_std__variant_bool__NitroPurchaseResult____(__resultCpp)
246
+ } catch (let __error) {
247
+ let __exceptionPtr = __error.toCpp()
248
+ return bridge.create_Result_std__shared_ptr_Promise_std__variant_bool__NitroPurchaseResult____(__exceptionPtr)
249
+ }
250
+ }
251
+
252
+ @inline(__always)
253
+ public final func addPurchaseUpdatedListener(listener: bridge.Func_void_NitroPurchase) -> bridge.Result_void_ {
254
+ do {
255
+ try self.__implementation.addPurchaseUpdatedListener(listener: { () -> (NitroPurchase) -> Void in
256
+ let __wrappedFunction = bridge.wrap_Func_void_NitroPurchase(listener)
257
+ return { (__purchase: NitroPurchase) -> Void in
258
+ __wrappedFunction.call(__purchase)
259
+ }
260
+ }())
261
+ return bridge.create_Result_void_()
262
+ } catch (let __error) {
263
+ let __exceptionPtr = __error.toCpp()
264
+ return bridge.create_Result_void_(__exceptionPtr)
265
+ }
266
+ }
267
+
268
+ @inline(__always)
269
+ public final func addPurchaseErrorListener(listener: bridge.Func_void_NitroPurchaseResult) -> bridge.Result_void_ {
270
+ do {
271
+ try self.__implementation.addPurchaseErrorListener(listener: { () -> (NitroPurchaseResult) -> Void in
272
+ let __wrappedFunction = bridge.wrap_Func_void_NitroPurchaseResult(listener)
273
+ return { (__error: NitroPurchaseResult) -> Void in
274
+ __wrappedFunction.call(__error)
275
+ }
276
+ }())
277
+ return bridge.create_Result_void_()
278
+ } catch (let __error) {
279
+ let __exceptionPtr = __error.toCpp()
280
+ return bridge.create_Result_void_(__exceptionPtr)
281
+ }
282
+ }
283
+
284
+ @inline(__always)
285
+ public final func removePurchaseUpdatedListener(listener: bridge.Func_void_NitroPurchase) -> bridge.Result_void_ {
286
+ do {
287
+ try self.__implementation.removePurchaseUpdatedListener(listener: { () -> (NitroPurchase) -> Void in
288
+ let __wrappedFunction = bridge.wrap_Func_void_NitroPurchase(listener)
289
+ return { (__purchase: NitroPurchase) -> Void in
290
+ __wrappedFunction.call(__purchase)
291
+ }
292
+ }())
293
+ return bridge.create_Result_void_()
294
+ } catch (let __error) {
295
+ let __exceptionPtr = __error.toCpp()
296
+ return bridge.create_Result_void_(__exceptionPtr)
297
+ }
298
+ }
299
+
300
+ @inline(__always)
301
+ public final func removePurchaseErrorListener(listener: bridge.Func_void_NitroPurchaseResult) -> bridge.Result_void_ {
302
+ do {
303
+ try self.__implementation.removePurchaseErrorListener(listener: { () -> (NitroPurchaseResult) -> Void in
304
+ let __wrappedFunction = bridge.wrap_Func_void_NitroPurchaseResult(listener)
305
+ return { (__error: NitroPurchaseResult) -> Void in
306
+ __wrappedFunction.call(__error)
307
+ }
308
+ }())
309
+ return bridge.create_Result_void_()
310
+ } catch (let __error) {
311
+ let __exceptionPtr = __error.toCpp()
312
+ return bridge.create_Result_void_(__exceptionPtr)
313
+ }
314
+ }
315
+
316
+ @inline(__always)
317
+ public final func addPromotedProductListenerIOS(listener: bridge.Func_void_NitroProduct) -> bridge.Result_void_ {
318
+ do {
319
+ try self.__implementation.addPromotedProductListenerIOS(listener: { () -> (NitroProduct) -> Void in
320
+ let __wrappedFunction = bridge.wrap_Func_void_NitroProduct(listener)
321
+ return { (__product: NitroProduct) -> Void in
322
+ __wrappedFunction.call(__product)
323
+ }
324
+ }())
325
+ return bridge.create_Result_void_()
326
+ } catch (let __error) {
327
+ let __exceptionPtr = __error.toCpp()
328
+ return bridge.create_Result_void_(__exceptionPtr)
329
+ }
330
+ }
331
+
332
+ @inline(__always)
333
+ public final func removePromotedProductListenerIOS(listener: bridge.Func_void_NitroProduct) -> bridge.Result_void_ {
334
+ do {
335
+ try self.__implementation.removePromotedProductListenerIOS(listener: { () -> (NitroProduct) -> Void in
336
+ let __wrappedFunction = bridge.wrap_Func_void_NitroProduct(listener)
337
+ return { (__product: NitroProduct) -> Void in
338
+ __wrappedFunction.call(__product)
339
+ }
340
+ }())
341
+ return bridge.create_Result_void_()
342
+ } catch (let __error) {
343
+ let __exceptionPtr = __error.toCpp()
344
+ return bridge.create_Result_void_(__exceptionPtr)
345
+ }
346
+ }
347
+
348
+ @inline(__always)
349
+ public final func getStorefrontIOS() -> bridge.Result_std__shared_ptr_Promise_std__string___ {
350
+ do {
351
+ let __result = try self.__implementation.getStorefrontIOS()
352
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__string__ in
353
+ let __promise = bridge.create_std__shared_ptr_Promise_std__string__()
354
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__string__(__promise)
355
+ __result
356
+ .then({ __result in __promiseHolder.resolve(std.string(__result)) })
357
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
358
+ return __promise
359
+ }()
360
+ return bridge.create_Result_std__shared_ptr_Promise_std__string___(__resultCpp)
361
+ } catch (let __error) {
362
+ let __exceptionPtr = __error.toCpp()
363
+ return bridge.create_Result_std__shared_ptr_Promise_std__string___(__exceptionPtr)
364
+ }
365
+ }
366
+
367
+ @inline(__always)
368
+ public final func getAppTransactionIOS() -> bridge.Result_std__shared_ptr_Promise_std__optional_std__string____ {
369
+ do {
370
+ let __result = try self.__implementation.getAppTransactionIOS()
371
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__optional_std__string___ in
372
+ let __promise = bridge.create_std__shared_ptr_Promise_std__optional_std__string___()
373
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__optional_std__string___(__promise)
374
+ __result
375
+ .then({ __result in __promiseHolder.resolve({ () -> bridge.std__optional_std__string_ in
376
+ if let __unwrappedValue = __result {
377
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
378
+ } else {
379
+ return .init()
380
+ }
381
+ }()) })
382
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
383
+ return __promise
384
+ }()
385
+ return bridge.create_Result_std__shared_ptr_Promise_std__optional_std__string____(__resultCpp)
386
+ } catch (let __error) {
387
+ let __exceptionPtr = __error.toCpp()
388
+ return bridge.create_Result_std__shared_ptr_Promise_std__optional_std__string____(__exceptionPtr)
389
+ }
390
+ }
391
+
392
+ @inline(__always)
393
+ public final func requestPromotedProductIOS() -> bridge.Result_std__shared_ptr_Promise_std__optional_NitroProduct____ {
394
+ do {
395
+ let __result = try self.__implementation.requestPromotedProductIOS()
396
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__optional_NitroProduct___ in
397
+ let __promise = bridge.create_std__shared_ptr_Promise_std__optional_NitroProduct___()
398
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__optional_NitroProduct___(__promise)
399
+ __result
400
+ .then({ __result in __promiseHolder.resolve({ () -> bridge.std__optional_NitroProduct_ in
401
+ if let __unwrappedValue = __result {
402
+ return bridge.create_std__optional_NitroProduct_(__unwrappedValue)
403
+ } else {
404
+ return .init()
405
+ }
406
+ }()) })
407
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
408
+ return __promise
409
+ }()
410
+ return bridge.create_Result_std__shared_ptr_Promise_std__optional_NitroProduct____(__resultCpp)
411
+ } catch (let __error) {
412
+ let __exceptionPtr = __error.toCpp()
413
+ return bridge.create_Result_std__shared_ptr_Promise_std__optional_NitroProduct____(__exceptionPtr)
414
+ }
415
+ }
416
+
417
+ @inline(__always)
418
+ public final func buyPromotedProductIOS() -> bridge.Result_std__shared_ptr_Promise_void___ {
419
+ do {
420
+ let __result = try self.__implementation.buyPromotedProductIOS()
421
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
422
+ let __promise = bridge.create_std__shared_ptr_Promise_void__()
423
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
424
+ __result
425
+ .then({ __result in __promiseHolder.resolve() })
426
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
427
+ return __promise
428
+ }()
429
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
430
+ } catch (let __error) {
431
+ let __exceptionPtr = __error.toCpp()
432
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
433
+ }
434
+ }
435
+
436
+ @inline(__always)
437
+ public final func presentCodeRedemptionSheetIOS() -> bridge.Result_std__shared_ptr_Promise_bool___ {
438
+ do {
439
+ let __result = try self.__implementation.presentCodeRedemptionSheetIOS()
440
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_bool__ in
441
+ let __promise = bridge.create_std__shared_ptr_Promise_bool__()
442
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_bool__(__promise)
443
+ __result
444
+ .then({ __result in __promiseHolder.resolve(__result) })
445
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
446
+ return __promise
447
+ }()
448
+ return bridge.create_Result_std__shared_ptr_Promise_bool___(__resultCpp)
449
+ } catch (let __error) {
450
+ let __exceptionPtr = __error.toCpp()
451
+ return bridge.create_Result_std__shared_ptr_Promise_bool___(__exceptionPtr)
452
+ }
453
+ }
454
+
455
+ @inline(__always)
456
+ public final func clearTransactionIOS() -> bridge.Result_std__shared_ptr_Promise_void___ {
457
+ do {
458
+ let __result = try self.__implementation.clearTransactionIOS()
459
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
460
+ let __promise = bridge.create_std__shared_ptr_Promise_void__()
461
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
462
+ __result
463
+ .then({ __result in __promiseHolder.resolve() })
464
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
465
+ return __promise
466
+ }()
467
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
468
+ } catch (let __error) {
469
+ let __exceptionPtr = __error.toCpp()
470
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
471
+ }
472
+ }
473
+
474
+ @inline(__always)
475
+ public final func beginRefundRequestIOS(sku: std.string) -> bridge.Result_std__shared_ptr_Promise_std__optional_std__string____ {
476
+ do {
477
+ let __result = try self.__implementation.beginRefundRequestIOS(sku: String(sku))
478
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__optional_std__string___ in
479
+ let __promise = bridge.create_std__shared_ptr_Promise_std__optional_std__string___()
480
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__optional_std__string___(__promise)
481
+ __result
482
+ .then({ __result in __promiseHolder.resolve({ () -> bridge.std__optional_std__string_ in
483
+ if let __unwrappedValue = __result {
484
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
485
+ } else {
486
+ return .init()
487
+ }
488
+ }()) })
489
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
490
+ return __promise
491
+ }()
492
+ return bridge.create_Result_std__shared_ptr_Promise_std__optional_std__string____(__resultCpp)
493
+ } catch (let __error) {
494
+ let __exceptionPtr = __error.toCpp()
495
+ return bridge.create_Result_std__shared_ptr_Promise_std__optional_std__string____(__exceptionPtr)
496
+ }
497
+ }
498
+
499
+ @inline(__always)
500
+ public final func subscriptionStatusIOS(sku: std.string) -> bridge.Result_std__shared_ptr_Promise_std__optional_std__vector_NitroSubscriptionStatus_____ {
501
+ do {
502
+ let __result = try self.__implementation.subscriptionStatusIOS(sku: String(sku))
503
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__optional_std__vector_NitroSubscriptionStatus____ in
504
+ let __promise = bridge.create_std__shared_ptr_Promise_std__optional_std__vector_NitroSubscriptionStatus____()
505
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__optional_std__vector_NitroSubscriptionStatus____(__promise)
506
+ __result
507
+ .then({ __result in __promiseHolder.resolve({ () -> bridge.std__optional_std__vector_NitroSubscriptionStatus__ in
508
+ if let __unwrappedValue = __result {
509
+ return bridge.create_std__optional_std__vector_NitroSubscriptionStatus__({ () -> bridge.std__vector_NitroSubscriptionStatus_ in
510
+ var __vector = bridge.create_std__vector_NitroSubscriptionStatus_(__unwrappedValue.count)
511
+ for __item in __unwrappedValue {
512
+ __vector.push_back(__item)
513
+ }
514
+ return __vector
515
+ }())
516
+ } else {
517
+ return .init()
518
+ }
519
+ }()) })
520
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
521
+ return __promise
522
+ }()
523
+ return bridge.create_Result_std__shared_ptr_Promise_std__optional_std__vector_NitroSubscriptionStatus_____(__resultCpp)
524
+ } catch (let __error) {
525
+ let __exceptionPtr = __error.toCpp()
526
+ return bridge.create_Result_std__shared_ptr_Promise_std__optional_std__vector_NitroSubscriptionStatus_____(__exceptionPtr)
527
+ }
528
+ }
529
+
530
+ @inline(__always)
531
+ public final func currentEntitlementIOS(sku: std.string) -> bridge.Result_std__shared_ptr_Promise_std__optional_NitroPurchase____ {
532
+ do {
533
+ let __result = try self.__implementation.currentEntitlementIOS(sku: String(sku))
534
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__optional_NitroPurchase___ in
535
+ let __promise = bridge.create_std__shared_ptr_Promise_std__optional_NitroPurchase___()
536
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__optional_NitroPurchase___(__promise)
537
+ __result
538
+ .then({ __result in __promiseHolder.resolve({ () -> bridge.std__optional_NitroPurchase_ in
539
+ if let __unwrappedValue = __result {
540
+ return bridge.create_std__optional_NitroPurchase_(__unwrappedValue)
541
+ } else {
542
+ return .init()
543
+ }
544
+ }()) })
545
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
546
+ return __promise
547
+ }()
548
+ return bridge.create_Result_std__shared_ptr_Promise_std__optional_NitroPurchase____(__resultCpp)
549
+ } catch (let __error) {
550
+ let __exceptionPtr = __error.toCpp()
551
+ return bridge.create_Result_std__shared_ptr_Promise_std__optional_NitroPurchase____(__exceptionPtr)
552
+ }
553
+ }
554
+
555
+ @inline(__always)
556
+ public final func latestTransactionIOS(sku: std.string) -> bridge.Result_std__shared_ptr_Promise_std__optional_NitroPurchase____ {
557
+ do {
558
+ let __result = try self.__implementation.latestTransactionIOS(sku: String(sku))
559
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__optional_NitroPurchase___ in
560
+ let __promise = bridge.create_std__shared_ptr_Promise_std__optional_NitroPurchase___()
561
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__optional_NitroPurchase___(__promise)
562
+ __result
563
+ .then({ __result in __promiseHolder.resolve({ () -> bridge.std__optional_NitroPurchase_ in
564
+ if let __unwrappedValue = __result {
565
+ return bridge.create_std__optional_NitroPurchase_(__unwrappedValue)
566
+ } else {
567
+ return .init()
568
+ }
569
+ }()) })
570
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
571
+ return __promise
572
+ }()
573
+ return bridge.create_Result_std__shared_ptr_Promise_std__optional_NitroPurchase____(__resultCpp)
574
+ } catch (let __error) {
575
+ let __exceptionPtr = __error.toCpp()
576
+ return bridge.create_Result_std__shared_ptr_Promise_std__optional_NitroPurchase____(__exceptionPtr)
577
+ }
578
+ }
579
+
580
+ @inline(__always)
581
+ public final func getPendingTransactionsIOS() -> bridge.Result_std__shared_ptr_Promise_std__vector_NitroPurchase____ {
582
+ do {
583
+ let __result = try self.__implementation.getPendingTransactionsIOS()
584
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__vector_NitroPurchase___ in
585
+ let __promise = bridge.create_std__shared_ptr_Promise_std__vector_NitroPurchase___()
586
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__vector_NitroPurchase___(__promise)
587
+ __result
588
+ .then({ __result in __promiseHolder.resolve({ () -> bridge.std__vector_NitroPurchase_ in
589
+ var __vector = bridge.create_std__vector_NitroPurchase_(__result.count)
590
+ for __item in __result {
591
+ __vector.push_back(__item)
592
+ }
593
+ return __vector
594
+ }()) })
595
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
596
+ return __promise
597
+ }()
598
+ return bridge.create_Result_std__shared_ptr_Promise_std__vector_NitroPurchase____(__resultCpp)
599
+ } catch (let __error) {
600
+ let __exceptionPtr = __error.toCpp()
601
+ return bridge.create_Result_std__shared_ptr_Promise_std__vector_NitroPurchase____(__exceptionPtr)
602
+ }
603
+ }
604
+
605
+ @inline(__always)
606
+ public final func syncIOS() -> bridge.Result_std__shared_ptr_Promise_bool___ {
607
+ do {
608
+ let __result = try self.__implementation.syncIOS()
609
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_bool__ in
610
+ let __promise = bridge.create_std__shared_ptr_Promise_bool__()
611
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_bool__(__promise)
612
+ __result
613
+ .then({ __result in __promiseHolder.resolve(__result) })
614
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
615
+ return __promise
616
+ }()
617
+ return bridge.create_Result_std__shared_ptr_Promise_bool___(__resultCpp)
618
+ } catch (let __error) {
619
+ let __exceptionPtr = __error.toCpp()
620
+ return bridge.create_Result_std__shared_ptr_Promise_bool___(__exceptionPtr)
621
+ }
622
+ }
623
+
624
+ @inline(__always)
625
+ public final func showManageSubscriptionsIOS() -> bridge.Result_std__shared_ptr_Promise_bool___ {
626
+ do {
627
+ let __result = try self.__implementation.showManageSubscriptionsIOS()
628
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_bool__ in
629
+ let __promise = bridge.create_std__shared_ptr_Promise_bool__()
630
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_bool__(__promise)
631
+ __result
632
+ .then({ __result in __promiseHolder.resolve(__result) })
633
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
634
+ return __promise
635
+ }()
636
+ return bridge.create_Result_std__shared_ptr_Promise_bool___(__resultCpp)
637
+ } catch (let __error) {
638
+ let __exceptionPtr = __error.toCpp()
639
+ return bridge.create_Result_std__shared_ptr_Promise_bool___(__exceptionPtr)
640
+ }
641
+ }
642
+
643
+ @inline(__always)
644
+ public final func isEligibleForIntroOfferIOS(groupID: std.string) -> bridge.Result_std__shared_ptr_Promise_bool___ {
645
+ do {
646
+ let __result = try self.__implementation.isEligibleForIntroOfferIOS(groupID: String(groupID))
647
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_bool__ in
648
+ let __promise = bridge.create_std__shared_ptr_Promise_bool__()
649
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_bool__(__promise)
650
+ __result
651
+ .then({ __result in __promiseHolder.resolve(__result) })
652
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
653
+ return __promise
654
+ }()
655
+ return bridge.create_Result_std__shared_ptr_Promise_bool___(__resultCpp)
656
+ } catch (let __error) {
657
+ let __exceptionPtr = __error.toCpp()
658
+ return bridge.create_Result_std__shared_ptr_Promise_bool___(__exceptionPtr)
659
+ }
660
+ }
661
+
662
+ @inline(__always)
663
+ public final func getReceiptDataIOS() -> bridge.Result_std__shared_ptr_Promise_std__string___ {
664
+ do {
665
+ let __result = try self.__implementation.getReceiptDataIOS()
666
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__string__ in
667
+ let __promise = bridge.create_std__shared_ptr_Promise_std__string__()
668
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__string__(__promise)
669
+ __result
670
+ .then({ __result in __promiseHolder.resolve(std.string(__result)) })
671
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
672
+ return __promise
673
+ }()
674
+ return bridge.create_Result_std__shared_ptr_Promise_std__string___(__resultCpp)
675
+ } catch (let __error) {
676
+ let __exceptionPtr = __error.toCpp()
677
+ return bridge.create_Result_std__shared_ptr_Promise_std__string___(__exceptionPtr)
678
+ }
679
+ }
680
+
681
+ @inline(__always)
682
+ public final func isTransactionVerifiedIOS(sku: std.string) -> bridge.Result_std__shared_ptr_Promise_bool___ {
683
+ do {
684
+ let __result = try self.__implementation.isTransactionVerifiedIOS(sku: String(sku))
685
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_bool__ in
686
+ let __promise = bridge.create_std__shared_ptr_Promise_bool__()
687
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_bool__(__promise)
688
+ __result
689
+ .then({ __result in __promiseHolder.resolve(__result) })
690
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
691
+ return __promise
692
+ }()
693
+ return bridge.create_Result_std__shared_ptr_Promise_bool___(__resultCpp)
694
+ } catch (let __error) {
695
+ let __exceptionPtr = __error.toCpp()
696
+ return bridge.create_Result_std__shared_ptr_Promise_bool___(__exceptionPtr)
697
+ }
698
+ }
699
+
700
+ @inline(__always)
701
+ public final func getTransactionJwsIOS(sku: std.string) -> bridge.Result_std__shared_ptr_Promise_std__optional_std__string____ {
702
+ do {
703
+ let __result = try self.__implementation.getTransactionJwsIOS(sku: String(sku))
704
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__optional_std__string___ in
705
+ let __promise = bridge.create_std__shared_ptr_Promise_std__optional_std__string___()
706
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__optional_std__string___(__promise)
707
+ __result
708
+ .then({ __result in __promiseHolder.resolve({ () -> bridge.std__optional_std__string_ in
709
+ if let __unwrappedValue = __result {
710
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
711
+ } else {
712
+ return .init()
713
+ }
714
+ }()) })
715
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
716
+ return __promise
717
+ }()
718
+ return bridge.create_Result_std__shared_ptr_Promise_std__optional_std__string____(__resultCpp)
719
+ } catch (let __error) {
720
+ let __exceptionPtr = __error.toCpp()
721
+ return bridge.create_Result_std__shared_ptr_Promise_std__optional_std__string____(__exceptionPtr)
722
+ }
723
+ }
724
+
725
+ @inline(__always)
726
+ public final func validateReceipt(params: NitroReceiptValidationParams) -> bridge.Result_std__shared_ptr_Promise_std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid____ {
727
+ do {
728
+ let __result = try self.__implementation.validateReceipt(params: params)
729
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid___ in
730
+ let __promise = bridge.create_std__shared_ptr_Promise_std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid___()
731
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid___(__promise)
732
+ __result
733
+ .then({ __result in __promiseHolder.resolve({ () -> bridge.std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid_ in
734
+ switch __result {
735
+ case .first(let __value):
736
+ return bridge.create_std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid_(__value)
737
+ case .second(let __value):
738
+ return bridge.create_std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid_(__value)
739
+ }
740
+ }().variant) })
741
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
742
+ return __promise
743
+ }()
744
+ return bridge.create_Result_std__shared_ptr_Promise_std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid____(__resultCpp)
745
+ } catch (let __error) {
746
+ let __exceptionPtr = __error.toCpp()
747
+ return bridge.create_Result_std__shared_ptr_Promise_std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid____(__exceptionPtr)
748
+ }
749
+ }
750
+ }