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.
- package/NitroIap.podspec +33 -0
- package/README.md +163 -51
- package/android/CMakeLists.txt +32 -0
- package/android/build.gradle +107 -138
- package/android/fix-prefab.gradle +51 -0
- package/android/gradle.properties +5 -13
- package/android/src/main/AndroidManifest.xml +1 -4
- package/android/src/main/cpp/cpp-adapter.cpp +6 -0
- package/android/src/main/java/com/margelo/nitro/iap/HybridRnIap.kt +843 -0
- package/android/src/main/java/com/margelo/nitro/iap/NitroIapPackage.java +33 -0
- package/android/src/main/java/com/margelo/nitro/iap/Types.kt +173 -0
- package/ios/Bridge.h +8 -0
- package/ios/ErrorUtils.swift +153 -0
- package/ios/HybridRnIap.swift +1326 -0
- package/ios/ProductStore.swift +33 -0
- package/ios/reactnativeiap.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
- package/ios/reactnativeiap.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/lib/module/helpers/subscription.js +56 -0
- package/lib/module/helpers/subscription.js.map +1 -0
- package/lib/module/hooks/useIAP.js +175 -123
- package/lib/module/hooks/useIAP.js.map +1 -1
- package/lib/module/index.js +1015 -9
- package/lib/module/index.js.map +1 -1
- package/lib/module/package.json +1 -0
- package/lib/module/specs/RnIap.nitro.js +4 -0
- package/lib/{commonjs/modules/common.js.map → module/specs/RnIap.nitro.js.map} +1 -1
- package/lib/module/types.js +187 -0
- package/lib/module/types.js.map +1 -0
- package/lib/module/utils/error.js +80 -0
- package/lib/module/utils/error.js.map +1 -0
- package/lib/module/utils/type-bridge.js +202 -0
- package/lib/module/utils/type-bridge.js.map +1 -0
- package/lib/typescript/package.json +1 -0
- package/lib/typescript/plugin/src/withIAP.d.ts +2 -7
- package/lib/typescript/plugin/src/withIAP.d.ts.map +1 -1
- package/lib/typescript/scripts/check-nitro-versions.d.ts +3 -0
- package/lib/typescript/scripts/check-nitro-versions.d.ts.map +1 -0
- package/lib/typescript/src/helpers/subscription.d.ts +14 -0
- package/lib/typescript/src/helpers/subscription.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useIAP.d.ts +42 -26
- package/lib/typescript/src/hooks/useIAP.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +356 -8
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/specs/RnIap.nitro.d.ts +404 -0
- package/lib/typescript/src/specs/RnIap.nitro.d.ts.map +1 -0
- package/lib/typescript/src/types.d.ts +544 -0
- package/lib/typescript/src/types.d.ts.map +1 -0
- package/lib/typescript/src/utils/error.d.ts +30 -0
- package/lib/typescript/src/utils/error.d.ts.map +1 -0
- package/lib/typescript/src/utils/type-bridge.d.ts +40 -0
- package/lib/typescript/src/utils/type-bridge.d.ts.map +1 -0
- package/nitro.json +17 -0
- package/nitrogen/generated/android/NitroIap+autolinking.cmake +80 -0
- package/nitrogen/generated/android/NitroIap+autolinking.gradle +27 -0
- package/nitrogen/generated/android/NitroIapOnLoad.cpp +50 -0
- package/nitrogen/generated/android/NitroIapOnLoad.hpp +25 -0
- package/nitrogen/generated/android/c++/JFunc_void_NitroProduct.hpp +78 -0
- package/nitrogen/generated/android/c++/JFunc_void_NitroPurchase.hpp +78 -0
- package/nitrogen/generated/android/c++/JFunc_void_NitroPurchaseResult.hpp +78 -0
- package/nitrogen/generated/android/c++/JHybridRnIapSpec.cpp +577 -0
- package/nitrogen/generated/android/c++/JHybridRnIapSpec.hpp +93 -0
- package/nitrogen/generated/android/c++/JNitroAndroidReceiptValidationOptions.hpp +66 -0
- package/nitrogen/generated/android/c++/JNitroAvailablePurchasesAndroidOptions.hpp +54 -0
- package/nitrogen/generated/android/c++/JNitroAvailablePurchasesIosOptions.hpp +65 -0
- package/nitrogen/generated/android/c++/JNitroAvailablePurchasesOptions.hpp +62 -0
- package/nitrogen/generated/android/c++/JNitroFinishTransactionAndroidParams.hpp +58 -0
- package/nitrogen/generated/android/c++/JNitroFinishTransactionIosParams.hpp +53 -0
- package/nitrogen/generated/android/c++/JNitroFinishTransactionParams.hpp +62 -0
- package/nitrogen/generated/android/c++/JNitroProduct.hpp +154 -0
- package/nitrogen/generated/android/c++/JNitroPurchase.hpp +122 -0
- package/nitrogen/generated/android/c++/JNitroPurchaseRequest.hpp +66 -0
- package/nitrogen/generated/android/c++/JNitroPurchaseResult.hpp +70 -0
- package/nitrogen/generated/android/c++/JNitroReceiptValidationParams.hpp +60 -0
- package/nitrogen/generated/android/c++/JNitroReceiptValidationResultAndroid.hpp +122 -0
- package/nitrogen/generated/android/c++/JNitroReceiptValidationResultIOS.hpp +68 -0
- package/nitrogen/generated/android/c++/JNitroRequestPurchaseAndroid.hpp +115 -0
- package/nitrogen/generated/android/c++/JNitroRequestPurchaseIos.hpp +84 -0
- package/nitrogen/generated/android/c++/JNitroSubscriptionOffer.hpp +57 -0
- package/nitrogen/generated/android/c++/JNitroSubscriptionRenewalInfo.hpp +74 -0
- package/nitrogen/generated/android/c++/JNitroSubscriptionStatus.hpp +64 -0
- package/nitrogen/generated/android/c++/JVariant_Boolean_NitroPurchaseResult.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_Boolean_NitroPurchaseResult.hpp +71 -0
- package/nitrogen/generated/android/c++/JVariant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.hpp +75 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Func_void_NitroProduct.kt +81 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Func_void_NitroPurchase.kt +81 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Func_void_NitroPurchaseResult.kt +81 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/HybridRnIapSpec.kt +198 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAndroidReceiptValidationOptions.kt +38 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesAndroidOptions.kt +29 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesIosOptions.kt +38 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesOptions.kt +32 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionAndroidParams.kt +32 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionIosParams.kt +29 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroFinishTransactionParams.kt +32 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroIapOnLoad.kt +35 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroProduct.kt +104 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchase.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchaseRequest.kt +32 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchaseResult.kt +41 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationParams.kt +32 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationResultAndroid.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroReceiptValidationResultIOS.kt +38 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRequestPurchaseAndroid.kt +47 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRequestPurchaseIos.kt +41 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroSubscriptionOffer.kt +32 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroSubscriptionRenewalInfo.kt +44 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroSubscriptionStatus.kt +35 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_Boolean_NitroPurchaseResult.kt +42 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.kt +42 -0
- package/nitrogen/generated/ios/NitroIap+autolinking.rb +60 -0
- package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.cpp +152 -0
- package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.hpp +1061 -0
- package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Umbrella.hpp +107 -0
- package/nitrogen/generated/ios/NitroIapAutolinking.mm +33 -0
- package/nitrogen/generated/ios/NitroIapAutolinking.swift +25 -0
- package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.hpp +355 -0
- package/nitrogen/generated/ios/swift/Func_void.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_NitroProduct.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_NitroPurchase.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_NitroPurchaseResult.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_bool.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__optional_NitroProduct_.swift +54 -0
- package/nitrogen/generated/ios/swift/Func_void_std__optional_NitroPurchase_.swift +54 -0
- package/nitrogen/generated/ios/swift/Func_void_std__optional_std__string_.swift +54 -0
- package/nitrogen/generated/ios/swift/Func_void_std__optional_std__vector_NitroSubscriptionStatus__.swift +54 -0
- package/nitrogen/generated/ios/swift/Func_void_std__string.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__variant_NitroReceiptValidationResultIOS__NitroReceiptValidationResultAndroid_.swift +59 -0
- package/nitrogen/generated/ios/swift/Func_void_std__variant_bool__NitroPurchaseResult_.swift +59 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_NitroProduct_.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_NitroPurchase_.swift +47 -0
- package/nitrogen/generated/ios/swift/HybridRnIapSpec.swift +78 -0
- package/nitrogen/generated/ios/swift/HybridRnIapSpec_cxx.swift +750 -0
- package/nitrogen/generated/ios/swift/NitroAndroidReceiptValidationOptions.swift +80 -0
- package/nitrogen/generated/ios/swift/NitroAvailablePurchasesAndroidOptions.swift +54 -0
- package/nitrogen/generated/ios/swift/NitroAvailablePurchasesIosOptions.swift +116 -0
- package/nitrogen/generated/ios/swift/NitroAvailablePurchasesOptions.swift +84 -0
- package/nitrogen/generated/ios/swift/NitroFinishTransactionAndroidParams.swift +58 -0
- package/nitrogen/generated/ios/swift/NitroFinishTransactionIosParams.swift +35 -0
- package/nitrogen/generated/ios/swift/NitroFinishTransactionParams.swift +84 -0
- package/nitrogen/generated/ios/swift/NitroProduct.swift +653 -0
- package/nitrogen/generated/ios/swift/NitroPurchase.swift +453 -0
- package/nitrogen/generated/ios/swift/NitroPurchaseRequest.swift +84 -0
- package/nitrogen/generated/ios/swift/NitroPurchaseResult.swift +117 -0
- package/nitrogen/generated/ios/swift/NitroReceiptValidationParams.swift +65 -0
- package/nitrogen/generated/ios/swift/NitroReceiptValidationResultAndroid.swift +258 -0
- package/nitrogen/generated/ios/swift/NitroReceiptValidationResultIOS.swift +87 -0
- package/nitrogen/generated/ios/swift/NitroRequestPurchaseAndroid.swift +225 -0
- package/nitrogen/generated/ios/swift/NitroRequestPurchaseIos.swift +161 -0
- package/nitrogen/generated/ios/swift/NitroSubscriptionOffer.swift +46 -0
- package/nitrogen/generated/ios/swift/NitroSubscriptionRenewalInfo.swift +152 -0
- package/nitrogen/generated/ios/swift/NitroSubscriptionStatus.swift +76 -0
- package/nitrogen/generated/ios/swift/Variant_Bool_NitroPurchaseResult.swift +18 -0
- package/nitrogen/generated/ios/swift/Variant_NitroReceiptValidationResultIOS_NitroReceiptValidationResultAndroid.swift +18 -0
- package/nitrogen/generated/shared/c++/HybridRnIapSpec.cpp +50 -0
- package/nitrogen/generated/shared/c++/HybridRnIapSpec.hpp +125 -0
- package/nitrogen/generated/shared/c++/NitroAndroidReceiptValidationOptions.hpp +80 -0
- package/nitrogen/generated/shared/c++/NitroAvailablePurchasesAndroidOptions.hpp +68 -0
- package/nitrogen/generated/shared/c++/NitroAvailablePurchasesIosOptions.hpp +79 -0
- package/nitrogen/generated/shared/c++/NitroAvailablePurchasesOptions.hpp +76 -0
- package/nitrogen/generated/shared/c++/NitroFinishTransactionAndroidParams.hpp +72 -0
- package/nitrogen/generated/shared/c++/NitroFinishTransactionIosParams.hpp +67 -0
- package/nitrogen/generated/shared/c++/NitroFinishTransactionParams.hpp +76 -0
- package/nitrogen/generated/shared/c++/NitroProduct.hpp +168 -0
- package/nitrogen/generated/shared/c++/NitroPurchase.hpp +136 -0
- package/nitrogen/generated/shared/c++/NitroPurchaseRequest.hpp +76 -0
- package/nitrogen/generated/shared/c++/NitroPurchaseResult.hpp +84 -0
- package/nitrogen/generated/shared/c++/NitroReceiptValidationParams.hpp +74 -0
- package/nitrogen/generated/shared/c++/NitroReceiptValidationResultAndroid.hpp +136 -0
- package/nitrogen/generated/shared/c++/NitroReceiptValidationResultIOS.hpp +82 -0
- package/nitrogen/generated/shared/c++/NitroRequestPurchaseAndroid.hpp +95 -0
- package/nitrogen/generated/shared/c++/NitroRequestPurchaseIos.hpp +85 -0
- package/nitrogen/generated/shared/c++/NitroSubscriptionOffer.hpp +71 -0
- package/nitrogen/generated/shared/c++/NitroSubscriptionRenewalInfo.hpp +88 -0
- package/nitrogen/generated/shared/c++/NitroSubscriptionStatus.hpp +78 -0
- package/package.json +144 -104
- package/plugin/build/src/withIAP.d.ts +3 -0
- package/plugin/build/src/withIAP.js +81 -0
- package/plugin/build/tsconfig.tsbuildinfo +1 -0
- package/plugin/build/withIAP.d.ts +2 -7
- package/plugin/build/withIAP.js +62 -51
- package/plugin/src/withIAP.ts +119 -0
- package/plugin/tsconfig.json +18 -0
- package/plugin/tsconfig.tsbuildinfo +1 -0
- package/src/helpers/subscription.ts +65 -0
- package/src/hooks/useIAP.ts +361 -222
- package/src/index.ts +1194 -9
- package/src/specs/RnIap.nitro.ts +501 -0
- package/src/types.ts +680 -0
- package/src/utils/error.ts +97 -0
- package/src/utils/type-bridge.ts +209 -0
- package/LICENSE +0 -21
- package/RNIap.podspec +0 -36
- package/android/src/amazon/AndroidManifest.xml +0 -14
- package/android/src/amazon/java/com/dooboolab/rniap/EventSender.kt +0 -10
- package/android/src/amazon/java/com/dooboolab/rniap/PurchasingServiceProxy.kt +0 -29
- package/android/src/amazon/java/com/dooboolab/rniap/PurchasingServiceProxyAmazonImpl.kt +0 -31
- package/android/src/amazon/java/com/dooboolab/rniap/RNIapActivityListener.kt +0 -55
- package/android/src/amazon/java/com/dooboolab/rniap/RNIapAmazonListener.kt +0 -325
- package/android/src/amazon/java/com/dooboolab/rniap/RNIapAmazonModule.kt +0 -244
- package/android/src/amazon/java/com/dooboolab/rniap/RNIapPackage.kt +0 -17
- package/android/src/amazon/java/com/dooboolab/rniap/modifysubscription/RNIapAmazonModifySubscriptionListener.kt +0 -88
- package/android/src/amazon/java/com/dooboolab/rniap/utils/Extensions.kt +0 -22
- package/android/src/main/java/com/dooboolab/rniap/PromiseUtils.kt +0 -62
- package/android/src/main/java/com/dooboolab/rniap/PromiseUtlis.kt +0 -43
- package/android/src/play/java/com/dooboolab/rniap/PlayUtils.kt +0 -114
- package/android/src/play/java/com/dooboolab/rniap/RNIapActivityListener.kt +0 -15
- package/android/src/play/java/com/dooboolab/rniap/RNIapModule.kt +0 -911
- package/android/src/play/java/com/dooboolab/rniap/RNIapPackage.kt +0 -17
- package/android/src/testAmazon/java/com/dooboolab/rniap/RNIapAmazonModuleTest.kt +0 -170
- package/app.plugin.js +0 -1
- package/ios/IapSerializationUtils.swift +0 -290
- package/ios/IapTypes.swift +0 -56
- package/ios/IapUtils.swift +0 -40
- package/ios/LatestPromiseKeeper.swift +0 -52
- package/ios/RNIapIos-Bridging-Header.h +0 -2
- package/ios/RNIapIos.m +0 -69
- package/ios/RNIapIos.swift +0 -868
- package/ios/RNIapIos.xcodeproj/project.pbxproj +0 -289
- package/ios/RNIapIosSk2.m +0 -126
- package/ios/RNIapIosSk2.swift +0 -1413
- package/ios/ThreadSafe.swift +0 -18
- package/lib/commonjs/eventEmitter.js +0 -195
- package/lib/commonjs/eventEmitter.js.map +0 -1
- package/lib/commonjs/hooks/index.js +0 -17
- package/lib/commonjs/hooks/index.js.map +0 -1
- package/lib/commonjs/hooks/useIAP.js +0 -203
- package/lib/commonjs/hooks/useIAP.js.map +0 -1
- package/lib/commonjs/hooks/withIAPContext.js +0 -95
- package/lib/commonjs/hooks/withIAPContext.js.map +0 -1
- package/lib/commonjs/iap.js +0 -836
- package/lib/commonjs/iap.js.map +0 -1
- package/lib/commonjs/index.js +0 -105
- package/lib/commonjs/index.js.map +0 -1
- package/lib/commonjs/internal/enhancedFetch.js +0 -26
- package/lib/commonjs/internal/enhancedFetch.js.map +0 -1
- package/lib/commonjs/internal/fillProductsWithAdditionalData.js +0 -50
- package/lib/commonjs/internal/fillProductsWithAdditionalData.js.map +0 -1
- package/lib/commonjs/internal/index.js +0 -39
- package/lib/commonjs/internal/index.js.map +0 -1
- package/lib/commonjs/internal/platform.js +0 -119
- package/lib/commonjs/internal/platform.js.map +0 -1
- package/lib/commonjs/modules/amazon.js +0 -50
- package/lib/commonjs/modules/amazon.js.map +0 -1
- package/lib/commonjs/modules/android.js +0 -92
- package/lib/commonjs/modules/android.js.map +0 -1
- package/lib/commonjs/modules/common.js +0 -2
- package/lib/commonjs/modules/index.js +0 -50
- package/lib/commonjs/modules/index.js.map +0 -1
- package/lib/commonjs/modules/ios.js +0 -160
- package/lib/commonjs/modules/ios.js.map +0 -1
- package/lib/commonjs/modules/iosSk2.js +0 -113
- package/lib/commonjs/modules/iosSk2.js.map +0 -1
- package/lib/commonjs/purchaseError.js +0 -170
- package/lib/commonjs/purchaseError.js.map +0 -1
- package/lib/commonjs/types/amazon.js +0 -2
- package/lib/commonjs/types/amazon.js.map +0 -1
- package/lib/commonjs/types/android.js +0 -67
- package/lib/commonjs/types/android.js.map +0 -1
- package/lib/commonjs/types/apple.js +0 -24
- package/lib/commonjs/types/apple.js.map +0 -1
- package/lib/commonjs/types/appleSk2.js +0 -137
- package/lib/commonjs/types/appleSk2.js.map +0 -1
- package/lib/commonjs/types/index.js +0 -67
- package/lib/commonjs/types/index.js.map +0 -1
- package/lib/commonjs/utils/errorMapping.js +0 -83
- package/lib/commonjs/utils/errorMapping.js.map +0 -1
- package/lib/commonjs/utils/typeGuards.js +0 -74
- package/lib/commonjs/utils/typeGuards.js.map +0 -1
- package/lib/module/eventEmitter.js +0 -185
- package/lib/module/eventEmitter.js.map +0 -1
- package/lib/module/hooks/index.js +0 -2
- package/lib/module/hooks/index.js.map +0 -1
- package/lib/module/hooks/withIAPContext.js +0 -86
- package/lib/module/hooks/withIAPContext.js.map +0 -1
- package/lib/module/iap.js +0 -805
- package/lib/module/iap.js.map +0 -1
- package/lib/module/internal/enhancedFetch.js +0 -19
- package/lib/module/internal/enhancedFetch.js.map +0 -1
- package/lib/module/internal/fillProductsWithAdditionalData.js +0 -43
- package/lib/module/internal/fillProductsWithAdditionalData.js.map +0 -1
- package/lib/module/internal/index.js +0 -4
- package/lib/module/internal/index.js.map +0 -1
- package/lib/module/internal/platform.js +0 -102
- package/lib/module/internal/platform.js.map +0 -1
- package/lib/module/modules/amazon.js +0 -42
- package/lib/module/modules/amazon.js.map +0 -1
- package/lib/module/modules/android.js +0 -81
- package/lib/module/modules/android.js.map +0 -1
- package/lib/module/modules/common.js +0 -2
- package/lib/module/modules/common.js.map +0 -1
- package/lib/module/modules/index.js +0 -5
- package/lib/module/modules/index.js.map +0 -1
- package/lib/module/modules/ios.js +0 -145
- package/lib/module/modules/ios.js.map +0 -1
- package/lib/module/modules/iosSk2.js +0 -96
- package/lib/module/modules/iosSk2.js.map +0 -1
- package/lib/module/purchaseError.js +0 -164
- package/lib/module/purchaseError.js.map +0 -1
- package/lib/module/types/amazon.js +0 -2
- package/lib/module/types/amazon.js.map +0 -1
- package/lib/module/types/android.js +0 -63
- package/lib/module/types/android.js.map +0 -1
- package/lib/module/types/apple.js +0 -17
- package/lib/module/types/apple.js.map +0 -1
- package/lib/module/types/appleSk2.js +0 -129
- package/lib/module/types/appleSk2.js.map +0 -1
- package/lib/module/types/index.js +0 -75
- package/lib/module/types/index.js.map +0 -1
- package/lib/module/utils/errorMapping.js +0 -75
- package/lib/module/utils/errorMapping.js.map +0 -1
- package/lib/module/utils/typeGuards.js +0 -61
- package/lib/module/utils/typeGuards.js.map +0 -1
- package/lib/typescript/src/eventEmitter.d.ts +0 -151
- package/lib/typescript/src/eventEmitter.d.ts.map +0 -1
- package/lib/typescript/src/hooks/index.d.ts +0 -2
- package/lib/typescript/src/hooks/index.d.ts.map +0 -1
- package/lib/typescript/src/hooks/withIAPContext.d.ts +0 -27
- package/lib/typescript/src/hooks/withIAPContext.d.ts.map +0 -1
- package/lib/typescript/src/iap.d.ts +0 -503
- package/lib/typescript/src/iap.d.ts.map +0 -1
- package/lib/typescript/src/internal/enhancedFetch.d.ts +0 -6
- package/lib/typescript/src/internal/enhancedFetch.d.ts.map +0 -1
- package/lib/typescript/src/internal/fillProductsWithAdditionalData.d.ts +0 -7
- package/lib/typescript/src/internal/fillProductsWithAdditionalData.d.ts.map +0 -1
- package/lib/typescript/src/internal/index.d.ts +0 -4
- package/lib/typescript/src/internal/index.d.ts.map +0 -1
- package/lib/typescript/src/internal/platform.d.ts +0 -27
- package/lib/typescript/src/internal/platform.d.ts.map +0 -1
- package/lib/typescript/src/modules/amazon.d.ts +0 -55
- package/lib/typescript/src/modules/amazon.d.ts.map +0 -1
- package/lib/typescript/src/modules/android.d.ts +0 -74
- package/lib/typescript/src/modules/android.d.ts.map +0 -1
- package/lib/typescript/src/modules/common.d.ts +0 -14
- package/lib/typescript/src/modules/common.d.ts.map +0 -1
- package/lib/typescript/src/modules/index.d.ts +0 -5
- package/lib/typescript/src/modules/index.d.ts.map +0 -1
- package/lib/typescript/src/modules/ios.d.ts +0 -117
- package/lib/typescript/src/modules/ios.d.ts.map +0 -1
- package/lib/typescript/src/modules/iosSk2.d.ts +0 -140
- package/lib/typescript/src/modules/iosSk2.d.ts.map +0 -1
- package/lib/typescript/src/purchaseError.d.ts +0 -133
- package/lib/typescript/src/purchaseError.d.ts.map +0 -1
- package/lib/typescript/src/types/amazon.d.ts +0 -33
- package/lib/typescript/src/types/amazon.d.ts.map +0 -1
- package/lib/typescript/src/types/android.d.ts +0 -66
- package/lib/typescript/src/types/android.d.ts.map +0 -1
- package/lib/typescript/src/types/apple.d.ts +0 -27
- package/lib/typescript/src/types/apple.d.ts.map +0 -1
- package/lib/typescript/src/types/appleSk2.d.ts +0 -129
- package/lib/typescript/src/types/appleSk2.d.ts.map +0 -1
- package/lib/typescript/src/types/index.d.ts +0 -302
- package/lib/typescript/src/types/index.d.ts.map +0 -1
- package/lib/typescript/src/utils/errorMapping.d.ts +0 -29
- package/lib/typescript/src/utils/errorMapping.d.ts.map +0 -1
- package/lib/typescript/src/utils/typeGuards.d.ts +0 -53
- package/lib/typescript/src/utils/typeGuards.d.ts.map +0 -1
- package/src/eventEmitter.ts +0 -212
- package/src/hooks/index.ts +0 -1
- package/src/hooks/withIAPContext.tsx +0 -179
- package/src/iap.ts +0 -1046
- package/src/internal/enhancedFetch.ts +0 -25
- package/src/internal/fillProductsWithAdditionalData.ts +0 -47
- package/src/internal/index.ts +0 -3
- package/src/internal/platform.ts +0 -135
- package/src/modules/amazon.ts +0 -94
- package/src/modules/android.ts +0 -179
- package/src/modules/common.ts +0 -16
- package/src/modules/index.ts +0 -4
- package/src/modules/ios.ts +0 -229
- package/src/modules/iosSk2.ts +0 -194
- package/src/purchaseError.ts +0 -196
- package/src/types/amazon.ts +0 -40
- package/src/types/android.ts +0 -89
- package/src/types/apple.ts +0 -44
- package/src/types/appleSk2.ts +0 -275
- package/src/types/index.ts +0 -379
- package/src/utils/errorMapping.ts +0 -88
- package/src/utils/typeGuards.ts +0 -90
|
@@ -1,47 +1,63 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
import type { Product, Purchase, PurchaseResult, Subscription } from '../types';
|
|
4
|
-
export interface UseIAPOptions {
|
|
5
|
-
onPurchaseSuccess?: (purchase: Purchase) => void;
|
|
6
|
-
onPurchaseError?: (error: PurchaseError) => void;
|
|
7
|
-
onSyncError?: (error: Error) => void;
|
|
8
|
-
shouldAutoSyncPurchases?: boolean;
|
|
9
|
-
}
|
|
10
|
-
type IAP_STATUS = {
|
|
1
|
+
import type { Product, Purchase, PurchaseError, PurchaseResult, SubscriptionProduct, RequestPurchaseProps, RequestSubscriptionProps, ActiveSubscription } from '../types';
|
|
2
|
+
type UseIap = {
|
|
11
3
|
connected: boolean;
|
|
12
4
|
products: Product[];
|
|
13
|
-
promotedProductsIOS:
|
|
14
|
-
|
|
15
|
-
|
|
5
|
+
promotedProductsIOS: Purchase[];
|
|
6
|
+
promotedProductIdIOS?: string;
|
|
7
|
+
subscriptions: SubscriptionProduct[];
|
|
16
8
|
availablePurchases: Purchase[];
|
|
17
9
|
currentPurchase?: Purchase;
|
|
18
10
|
currentPurchaseError?: PurchaseError;
|
|
19
|
-
|
|
11
|
+
promotedProductIOS?: Product;
|
|
12
|
+
activeSubscriptions: ActiveSubscription[];
|
|
20
13
|
clearCurrentPurchase: () => void;
|
|
21
14
|
clearCurrentPurchaseError: () => void;
|
|
22
|
-
finishTransaction: ({ purchase, isConsumable,
|
|
15
|
+
finishTransaction: ({ purchase, isConsumable, }: {
|
|
23
16
|
purchase: Purchase;
|
|
24
17
|
isConsumable?: boolean;
|
|
25
|
-
|
|
26
|
-
}) => Promise<string | boolean | PurchaseResult | void>;
|
|
18
|
+
}) => Promise<PurchaseResult | boolean>;
|
|
27
19
|
getAvailablePurchases: () => Promise<void>;
|
|
28
|
-
|
|
29
|
-
getProducts: ({ skus }: {
|
|
30
|
-
skus: string[];
|
|
31
|
-
}) => Promise<void>;
|
|
32
|
-
getSubscriptions: ({ skus }: {
|
|
20
|
+
fetchProducts: (params: {
|
|
33
21
|
skus: string[];
|
|
22
|
+
type?: 'inapp' | 'subs';
|
|
34
23
|
}) => Promise<void>;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
24
|
+
/**
|
|
25
|
+
* @deprecated Use fetchProducts({ skus, type: 'inapp' }) instead. This method will be removed in version 3.0.0.
|
|
26
|
+
* Note: This method internally uses fetchProducts, so no deprecation warning is shown.
|
|
27
|
+
*/
|
|
28
|
+
getProducts: (skus: string[]) => Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* @deprecated Use fetchProducts({ skus, type: 'subs' }) instead. This method will be removed in version 3.0.0.
|
|
31
|
+
* Note: This method internally uses fetchProducts, so no deprecation warning is shown.
|
|
32
|
+
*/
|
|
33
|
+
getSubscriptions: (skus: string[]) => Promise<void>;
|
|
34
|
+
requestPurchase: (params: {
|
|
35
|
+
request: RequestPurchaseProps | RequestSubscriptionProps;
|
|
36
|
+
type?: 'inapp' | 'subs';
|
|
37
|
+
}) => Promise<any>;
|
|
38
38
|
validateReceipt: (sku: string, androidOptions?: {
|
|
39
39
|
packageName: string;
|
|
40
40
|
productToken: string;
|
|
41
41
|
accessToken: string;
|
|
42
42
|
isSub?: boolean;
|
|
43
43
|
}) => Promise<any>;
|
|
44
|
+
restorePurchases: () => Promise<void>;
|
|
45
|
+
requestPromotedProductIOS: () => Promise<any | null>;
|
|
46
|
+
buyPromotedProductIOS: () => Promise<void>;
|
|
47
|
+
getActiveSubscriptions: (subscriptionIds?: string[]) => Promise<ActiveSubscription[]>;
|
|
48
|
+
hasActiveSubscriptions: (subscriptionIds?: string[]) => Promise<boolean>;
|
|
44
49
|
};
|
|
45
|
-
export
|
|
50
|
+
export interface UseIapOptions {
|
|
51
|
+
onPurchaseSuccess?: (purchase: Purchase) => void;
|
|
52
|
+
onPurchaseError?: (error: PurchaseError) => void;
|
|
53
|
+
onSyncError?: (error: Error) => void;
|
|
54
|
+
shouldAutoSyncPurchases?: boolean;
|
|
55
|
+
onPromotedProductIOS?: (product: Product) => void;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* React Hook for managing In-App Purchases.
|
|
59
|
+
* See documentation at https://expo-iap.hyo.dev/docs/hooks/useIAP
|
|
60
|
+
*/
|
|
61
|
+
export declare function useIAP(options?: UseIapOptions): UseIap;
|
|
46
62
|
export {};
|
|
47
63
|
//# sourceMappingURL=useIAP.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useIAP.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useIAP.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useIAP.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useIAP.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,358 @@
|
|
|
1
|
-
|
|
1
|
+
import type { NitroPurchaseResult } from './specs/RnIap.nitro';
|
|
2
|
+
import type { Product, Purchase, RequestPurchaseProps, RequestSubscriptionProps, PurchaseOptions, FinishTransactionParams, ReceiptValidationResultIOS, ReceiptValidationResultAndroid } from './types';
|
|
3
|
+
export type { RnIap, NitroProduct, NitroPurchase, NitroPurchaseResult, } from './specs/RnIap.nitro';
|
|
2
4
|
export * from './types';
|
|
3
|
-
export * from './
|
|
4
|
-
export
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
export * from './utils/error';
|
|
6
|
+
export interface EventSubscription {
|
|
7
|
+
remove(): void;
|
|
8
|
+
}
|
|
9
|
+
export { useIAP } from './hooks/useIAP';
|
|
10
|
+
/**
|
|
11
|
+
* Initialize connection to the store
|
|
12
|
+
*/
|
|
13
|
+
export declare const initConnection: () => Promise<boolean>;
|
|
14
|
+
/**
|
|
15
|
+
* End connection to the store
|
|
16
|
+
*/
|
|
17
|
+
export declare const endConnection: () => Promise<boolean>;
|
|
18
|
+
/**
|
|
19
|
+
* Fetch products from the store
|
|
20
|
+
* @param params - Product request configuration
|
|
21
|
+
* @param params.skus - Array of product SKUs to fetch
|
|
22
|
+
* @param params.type - Type of products: 'inapp' for regular products (default) or 'subs' for subscriptions
|
|
23
|
+
* @returns Promise<Product[]> - Array of products from the store
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* // Regular products
|
|
28
|
+
* const products = await fetchProducts({
|
|
29
|
+
* skus: ['product1', 'product2'],
|
|
30
|
+
* type: 'inapp'
|
|
31
|
+
* });
|
|
32
|
+
*
|
|
33
|
+
* // Subscriptions
|
|
34
|
+
* const subscriptions = await fetchProducts({
|
|
35
|
+
* skus: ['sub1', 'sub2'],
|
|
36
|
+
* type: 'subs'
|
|
37
|
+
* });
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
export declare const fetchProducts: ({ skus, type, }: {
|
|
41
|
+
skus: string[];
|
|
42
|
+
type?: "inapp" | "subs";
|
|
43
|
+
}) => Promise<Product[]>;
|
|
44
|
+
/**
|
|
45
|
+
* Request a purchase for products or subscriptions
|
|
46
|
+
* @param params - Purchase request configuration
|
|
47
|
+
* @param params.request - Platform-specific purchase parameters
|
|
48
|
+
* @param params.type - Type of purchase: 'inapp' for products (default) or 'subs' for subscriptions
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* ```typescript
|
|
52
|
+
* // Product purchase
|
|
53
|
+
* await requestPurchase({
|
|
54
|
+
* request: {
|
|
55
|
+
* ios: { sku: productId },
|
|
56
|
+
* android: { skus: [productId] }
|
|
57
|
+
* },
|
|
58
|
+
* type: 'inapp'
|
|
59
|
+
* });
|
|
60
|
+
*
|
|
61
|
+
* // Subscription purchase
|
|
62
|
+
* await requestPurchase({
|
|
63
|
+
* request: {
|
|
64
|
+
* ios: { sku: subscriptionId },
|
|
65
|
+
* android: {
|
|
66
|
+
* skus: [subscriptionId],
|
|
67
|
+
* subscriptionOffers: [{ sku: subscriptionId, offerToken: 'token' }]
|
|
68
|
+
* }
|
|
69
|
+
* },
|
|
70
|
+
* type: 'subs'
|
|
71
|
+
* });
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
/**
|
|
75
|
+
* Request a purchase for products or subscriptions
|
|
76
|
+
* ⚠️ Important: This is an event-based operation, not promise-based.
|
|
77
|
+
* Listen for events through purchaseUpdatedListener or purchaseErrorListener.
|
|
78
|
+
* @param params - Purchase request configuration
|
|
79
|
+
* @param params.request - Platform-specific purchase parameters
|
|
80
|
+
* @param params.type - Type of purchase: 'inapp' for products (default) or 'subs' for subscriptions
|
|
81
|
+
*/
|
|
82
|
+
export declare const requestPurchase: ({ request, type, }: {
|
|
83
|
+
request: RequestPurchaseProps | RequestSubscriptionProps;
|
|
84
|
+
type?: "inapp" | "subs";
|
|
85
|
+
}) => Promise<void>;
|
|
86
|
+
/**
|
|
87
|
+
* Get available purchases (purchased items not yet consumed/finished)
|
|
88
|
+
* @param params - Options for getting available purchases
|
|
89
|
+
* @param params.alsoPublishToEventListenerIOS - Whether to also publish to event listener (iOS only)
|
|
90
|
+
* @param params.onlyIncludeActiveItemsIOS - Whether to only include active items (iOS only)
|
|
91
|
+
* @param params.alsoPublishToEventListener - @deprecated Use alsoPublishToEventListenerIOS instead
|
|
92
|
+
* @param params.onlyIncludeActiveItems - @deprecated Use onlyIncludeActiveItemsIOS instead
|
|
93
|
+
*
|
|
94
|
+
* @example
|
|
95
|
+
* ```typescript
|
|
96
|
+
* const purchases = await getAvailablePurchases({
|
|
97
|
+
* onlyIncludeActiveItemsIOS: true
|
|
98
|
+
* });
|
|
99
|
+
* ```
|
|
100
|
+
*/
|
|
101
|
+
export declare const getAvailablePurchases: ({ alsoPublishToEventListener, onlyIncludeActiveItems, alsoPublishToEventListenerIOS, onlyIncludeActiveItemsIOS, }?: PurchaseOptions) => Promise<Purchase[]>;
|
|
102
|
+
/**
|
|
103
|
+
* Finish a transaction (consume or acknowledge)
|
|
104
|
+
* @param params - Transaction finish parameters
|
|
105
|
+
* @param params.purchase - The purchase to finish
|
|
106
|
+
* @param params.isConsumable - Whether this is a consumable product (Android only)
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* ```typescript
|
|
110
|
+
* await finishTransaction({
|
|
111
|
+
* purchase: myPurchase,
|
|
112
|
+
* isConsumable: true
|
|
113
|
+
* });
|
|
114
|
+
* ```
|
|
115
|
+
*/
|
|
116
|
+
export declare const finishTransaction: ({ purchase, isConsumable, }: FinishTransactionParams) => Promise<NitroPurchaseResult | boolean>;
|
|
117
|
+
/**
|
|
118
|
+
* Acknowledge a purchase (Android only)
|
|
119
|
+
* @param purchaseToken - The purchase token to acknowledge
|
|
120
|
+
*
|
|
121
|
+
* @example
|
|
122
|
+
* ```typescript
|
|
123
|
+
* await acknowledgePurchaseAndroid('purchase_token_here');
|
|
124
|
+
* ```
|
|
125
|
+
*/
|
|
126
|
+
export declare const acknowledgePurchaseAndroid: (purchaseToken: string) => Promise<NitroPurchaseResult>;
|
|
127
|
+
/**
|
|
128
|
+
* Consume a purchase (Android only)
|
|
129
|
+
* @param purchaseToken - The purchase token to consume
|
|
130
|
+
*
|
|
131
|
+
* @example
|
|
132
|
+
* ```typescript
|
|
133
|
+
* await consumePurchaseAndroid('purchase_token_here');
|
|
134
|
+
* ```
|
|
135
|
+
*/
|
|
136
|
+
export declare const consumePurchaseAndroid: (purchaseToken: string) => Promise<NitroPurchaseResult>;
|
|
137
|
+
/**
|
|
138
|
+
* Purchase updated event listener
|
|
139
|
+
* Fired when a purchase is successful or when a pending purchase is completed.
|
|
140
|
+
*
|
|
141
|
+
* @param listener - Function to call when a purchase is updated
|
|
142
|
+
* @returns EventSubscription object with remove method
|
|
143
|
+
*
|
|
144
|
+
* @example
|
|
145
|
+
* ```typescript
|
|
146
|
+
* const subscription = purchaseUpdatedListener((purchase) => {
|
|
147
|
+
* console.log('Purchase successful:', purchase);
|
|
148
|
+
* // 1. Validate receipt with backend
|
|
149
|
+
* // 2. Deliver content to user
|
|
150
|
+
* // 3. Call finishTransaction to acknowledge
|
|
151
|
+
* });
|
|
152
|
+
*
|
|
153
|
+
* // Later, clean up
|
|
154
|
+
* subscription.remove();
|
|
155
|
+
* ```
|
|
156
|
+
*/
|
|
157
|
+
export declare const purchaseUpdatedListener: (listener: (purchase: Purchase) => void) => EventSubscription;
|
|
158
|
+
/**
|
|
159
|
+
* Purchase error event listener
|
|
160
|
+
* Fired when a purchase fails or is cancelled by the user.
|
|
161
|
+
*
|
|
162
|
+
* @param listener - Function to call when a purchase error occurs
|
|
163
|
+
* @returns EventSubscription object with remove method
|
|
164
|
+
*
|
|
165
|
+
* @example
|
|
166
|
+
* ```typescript
|
|
167
|
+
* const subscription = purchaseErrorListener((error) => {
|
|
168
|
+
* switch (error.code) {
|
|
169
|
+
* case 'E_USER_CANCELLED':
|
|
170
|
+
* // User cancelled - no action needed
|
|
171
|
+
* break;
|
|
172
|
+
* case 'E_ITEM_UNAVAILABLE':
|
|
173
|
+
* // Product not available
|
|
174
|
+
* break;
|
|
175
|
+
* case 'E_NETWORK_ERROR':
|
|
176
|
+
* // Retry with backoff
|
|
177
|
+
* break;
|
|
178
|
+
* }
|
|
179
|
+
* });
|
|
180
|
+
*
|
|
181
|
+
* // Later, clean up
|
|
182
|
+
* subscription.remove();
|
|
183
|
+
* ```
|
|
184
|
+
*/
|
|
185
|
+
export declare const purchaseErrorListener: (listener: (error: NitroPurchaseResult) => void) => EventSubscription;
|
|
186
|
+
/**
|
|
187
|
+
* iOS-only listener for App Store promoted product events.
|
|
188
|
+
* Fired when a user clicks on a promoted in-app purchase in the App Store.
|
|
189
|
+
*
|
|
190
|
+
* @param listener - Callback function that receives the promoted product
|
|
191
|
+
* @returns EventSubscription object with remove method
|
|
192
|
+
*
|
|
193
|
+
* @example
|
|
194
|
+
* ```typescript
|
|
195
|
+
* const subscription = promotedProductListenerIOS((product) => {
|
|
196
|
+
* console.log('Promoted product:', product);
|
|
197
|
+
* // Trigger purchase flow for the promoted product
|
|
198
|
+
* });
|
|
199
|
+
*
|
|
200
|
+
* // Later, clean up
|
|
201
|
+
* subscription.remove();
|
|
202
|
+
* ```
|
|
203
|
+
*
|
|
204
|
+
* @platform iOS
|
|
205
|
+
*/
|
|
206
|
+
export declare const promotedProductListenerIOS: (listener: (product: Product) => void) => EventSubscription;
|
|
207
|
+
/**
|
|
208
|
+
* Validate receipt on both iOS and Android platforms
|
|
209
|
+
* @param sku - Product SKU
|
|
210
|
+
* @param androidOptions - Android-specific validation options (required for Android)
|
|
211
|
+
* @returns Promise<ReceiptValidationResultIOS | ReceiptValidationResultAndroid> - Platform-specific receipt validation result
|
|
212
|
+
*/
|
|
213
|
+
export declare const validateReceipt: (sku: string, androidOptions?: {
|
|
214
|
+
packageName: string;
|
|
215
|
+
productToken: string;
|
|
216
|
+
accessToken: string;
|
|
217
|
+
isSub?: boolean;
|
|
218
|
+
}) => Promise<ReceiptValidationResultIOS | ReceiptValidationResultAndroid>;
|
|
219
|
+
/**
|
|
220
|
+
* Sync iOS purchases with App Store (iOS only)
|
|
221
|
+
* @returns Promise<boolean>
|
|
222
|
+
* @platform iOS
|
|
223
|
+
*/
|
|
224
|
+
export declare const syncIOS: () => Promise<boolean>;
|
|
225
|
+
/**
|
|
226
|
+
* Request the promoted product from the App Store (iOS only)
|
|
227
|
+
* @returns Promise<Product | null> - The promoted product or null if none available
|
|
228
|
+
* @platform iOS
|
|
229
|
+
*/
|
|
230
|
+
export declare const requestPromotedProductIOS: () => Promise<Product | null>;
|
|
231
|
+
/**
|
|
232
|
+
* Present the code redemption sheet for offer codes (iOS only)
|
|
233
|
+
* @returns Promise<boolean> - True if the sheet was presented successfully
|
|
234
|
+
* @platform iOS
|
|
235
|
+
*/
|
|
236
|
+
export declare const presentCodeRedemptionSheetIOS: () => Promise<boolean>;
|
|
237
|
+
/**
|
|
238
|
+
* Buy promoted product on iOS
|
|
239
|
+
* @returns Promise<void>
|
|
240
|
+
* @platform iOS
|
|
241
|
+
*/
|
|
242
|
+
export declare const buyPromotedProductIOS: () => Promise<void>;
|
|
243
|
+
/**
|
|
244
|
+
* Clear unfinished transactions on iOS
|
|
245
|
+
* @returns Promise<void>
|
|
246
|
+
* @platform iOS
|
|
247
|
+
*/
|
|
248
|
+
export declare const clearTransactionIOS: () => Promise<void>;
|
|
249
|
+
/**
|
|
250
|
+
* Begin a refund request for a product on iOS 15+
|
|
251
|
+
* @param sku - The product SKU to refund
|
|
252
|
+
* @returns Promise<string | null> - The refund status or null if not available
|
|
253
|
+
* @platform iOS
|
|
254
|
+
*/
|
|
255
|
+
export declare const beginRefundRequestIOS: (sku: string) => Promise<string | null>;
|
|
256
|
+
/**
|
|
257
|
+
* Get subscription status for a product (iOS only)
|
|
258
|
+
* @param sku - The product SKU
|
|
259
|
+
* @returns Promise<any[]> - Array of subscription status objects
|
|
260
|
+
* @platform iOS
|
|
261
|
+
*/
|
|
262
|
+
export declare const subscriptionStatusIOS: (sku: string) => Promise<any[]>;
|
|
263
|
+
/**
|
|
264
|
+
* Get current entitlement for a product (iOS only)
|
|
265
|
+
* @param sku - The product SKU
|
|
266
|
+
* @returns Promise<Purchase | null> - Current entitlement or null
|
|
267
|
+
* @platform iOS
|
|
268
|
+
*/
|
|
269
|
+
export declare const currentEntitlementIOS: (sku: string) => Promise<Purchase | null>;
|
|
270
|
+
/**
|
|
271
|
+
* Get latest transaction for a product (iOS only)
|
|
272
|
+
* @param sku - The product SKU
|
|
273
|
+
* @returns Promise<Purchase | null> - Latest transaction or null
|
|
274
|
+
* @platform iOS
|
|
275
|
+
*/
|
|
276
|
+
export declare const latestTransactionIOS: (sku: string) => Promise<Purchase | null>;
|
|
277
|
+
/**
|
|
278
|
+
* Get pending transactions (iOS only)
|
|
279
|
+
* @returns Promise<Purchase[]> - Array of pending transactions
|
|
280
|
+
* @platform iOS
|
|
281
|
+
*/
|
|
282
|
+
export declare const getPendingTransactionsIOS: () => Promise<Purchase[]>;
|
|
283
|
+
/**
|
|
284
|
+
* Show manage subscriptions screen (iOS only)
|
|
285
|
+
* @returns Promise<boolean> - Success flag
|
|
286
|
+
* @platform iOS
|
|
287
|
+
*/
|
|
288
|
+
export declare const showManageSubscriptionsIOS: () => Promise<boolean>;
|
|
289
|
+
/**
|
|
290
|
+
* Check if user is eligible for intro offer (iOS only)
|
|
291
|
+
* @param groupID - The subscription group ID
|
|
292
|
+
* @returns Promise<boolean> - Eligibility status
|
|
293
|
+
* @platform iOS
|
|
294
|
+
*/
|
|
295
|
+
export declare const isEligibleForIntroOfferIOS: (groupID: string) => Promise<boolean>;
|
|
296
|
+
/**
|
|
297
|
+
* Get receipt data (iOS only)
|
|
298
|
+
* @returns Promise<string> - Base64 encoded receipt data
|
|
299
|
+
* @platform iOS
|
|
300
|
+
*/
|
|
301
|
+
export declare const getReceiptDataIOS: () => Promise<string>;
|
|
302
|
+
/**
|
|
303
|
+
* Check if transaction is verified (iOS only)
|
|
304
|
+
* @param sku - The product SKU
|
|
305
|
+
* @returns Promise<boolean> - Verification status
|
|
306
|
+
* @platform iOS
|
|
307
|
+
*/
|
|
308
|
+
export declare const isTransactionVerifiedIOS: (sku: string) => Promise<boolean>;
|
|
309
|
+
/**
|
|
310
|
+
* Get transaction JWS representation (iOS only)
|
|
311
|
+
* @param sku - The product SKU
|
|
312
|
+
* @returns Promise<string | null> - JWS representation or null
|
|
313
|
+
* @platform iOS
|
|
314
|
+
*/
|
|
315
|
+
export declare const getTransactionJwsIOS: (sku: string) => Promise<string | null>;
|
|
316
|
+
/**
|
|
317
|
+
* Get the storefront identifier for the user's App Store account (iOS only)
|
|
318
|
+
* @returns Promise<string> - The storefront identifier (e.g., 'USA' for United States)
|
|
319
|
+
* @platform iOS
|
|
320
|
+
*
|
|
321
|
+
* @example
|
|
322
|
+
* ```typescript
|
|
323
|
+
* const storefront = await getStorefrontIOS();
|
|
324
|
+
* console.log('User storefront:', storefront); // e.g., 'USA', 'GBR', 'KOR'
|
|
325
|
+
* ```
|
|
326
|
+
*/
|
|
327
|
+
export declare const getStorefrontIOS: () => Promise<string>;
|
|
328
|
+
/**
|
|
329
|
+
* iOS only - Gets the original app transaction ID if the app was purchased from the App Store
|
|
330
|
+
* @platform iOS
|
|
331
|
+
* @description
|
|
332
|
+
* This function retrieves the original app transaction information if the app was purchased
|
|
333
|
+
* from the App Store. Returns null if the app was not purchased (e.g., free app or TestFlight).
|
|
334
|
+
*
|
|
335
|
+
* @returns {Promise<string | null>} The original app transaction ID or null
|
|
336
|
+
*
|
|
337
|
+
* @example
|
|
338
|
+
* ```typescript
|
|
339
|
+
* const appTransaction = await getAppTransactionIOS();
|
|
340
|
+
* if (appTransaction) {
|
|
341
|
+
* console.log('App was purchased, transaction ID:', appTransaction);
|
|
342
|
+
* } else {
|
|
343
|
+
* console.log('App was not purchased from App Store');
|
|
344
|
+
* }
|
|
345
|
+
* ```
|
|
346
|
+
*/
|
|
347
|
+
export declare const getAppTransactionIOS: () => Promise<string | null>;
|
|
348
|
+
export { getActiveSubscriptions, hasActiveSubscriptions, } from './helpers/subscription';
|
|
349
|
+
export { convertNitroProductToProduct, convertNitroPurchaseToPurchase, convertProductToSubscriptionProduct, validateNitroProduct, validateNitroPurchase, checkTypeSynchronization, } from './utils/type-bridge';
|
|
350
|
+
/**
|
|
351
|
+
* @deprecated Use acknowledgePurchaseAndroid instead
|
|
352
|
+
*/
|
|
353
|
+
export declare const acknowledgePurchase: (purchaseToken: string) => Promise<NitroPurchaseResult>;
|
|
354
|
+
/**
|
|
355
|
+
* @deprecated Use consumePurchaseAndroid instead
|
|
356
|
+
*/
|
|
357
|
+
export declare const consumePurchase: (purchaseToken: string) => Promise<NitroPurchaseResult>;
|
|
10
358
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,mBAAmB,EAKpB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EACV,OAAO,EACP,QAAQ,EAER,oBAAoB,EACpB,wBAAwB,EAExB,eAAe,EACf,uBAAuB,EACvB,0BAA0B,EAC1B,8BAA8B,EAG/B,MAAM,SAAS,CAAA;AAUhB,YAAY,EACV,KAAK,EACL,YAAY,EACZ,aAAa,EACb,mBAAmB,GACpB,MAAM,qBAAqB,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,eAAe,CAAA;AAG7B,MAAM,WAAW,iBAAiB;IAChC,MAAM,IAAI,IAAI,CAAA;CACf;AAKD,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAOvC;;GAEG;AACH,eAAO,MAAM,cAAc,QAAa,OAAO,CAAC,OAAO,CAOtD,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,QAAa,OAAO,CAAC,OAAO,CAOrD,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,aAAa,GAAU,iBAGjC;IACD,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;CACxB,KAAG,OAAO,CAAC,OAAO,EAAE,CAsBpB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,GAAU,oBAGnC;IACD,OAAO,EAAE,oBAAoB,GAAG,wBAAwB,CAAA;IACxD,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;CACxB,KAAG,OAAO,CAAC,IAAI,CAgDf,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,qBAAqB,GAAU,oHAKzC,eAAoB,KAAG,OAAO,CAAC,QAAQ,EAAE,CAwD3C,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,iBAAiB,GAAU,6BAGrC,uBAAuB,KAAG,OAAO,CAAC,mBAAmB,GAAG,OAAO,CAyCjE,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,0BAA0B,GACrC,eAAe,MAAM,KACpB,OAAO,CAAC,mBAAmB,CA4B7B,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,GACjC,eAAe,MAAM,KACpB,OAAO,CAAC,mBAAmB,CA4B7B,CAAA;AASD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,uBAAuB,GAClC,UAAU,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,KACrC,iBA2BF,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,eAAO,MAAM,qBAAqB,GAChC,UAAU,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,KAC7C,iBAWF,CAAA;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,0BAA0B,GACrC,UAAU,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,KACnC,iBAkCF,CAAA;AAMD;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAC1B,KAAK,MAAM,EACX,iBAAiB;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,KACA,OAAO,CAAC,0BAA0B,GAAG,8BAA8B,CA0DrE,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,OAAO,QAAa,OAAO,CAAC,OAAO,CAmB/C,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,QAAa,OAAO,CAAC,OAAO,GAAG,IAAI,CAuBxE,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,QAAa,OAAO,CAAC,OAAO,CAmBrE,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,QAAa,OAAO,CAAC,IAAI,CAmB1D,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,QAAa,OAAO,CAAC,IAAI,CAmBxD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAChC,KAAK,MAAM,KACV,OAAO,CAAC,MAAM,GAAG,IAAI,CAmBvB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAAU,KAAK,MAAM,KAAG,OAAO,CAAC,GAAG,EAAE,CAoBtE,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAChC,KAAK,MAAM,KACV,OAAO,CAAC,QAAQ,GAAG,IAAI,CAuBzB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,GAC/B,KAAK,MAAM,KACV,OAAO,CAAC,QAAQ,GAAG,IAAI,CAuBzB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,QAAa,OAAO,CAAC,QAAQ,EAAE,CAoBpE,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,QAAa,OAAO,CAAC,OAAO,CAmBlE,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,GACrC,SAAS,MAAM,KACd,OAAO,CAAC,OAAO,CAmBjB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,QAAa,OAAO,CAAC,MAAM,CAmBxD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,GACnC,KAAK,MAAM,KACV,OAAO,CAAC,OAAO,CAmBjB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,GAC/B,KAAK,MAAM,KACV,OAAO,CAAC,MAAM,GAAG,IAAI,CAmBvB,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,QAAa,OAAO,CAAC,MAAM,CAavD,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,oBAAoB,QAAa,OAAO,CAAC,MAAM,GAAG,IAAI,CAalE,CAAA;AAGD,OAAO,EACL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,wBAAwB,CAAA;AAG/B,OAAO,EACL,4BAA4B,EAC5B,8BAA8B,EAC9B,mCAAmC,EACnC,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,qBAAqB,CAAA;AAG5B;;GAEG;AACH,eAAO,MAAM,mBAAmB,kBA3yBf,MAAM,KACpB,OAAO,CAAC,mBAAmB,CA0yB+B,CAAA;AAE7D;;GAEG;AACH,eAAO,MAAM,eAAe,kBAvwBX,MAAM,KACpB,OAAO,CAAC,mBAAmB,CAswBuB,CAAA"}
|