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,160 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.validateReceiptIos = exports.presentCodeRedemptionSheetIOS = exports.getReceiptIOS = exports.getPromotedProductIOS = exports.getPendingPurchasesIOS = exports.deepLinkToSubscriptionsIos = exports.clearTransactionIOS = exports.clearProductsIOS = exports.buyPromotedProductIOS = void 0;
|
|
7
|
-
var _reactNative = require("react-native");
|
|
8
|
-
var _internal = require("../internal");
|
|
9
|
-
const {
|
|
10
|
-
RNIapIos
|
|
11
|
-
} = _reactNative.NativeModules;
|
|
12
|
-
/**
|
|
13
|
-
* Get the current receipt base64 encoded in IOS.
|
|
14
|
-
* @returns {Promise<ProductPurchase[]>}
|
|
15
|
-
*/
|
|
16
|
-
const getPendingPurchasesIOS = async () => (0, _internal.getIosModule)().getPendingTransactions();
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Get the current receipt base64 encoded in IOS.
|
|
20
|
-
*
|
|
21
|
-
* The sequence should be as follows:
|
|
22
|
-
* Call getReceiptIOS({forceRefresh: false}). That will return the cached receipt that is available on TestFlight and Production.
|
|
23
|
-
* In the case of Sandbox the receipt might not be cached, causing it to return nil.
|
|
24
|
-
* In that case you might want to let the user that they will to be prompted for credentials.
|
|
25
|
-
* If they accept, call it again with `getReceiptIOS({forceRefresh:true}) If it fails or the user declines, assume they haven't purchased any items.
|
|
26
|
-
* Reference: https://developer.apple.com/forums/thread/662350
|
|
27
|
-
*
|
|
28
|
-
* From: https://apphud.com/blog/app-store-receipt-validation#what-is-app-store-receipt
|
|
29
|
-
> Q: Does a receipt always exist in the app?
|
|
30
|
-
> A: If a user downloaded the app from the App Store – yes. However, in sandbox if your app was installed via Xcode or Testflight, then there won't be a receipt until you make a purchase or restore.
|
|
31
|
-
*
|
|
32
|
-
## Usage
|
|
33
|
-
```tsx
|
|
34
|
-
import {getReceiptIOS} from 'react-native-iap';
|
|
35
|
-
try{
|
|
36
|
-
let receipt = await getReceiptIOS({forceRefresh: false});
|
|
37
|
-
if(!receipt){
|
|
38
|
-
// Let user know that they might get prompted for credentials
|
|
39
|
-
const shouldShowPrompt = // Display UI with details, Did user agree?. this only for Sandbox testing
|
|
40
|
-
if(shouldShowPrompt){
|
|
41
|
-
receipt = await getReceiptIOS({forceRefresh: true});
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}catch(error:Error){
|
|
45
|
-
// error while getting the receipt, it might indicate an invalid receipt of a connection error while trying to get it
|
|
46
|
-
}
|
|
47
|
-
// If !receipt assume user doesn't own the items
|
|
48
|
-
```
|
|
49
|
-
* @param {forceRefresh?:boolean} Requests the receipt from Bundle.main.appStoreReceiptURL.
|
|
50
|
-
Based on the note above, looks like forceRefresh only makes sense when testing an app not downloaded from the Appstore.
|
|
51
|
-
And only afer a direct user action.
|
|
52
|
-
* @returns {Promise<string | undefined | null>} The receipt data
|
|
53
|
-
*/
|
|
54
|
-
exports.getPendingPurchasesIOS = getPendingPurchasesIOS;
|
|
55
|
-
const getReceiptIOS = async ({
|
|
56
|
-
forceRefresh
|
|
57
|
-
}) => {
|
|
58
|
-
if (!(0, _internal.isIosStorekit2)()) {
|
|
59
|
-
return RNIapIos.requestReceipt(forceRefresh ?? false);
|
|
60
|
-
} else {
|
|
61
|
-
return Promise.reject('Only available on Sk1');
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
/**
|
|
65
|
-
* Launches a modal to register the redeem offer code in IOS.
|
|
66
|
-
* @returns {Promise<null>}
|
|
67
|
-
*/
|
|
68
|
-
exports.getReceiptIOS = getReceiptIOS;
|
|
69
|
-
const presentCodeRedemptionSheetIOS = async () => (0, _internal.getIosModule)().presentCodeRedemptionSheet();
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Should Add Store Payment (iOS only)
|
|
73
|
-
* Indicates the the App Store purchase should continue from the app instead of the App Store.
|
|
74
|
-
* @returns {Promise<Product | null>} promoted product
|
|
75
|
-
*/
|
|
76
|
-
exports.presentCodeRedemptionSheetIOS = presentCodeRedemptionSheetIOS;
|
|
77
|
-
const getPromotedProductIOS = () => {
|
|
78
|
-
if (!(0, _internal.isIosStorekit2)()) {
|
|
79
|
-
return RNIapIos.promotedProduct();
|
|
80
|
-
} else {
|
|
81
|
-
return Promise.reject('Only available on Sk1');
|
|
82
|
-
}
|
|
83
|
-
};
|
|
84
|
-
|
|
85
|
-
/**
|
|
86
|
-
* Buy the currently selected promoted product (iOS only)
|
|
87
|
-
* Initiates the payment process for a promoted product. Should only be called in response to the `iap-promoted-product` event.
|
|
88
|
-
* @returns {Promise<void>}
|
|
89
|
-
*/
|
|
90
|
-
exports.getPromotedProductIOS = getPromotedProductIOS;
|
|
91
|
-
const buyPromotedProductIOS = () => (0, _internal.getIosModule)().buyPromotedProduct();
|
|
92
|
-
exports.buyPromotedProductIOS = buyPromotedProductIOS;
|
|
93
|
-
const fetchJsonOrThrow = async (url, receiptBody) => {
|
|
94
|
-
const response = await fetch(url, {
|
|
95
|
-
method: 'POST',
|
|
96
|
-
headers: {
|
|
97
|
-
Accept: 'application/json',
|
|
98
|
-
'Content-Type': 'application/json'
|
|
99
|
-
},
|
|
100
|
-
body: JSON.stringify(receiptBody)
|
|
101
|
-
});
|
|
102
|
-
if (!response.ok) {
|
|
103
|
-
throw Object.assign(new Error(response.statusText), {
|
|
104
|
-
statusCode: response.status
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
return response.json();
|
|
108
|
-
};
|
|
109
|
-
const TEST_RECEIPT = 21007;
|
|
110
|
-
const requestAgnosticReceiptValidationIos = async receiptBody => {
|
|
111
|
-
const response = await fetchJsonOrThrow('https://buy.itunes.apple.com/verifyReceipt', receiptBody);
|
|
112
|
-
|
|
113
|
-
// Best practice is to check for test receipt and check sandbox instead
|
|
114
|
-
// https://developer.apple.com/documentation/appstorereceipts/verifyreceipt
|
|
115
|
-
if (response && response.status === TEST_RECEIPT) {
|
|
116
|
-
const testResponse = await fetchJsonOrThrow('https://sandbox.itunes.apple.com/verifyReceipt', receiptBody);
|
|
117
|
-
return testResponse;
|
|
118
|
-
}
|
|
119
|
-
return response;
|
|
120
|
-
};
|
|
121
|
-
|
|
122
|
-
/**
|
|
123
|
-
* Validate receipt for iOS.
|
|
124
|
-
* @param {object} receiptBody the receipt body to send to apple server.
|
|
125
|
-
* @param {boolean} isTest whether this is in test environment which is sandbox.
|
|
126
|
-
* @returns {Promise<Apple.ReceiptValidationResponse | false>}
|
|
127
|
-
*/
|
|
128
|
-
const validateReceiptIos = async ({
|
|
129
|
-
receiptBody,
|
|
130
|
-
isTest
|
|
131
|
-
}) => {
|
|
132
|
-
if (isTest == null) {
|
|
133
|
-
return await requestAgnosticReceiptValidationIos(receiptBody);
|
|
134
|
-
}
|
|
135
|
-
const url = isTest ? 'https://sandbox.itunes.apple.com/verifyReceipt' : 'https://buy.itunes.apple.com/verifyReceipt';
|
|
136
|
-
const response = await fetchJsonOrThrow(url, receiptBody);
|
|
137
|
-
return response;
|
|
138
|
-
};
|
|
139
|
-
|
|
140
|
-
/**
|
|
141
|
-
* Clear Transaction (iOS only)
|
|
142
|
-
* Finish remaining transactions. Related to issue #257 and #801
|
|
143
|
-
* link : https://github.com/hyochan/react-native-iap/issues/257
|
|
144
|
-
* https://github.com/hyochan/react-native-iap/issues/801
|
|
145
|
-
* @returns {Promise<void>}
|
|
146
|
-
*/
|
|
147
|
-
exports.validateReceiptIos = validateReceiptIos;
|
|
148
|
-
const clearTransactionIOS = () => (0, _internal.getIosModule)().clearTransaction();
|
|
149
|
-
|
|
150
|
-
/**
|
|
151
|
-
* Clear valid Products (iOS only)
|
|
152
|
-
* Remove all products which are validated by Apple server.
|
|
153
|
-
* @returns {void}
|
|
154
|
-
*/
|
|
155
|
-
exports.clearTransactionIOS = clearTransactionIOS;
|
|
156
|
-
const clearProductsIOS = () => (0, _internal.getIosModule)().clearProducts();
|
|
157
|
-
exports.clearProductsIOS = clearProductsIOS;
|
|
158
|
-
const deepLinkToSubscriptionsIos = () => _reactNative.Linking.openURL('https://apps.apple.com/account/subscriptions');
|
|
159
|
-
exports.deepLinkToSubscriptionsIos = deepLinkToSubscriptionsIos;
|
|
160
|
-
//# sourceMappingURL=ios.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_internal","RNIapIos","NativeModules","getPendingPurchasesIOS","getIosModule","getPendingTransactions","exports","getReceiptIOS","forceRefresh","isIosStorekit2","requestReceipt","Promise","reject","presentCodeRedemptionSheetIOS","presentCodeRedemptionSheet","getPromotedProductIOS","promotedProduct","buyPromotedProductIOS","buyPromotedProduct","fetchJsonOrThrow","url","receiptBody","response","fetch","method","headers","Accept","body","JSON","stringify","ok","Object","assign","Error","statusText","statusCode","status","json","TEST_RECEIPT","requestAgnosticReceiptValidationIos","testResponse","validateReceiptIos","isTest","clearTransactionIOS","clearTransaction","clearProductsIOS","clearProducts","deepLinkToSubscriptionsIos","Linking","openURL"],"sourceRoot":"../../../src","sources":["modules/ios.ts"],"mappings":"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"}
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.validateReceiptIos = exports.sync = exports.subscriptionStatus = exports.showManageSubscriptions = exports.latestTransaction = exports.isTransactionVerified = exports.isEligibleForIntroOffer = exports.getTransactionJws = exports.getReceiptIos = exports.finishTransaction = exports.currentEntitlement = exports.beginRefundRequest = void 0;
|
|
7
|
-
var _reactNative = require("react-native");
|
|
8
|
-
const {
|
|
9
|
-
RNIapIosSk2
|
|
10
|
-
} = _reactNative.NativeModules;
|
|
11
|
-
/**
|
|
12
|
-
* Sync state with Appstore (iOS only)
|
|
13
|
-
* https://developer.apple.com/documentation/storekit/appstore/3791906-sync
|
|
14
|
-
*/
|
|
15
|
-
const sync = () => RNIapIosSk2.sync();
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
*
|
|
19
|
-
*/
|
|
20
|
-
exports.sync = sync;
|
|
21
|
-
const isEligibleForIntroOffer = groupID => RNIapIosSk2.isEligibleForIntroOffer(groupID);
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
*
|
|
25
|
-
*/
|
|
26
|
-
exports.isEligibleForIntroOffer = isEligibleForIntroOffer;
|
|
27
|
-
const subscriptionStatus = sku => RNIapIosSk2.subscriptionStatus(sku);
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
*
|
|
31
|
-
*/
|
|
32
|
-
exports.subscriptionStatus = subscriptionStatus;
|
|
33
|
-
const currentEntitlement = sku => RNIapIosSk2.currentEntitlement(sku);
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
*
|
|
37
|
-
*/
|
|
38
|
-
exports.currentEntitlement = currentEntitlement;
|
|
39
|
-
const latestTransaction = sku => RNIapIosSk2.latestTransaction(sku);
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
*
|
|
43
|
-
*/
|
|
44
|
-
exports.latestTransaction = latestTransaction;
|
|
45
|
-
const beginRefundRequest = sku => RNIapIosSk2.beginRefundRequest(sku);
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
*
|
|
49
|
-
*/
|
|
50
|
-
exports.beginRefundRequest = beginRefundRequest;
|
|
51
|
-
const showManageSubscriptions = () => RNIapIosSk2.showManageSubscriptions();
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
*
|
|
55
|
-
*/
|
|
56
|
-
exports.showManageSubscriptions = showManageSubscriptions;
|
|
57
|
-
const finishTransaction = transactionIdentifier => RNIapIosSk2.finishTransaction(transactionIdentifier);
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* Get the receipt data from the iOS device.
|
|
61
|
-
* This returns the base64 encoded receipt data which can be sent to your server
|
|
62
|
-
* for verification with Apple's server.
|
|
63
|
-
*
|
|
64
|
-
* NOTE: For proper security, always verify receipts on your server using
|
|
65
|
-
* Apple's verifyReceipt endpoint, not directly from the app.
|
|
66
|
-
*
|
|
67
|
-
* @returns {Promise<string>} Base64 encoded receipt data
|
|
68
|
-
*/
|
|
69
|
-
exports.finishTransaction = finishTransaction;
|
|
70
|
-
const getReceiptIos = () => RNIapIosSk2.getReceiptData();
|
|
71
|
-
|
|
72
|
-
/**
|
|
73
|
-
* Check if a transaction is verified through StoreKit 2.
|
|
74
|
-
* StoreKit 2 performs local verification of transaction JWS signatures.
|
|
75
|
-
*
|
|
76
|
-
* @param {string} sku The product's SKU (on iOS)
|
|
77
|
-
* @returns {Promise<boolean>} True if the transaction is verified
|
|
78
|
-
*/
|
|
79
|
-
exports.getReceiptIos = getReceiptIos;
|
|
80
|
-
const isTransactionVerified = sku => RNIapIosSk2.isTransactionVerified(sku);
|
|
81
|
-
|
|
82
|
-
/**
|
|
83
|
-
* Get the JWS representation of a purchase for server-side verification.
|
|
84
|
-
* The JWS (JSON Web Signature) can be verified on your server using Apple's public keys.
|
|
85
|
-
*
|
|
86
|
-
* @param {string} sku The product's SKU (on iOS)
|
|
87
|
-
* @returns {Promise<string>} JWS representation of the transaction
|
|
88
|
-
*/
|
|
89
|
-
exports.isTransactionVerified = isTransactionVerified;
|
|
90
|
-
const getTransactionJws = sku => RNIapIosSk2.getTransactionJws(sku);
|
|
91
|
-
|
|
92
|
-
/**
|
|
93
|
-
* Validate receipt for iOS using StoreKit 2's built-in verification.
|
|
94
|
-
* Returns receipt data and verification information to help with server-side validation.
|
|
95
|
-
*
|
|
96
|
-
* NOTE: For proper security, Apple recommends verifying receipts on your server using
|
|
97
|
-
* the verifyReceipt endpoint rather than relying solely on client-side verification.
|
|
98
|
-
*
|
|
99
|
-
* @param {string} sku The product's SKU (on iOS)
|
|
100
|
-
* @returns {Promise<{
|
|
101
|
-
* isValid: boolean;
|
|
102
|
-
* receiptData: string;
|
|
103
|
-
* jwsRepresentation: string;
|
|
104
|
-
* latestTransaction?: TransactionSk2;
|
|
105
|
-
* }>}
|
|
106
|
-
*/
|
|
107
|
-
exports.getTransactionJws = getTransactionJws;
|
|
108
|
-
const validateReceiptIos = async sku => {
|
|
109
|
-
const result = await RNIapIosSk2.validateReceiptIos(sku);
|
|
110
|
-
return result;
|
|
111
|
-
};
|
|
112
|
-
exports.validateReceiptIos = validateReceiptIos;
|
|
113
|
-
//# sourceMappingURL=iosSk2.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","RNIapIosSk2","NativeModules","sync","exports","isEligibleForIntroOffer","groupID","subscriptionStatus","sku","currentEntitlement","latestTransaction","beginRefundRequest","showManageSubscriptions","finishTransaction","transactionIdentifier","getReceiptIos","getReceiptData","isTransactionVerified","getTransactionJws","validateReceiptIos","result"],"sourceRoot":"../../../src","sources":["modules/iosSk2.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAYA,MAAM;EAACC;AAAW,CAAC,GAAGC,0BAAa;AAyEnC;AACA;AACA;AACA;AACO,MAAMC,IAAI,GAAGA,CAAA,KAAqBF,WAAW,CAACE,IAAI,CAAC,CAAC;;AAE3D;AACA;AACA;AAFAC,OAAA,CAAAD,IAAA,GAAAA,IAAA;AAGO,MAAME,uBAAuB,GAAIC,OAAe,IACrDL,WAAW,CAACI,uBAAuB,CAACC,OAAO,CAAC;;AAE9C;AACA;AACA;AAFAF,OAAA,CAAAC,uBAAA,GAAAA,uBAAA;AAIO,MAAME,kBAAkB,GAAIC,GAAW,IAC5CP,WAAW,CAACM,kBAAkB,CAACC,GAAG,CAAC;;AAErC;AACA;AACA;AAFAJ,OAAA,CAAAG,kBAAA,GAAAA,kBAAA;AAGO,MAAME,kBAAkB,GAAID,GAAW,IAC5CP,WAAW,CAACQ,kBAAkB,CAACD,GAAG,CAAC;;AAErC;AACA;AACA;AAFAJ,OAAA,CAAAK,kBAAA,GAAAA,kBAAA;AAGO,MAAMC,iBAAiB,GAAIF,GAAW,IAC3CP,WAAW,CAACS,iBAAiB,CAACF,GAAG,CAAC;;AAEpC;AACA;AACA;AAFAJ,OAAA,CAAAM,iBAAA,GAAAA,iBAAA;AAGO,MAAMC,kBAAkB,GAAIH,GAAW,IAC5CP,WAAW,CAACU,kBAAkB,CAACH,GAAG,CAAC;;AAErC;AACA;AACA;AAFAJ,OAAA,CAAAO,kBAAA,GAAAA,kBAAA;AAGO,MAAMC,uBAAuB,GAAGA,CAAA,KACrCX,WAAW,CAACW,uBAAuB,CAAC,CAAC;;AAEvC;AACA;AACA;AAFAR,OAAA,CAAAQ,uBAAA,GAAAA,uBAAA;AAGO,MAAMC,iBAAiB,GAC5BC,qBAA6B,IACRb,WAAW,CAACY,iBAAiB,CAACC,qBAAqB,CAAC;;AAE3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATAV,OAAA,CAAAS,iBAAA,GAAAA,iBAAA;AAUO,MAAME,aAAa,GAAGA,CAAA,KAC3Bd,WAAW,CAACe,cAAc,CAAC,CAAC;;AAE9B;AACA;AACA;AACA;AACA;AACA;AACA;AANAZ,OAAA,CAAAW,aAAA,GAAAA,aAAA;AAOO,MAAME,qBAAqB,GAAIT,GAAW,IAC/CP,WAAW,CAACgB,qBAAqB,CAACT,GAAG,CAAC;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA;AANAJ,OAAA,CAAAa,qBAAA,GAAAA,qBAAA;AAOO,MAAMC,iBAAiB,GAAIV,GAAW,IAC3CP,WAAW,CAACiB,iBAAiB,CAACV,GAAG,CAAC;;AAEpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdAJ,OAAA,CAAAc,iBAAA,GAAAA,iBAAA;AAeO,MAAMC,kBAAkB,GAAG,MAChCX,GAAW,IAMP;EACJ,MAAMY,MAAM,GAAG,MAAMnB,WAAW,CAACkB,kBAAkB,CAACX,GAAG,CAAC;EACxD,OAAOY,MAAM;AACf,CAAC;AAAChB,OAAA,CAAAe,kBAAA,GAAAA,kBAAA"}
|
|
@@ -1,170 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.PurchaseError = exports.ErrorCodeUtils = exports.ErrorCodeMapping = exports.ErrorCode = void 0;
|
|
7
|
-
let ErrorCode = exports.ErrorCode = /*#__PURE__*/function (ErrorCode) {
|
|
8
|
-
ErrorCode["E_UNKNOWN"] = "E_UNKNOWN";
|
|
9
|
-
ErrorCode["E_USER_CANCELLED"] = "E_USER_CANCELLED";
|
|
10
|
-
ErrorCode["E_USER_ERROR"] = "E_USER_ERROR";
|
|
11
|
-
ErrorCode["E_ITEM_UNAVAILABLE"] = "E_ITEM_UNAVAILABLE";
|
|
12
|
-
ErrorCode["E_REMOTE_ERROR"] = "E_REMOTE_ERROR";
|
|
13
|
-
ErrorCode["E_NETWORK_ERROR"] = "E_NETWORK_ERROR";
|
|
14
|
-
ErrorCode["E_SERVICE_ERROR"] = "E_SERVICE_ERROR";
|
|
15
|
-
ErrorCode["E_RECEIPT_FAILED"] = "E_RECEIPT_FAILED";
|
|
16
|
-
ErrorCode["E_RECEIPT_FINISHED_FAILED"] = "E_RECEIPT_FINISHED_FAILED";
|
|
17
|
-
ErrorCode["E_NOT_PREPARED"] = "E_NOT_PREPARED";
|
|
18
|
-
ErrorCode["E_NOT_ENDED"] = "E_NOT_ENDED";
|
|
19
|
-
ErrorCode["E_ALREADY_OWNED"] = "E_ALREADY_OWNED";
|
|
20
|
-
ErrorCode["E_DEVELOPER_ERROR"] = "E_DEVELOPER_ERROR";
|
|
21
|
-
ErrorCode["E_BILLING_RESPONSE_JSON_PARSE_ERROR"] = "E_BILLING_RESPONSE_JSON_PARSE_ERROR";
|
|
22
|
-
ErrorCode["E_DEFERRED_PAYMENT"] = "E_DEFERRED_PAYMENT";
|
|
23
|
-
ErrorCode["E_INTERRUPTED"] = "E_INTERRUPTED";
|
|
24
|
-
ErrorCode["E_IAP_NOT_AVAILABLE"] = "E_IAP_NOT_AVAILABLE";
|
|
25
|
-
ErrorCode["E_PURCHASE_ERROR"] = "E_PURCHASE_ERROR";
|
|
26
|
-
ErrorCode["E_SYNC_ERROR"] = "E_SYNC_ERROR";
|
|
27
|
-
ErrorCode["E_TRANSACTION_VALIDATION_FAILED"] = "E_TRANSACTION_VALIDATION_FAILED";
|
|
28
|
-
ErrorCode["E_ACTIVITY_UNAVAILABLE"] = "E_ACTIVITY_UNAVAILABLE";
|
|
29
|
-
ErrorCode["E_ALREADY_PREPARED"] = "E_ALREADY_PREPARED";
|
|
30
|
-
ErrorCode["E_PENDING"] = "E_PENDING";
|
|
31
|
-
ErrorCode["E_CONNECTION_CLOSED"] = "E_CONNECTION_CLOSED";
|
|
32
|
-
return ErrorCode;
|
|
33
|
-
}({});
|
|
34
|
-
/**
|
|
35
|
-
* Platform-specific error code mappings
|
|
36
|
-
* Maps ErrorCode enum values to platform-specific integer codes
|
|
37
|
-
*/
|
|
38
|
-
const ErrorCodeMapping = exports.ErrorCodeMapping = {
|
|
39
|
-
ios: {
|
|
40
|
-
[ErrorCode.E_UNKNOWN]: 0,
|
|
41
|
-
[ErrorCode.E_SERVICE_ERROR]: 1,
|
|
42
|
-
[ErrorCode.E_USER_CANCELLED]: 2,
|
|
43
|
-
[ErrorCode.E_USER_ERROR]: 3,
|
|
44
|
-
[ErrorCode.E_ITEM_UNAVAILABLE]: 4,
|
|
45
|
-
[ErrorCode.E_REMOTE_ERROR]: 5,
|
|
46
|
-
[ErrorCode.E_NETWORK_ERROR]: 6,
|
|
47
|
-
[ErrorCode.E_RECEIPT_FAILED]: 7,
|
|
48
|
-
[ErrorCode.E_RECEIPT_FINISHED_FAILED]: 8,
|
|
49
|
-
[ErrorCode.E_DEVELOPER_ERROR]: 9,
|
|
50
|
-
[ErrorCode.E_PURCHASE_ERROR]: 10,
|
|
51
|
-
[ErrorCode.E_SYNC_ERROR]: 11,
|
|
52
|
-
[ErrorCode.E_DEFERRED_PAYMENT]: 12,
|
|
53
|
-
[ErrorCode.E_TRANSACTION_VALIDATION_FAILED]: 13,
|
|
54
|
-
[ErrorCode.E_NOT_PREPARED]: 14,
|
|
55
|
-
[ErrorCode.E_NOT_ENDED]: 15,
|
|
56
|
-
[ErrorCode.E_ALREADY_OWNED]: 16,
|
|
57
|
-
[ErrorCode.E_BILLING_RESPONSE_JSON_PARSE_ERROR]: 17,
|
|
58
|
-
[ErrorCode.E_INTERRUPTED]: 18,
|
|
59
|
-
[ErrorCode.E_IAP_NOT_AVAILABLE]: 19,
|
|
60
|
-
[ErrorCode.E_ACTIVITY_UNAVAILABLE]: 20,
|
|
61
|
-
[ErrorCode.E_ALREADY_PREPARED]: 21,
|
|
62
|
-
[ErrorCode.E_PENDING]: 22,
|
|
63
|
-
[ErrorCode.E_CONNECTION_CLOSED]: 23
|
|
64
|
-
},
|
|
65
|
-
android: {
|
|
66
|
-
[ErrorCode.E_UNKNOWN]: 'E_UNKNOWN',
|
|
67
|
-
[ErrorCode.E_USER_CANCELLED]: 'E_USER_CANCELLED',
|
|
68
|
-
[ErrorCode.E_USER_ERROR]: 'E_USER_ERROR',
|
|
69
|
-
[ErrorCode.E_ITEM_UNAVAILABLE]: 'E_ITEM_UNAVAILABLE',
|
|
70
|
-
[ErrorCode.E_REMOTE_ERROR]: 'E_REMOTE_ERROR',
|
|
71
|
-
[ErrorCode.E_NETWORK_ERROR]: 'E_NETWORK_ERROR',
|
|
72
|
-
[ErrorCode.E_SERVICE_ERROR]: 'E_SERVICE_ERROR',
|
|
73
|
-
[ErrorCode.E_RECEIPT_FAILED]: 'E_RECEIPT_FAILED',
|
|
74
|
-
[ErrorCode.E_RECEIPT_FINISHED_FAILED]: 'E_RECEIPT_FINISHED_FAILED',
|
|
75
|
-
[ErrorCode.E_NOT_PREPARED]: 'E_NOT_PREPARED',
|
|
76
|
-
[ErrorCode.E_NOT_ENDED]: 'E_NOT_ENDED',
|
|
77
|
-
[ErrorCode.E_ALREADY_OWNED]: 'E_ALREADY_OWNED',
|
|
78
|
-
[ErrorCode.E_DEVELOPER_ERROR]: 'E_DEVELOPER_ERROR',
|
|
79
|
-
[ErrorCode.E_BILLING_RESPONSE_JSON_PARSE_ERROR]: 'E_BILLING_RESPONSE_JSON_PARSE_ERROR',
|
|
80
|
-
[ErrorCode.E_DEFERRED_PAYMENT]: 'E_DEFERRED_PAYMENT',
|
|
81
|
-
[ErrorCode.E_INTERRUPTED]: 'E_INTERRUPTED',
|
|
82
|
-
[ErrorCode.E_IAP_NOT_AVAILABLE]: 'E_IAP_NOT_AVAILABLE',
|
|
83
|
-
[ErrorCode.E_PURCHASE_ERROR]: 'E_PURCHASE_ERROR',
|
|
84
|
-
[ErrorCode.E_SYNC_ERROR]: 'E_SYNC_ERROR',
|
|
85
|
-
[ErrorCode.E_TRANSACTION_VALIDATION_FAILED]: 'E_TRANSACTION_VALIDATION_FAILED',
|
|
86
|
-
[ErrorCode.E_ACTIVITY_UNAVAILABLE]: 'E_ACTIVITY_UNAVAILABLE',
|
|
87
|
-
[ErrorCode.E_ALREADY_PREPARED]: 'E_ALREADY_PREPARED',
|
|
88
|
-
[ErrorCode.E_PENDING]: 'E_PENDING',
|
|
89
|
-
[ErrorCode.E_CONNECTION_CLOSED]: 'E_CONNECTION_CLOSED'
|
|
90
|
-
}
|
|
91
|
-
};
|
|
92
|
-
class PurchaseError {
|
|
93
|
-
constructor(name, message, responseCode, debugMessage, code, productId, platform) {
|
|
94
|
-
this.name = name;
|
|
95
|
-
this.message = message;
|
|
96
|
-
this.responseCode = responseCode;
|
|
97
|
-
this.debugMessage = debugMessage;
|
|
98
|
-
this.code = code;
|
|
99
|
-
this.productId = productId;
|
|
100
|
-
this.platform = platform;
|
|
101
|
-
this.name = '[react-native-iap]: PurchaseError';
|
|
102
|
-
this.message = message;
|
|
103
|
-
this.responseCode = responseCode;
|
|
104
|
-
this.debugMessage = debugMessage;
|
|
105
|
-
this.code = code;
|
|
106
|
-
this.productId = productId;
|
|
107
|
-
this.platform = platform;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
/**
|
|
111
|
-
* Creates a PurchaseError from platform-specific error data
|
|
112
|
-
* @param errorData Raw error data from native modules
|
|
113
|
-
* @param platform Platform where the error occurred
|
|
114
|
-
* @returns Properly typed PurchaseError instance
|
|
115
|
-
*/
|
|
116
|
-
static fromPlatformError(errorData, platform) {
|
|
117
|
-
const errorCode = errorData.code ? ErrorCodeUtils.fromPlatformCode(errorData.code, platform) : ErrorCode.E_UNKNOWN;
|
|
118
|
-
return new PurchaseError('[react-native-iap]: PurchaseError', errorData.message || 'Unknown error occurred', errorData.responseCode, errorData.debugMessage, errorCode, errorData.productId, platform);
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
/**
|
|
122
|
-
* Gets the platform-specific error code for this error
|
|
123
|
-
* @returns Platform-specific error code
|
|
124
|
-
*/
|
|
125
|
-
getPlatformCode() {
|
|
126
|
-
if (!this.code || !this.platform) return undefined;
|
|
127
|
-
return ErrorCodeUtils.toPlatformCode(this.code, this.platform);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
/**
|
|
132
|
-
* Utility functions for error code mapping and validation
|
|
133
|
-
*/
|
|
134
|
-
exports.PurchaseError = PurchaseError;
|
|
135
|
-
const ErrorCodeUtils = exports.ErrorCodeUtils = {
|
|
136
|
-
/**
|
|
137
|
-
* Maps a platform-specific error code back to the standardized ErrorCode enum
|
|
138
|
-
* @param platformCode Platform-specific error code (string for Android, number for iOS)
|
|
139
|
-
* @param platform Target platform
|
|
140
|
-
* @returns Corresponding ErrorCode enum value or E_UNKNOWN if not found
|
|
141
|
-
*/
|
|
142
|
-
fromPlatformCode: (platformCode, platform) => {
|
|
143
|
-
const mapping = ErrorCodeMapping[platform];
|
|
144
|
-
for (const [errorCode, mappedCode] of Object.entries(mapping)) {
|
|
145
|
-
if (mappedCode === platformCode) {
|
|
146
|
-
return errorCode;
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
return ErrorCode.E_UNKNOWN;
|
|
150
|
-
},
|
|
151
|
-
/**
|
|
152
|
-
* Maps an ErrorCode enum to platform-specific code
|
|
153
|
-
* @param errorCode ErrorCode enum value
|
|
154
|
-
* @param platform Target platform
|
|
155
|
-
* @returns Platform-specific error code
|
|
156
|
-
*/
|
|
157
|
-
toPlatformCode: (errorCode, platform) => {
|
|
158
|
-
return ErrorCodeMapping[platform][errorCode] ?? (platform === 'ios' ? 0 : 'E_UNKNOWN');
|
|
159
|
-
},
|
|
160
|
-
/**
|
|
161
|
-
* Checks if an error code is valid for the specified platform
|
|
162
|
-
* @param errorCode ErrorCode enum value
|
|
163
|
-
* @param platform Target platform
|
|
164
|
-
* @returns True if the error code is supported on the platform
|
|
165
|
-
*/
|
|
166
|
-
isValidForPlatform: (errorCode, platform) => {
|
|
167
|
-
return errorCode in ErrorCodeMapping[platform];
|
|
168
|
-
}
|
|
169
|
-
};
|
|
170
|
-
//# sourceMappingURL=purchaseError.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["ErrorCode","exports","ErrorCodeMapping","ios","E_UNKNOWN","E_SERVICE_ERROR","E_USER_CANCELLED","E_USER_ERROR","E_ITEM_UNAVAILABLE","E_REMOTE_ERROR","E_NETWORK_ERROR","E_RECEIPT_FAILED","E_RECEIPT_FINISHED_FAILED","E_DEVELOPER_ERROR","E_PURCHASE_ERROR","E_SYNC_ERROR","E_DEFERRED_PAYMENT","E_TRANSACTION_VALIDATION_FAILED","E_NOT_PREPARED","E_NOT_ENDED","E_ALREADY_OWNED","E_BILLING_RESPONSE_JSON_PARSE_ERROR","E_INTERRUPTED","E_IAP_NOT_AVAILABLE","E_ACTIVITY_UNAVAILABLE","E_ALREADY_PREPARED","E_PENDING","E_CONNECTION_CLOSED","android","PurchaseError","constructor","name","message","responseCode","debugMessage","code","productId","platform","fromPlatformError","errorData","errorCode","ErrorCodeUtils","fromPlatformCode","getPlatformCode","undefined","toPlatformCode","platformCode","mapping","mappedCode","Object","entries","isValidForPlatform"],"sourceRoot":"../../src","sources":["purchaseError.ts"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["types/amazon.ts"],"mappings":""}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.singleProductAndroidMap = exports.FeatureType = exports.AndroidPurchaseType = exports.AndroidPurchaseState = exports.AndroidConsumptionState = exports.AndroidAcknowledgementState = void 0;
|
|
7
|
-
let AndroidPurchaseState = exports.AndroidPurchaseState = /*#__PURE__*/function (AndroidPurchaseState) {
|
|
8
|
-
AndroidPurchaseState[AndroidPurchaseState["purchased"] = 0] = "purchased";
|
|
9
|
-
AndroidPurchaseState[AndroidPurchaseState["canceled"] = 1] = "canceled";
|
|
10
|
-
AndroidPurchaseState[AndroidPurchaseState["pending"] = 2] = "pending";
|
|
11
|
-
return AndroidPurchaseState;
|
|
12
|
-
}({});
|
|
13
|
-
let AndroidPurchaseType = exports.AndroidPurchaseType = /*#__PURE__*/function (AndroidPurchaseType) {
|
|
14
|
-
AndroidPurchaseType[AndroidPurchaseType["test"] = 0] = "test";
|
|
15
|
-
AndroidPurchaseType[AndroidPurchaseType["promo"] = 1] = "promo";
|
|
16
|
-
AndroidPurchaseType[AndroidPurchaseType["rewarded"] = 2] = "rewarded";
|
|
17
|
-
return AndroidPurchaseType;
|
|
18
|
-
}({});
|
|
19
|
-
let AndroidConsumptionState = exports.AndroidConsumptionState = /*#__PURE__*/function (AndroidConsumptionState) {
|
|
20
|
-
AndroidConsumptionState[AndroidConsumptionState["yet"] = 0] = "yet";
|
|
21
|
-
AndroidConsumptionState[AndroidConsumptionState["consumed"] = 1] = "consumed";
|
|
22
|
-
return AndroidConsumptionState;
|
|
23
|
-
}({});
|
|
24
|
-
let AndroidAcknowledgementState = exports.AndroidAcknowledgementState = /*#__PURE__*/function (AndroidAcknowledgementState) {
|
|
25
|
-
AndroidAcknowledgementState[AndroidAcknowledgementState["yet"] = 0] = "yet";
|
|
26
|
-
AndroidAcknowledgementState[AndroidAcknowledgementState["acknowledged"] = 1] = "acknowledged";
|
|
27
|
-
return AndroidAcknowledgementState;
|
|
28
|
-
}({});
|
|
29
|
-
/**
|
|
30
|
-
* Get a list of products (consumable and non-consumable items, but not subscriptions)
|
|
31
|
-
* @param {number} startTimeMillis The time the product was purchased, in milliseconds since the epoch (Jan 1, 1970).
|
|
32
|
-
* @param {number} expiryTimeMillis The time the product expires, in milliseconds since the epoch (Jan 1, 1970).
|
|
33
|
-
* @param {boolean} autoRenewing Check if it is a renewable product.
|
|
34
|
-
* @param {string} priceCurrencyCode The price currency.
|
|
35
|
-
* @param {number} priceAmountMicros Price amount int micros.
|
|
36
|
-
* @param {string} countryCode Country code.
|
|
37
|
-
* @param {string} developerPayload Developer payload.
|
|
38
|
-
* @param {string} orderId Order id.
|
|
39
|
-
* @param {AndroidPurchaseType} purchaseType Purchase type.
|
|
40
|
-
* @param {AndroidAcknowledgementState} acknowledgementState Check if product is acknowledged.
|
|
41
|
-
* @param {string} kind
|
|
42
|
-
*/
|
|
43
|
-
/** Based on
|
|
44
|
-
* https://developer.android.com/reference/com/android/billingclient/api/BillingClient.FeatureType
|
|
45
|
-
*/
|
|
46
|
-
let FeatureType = exports.FeatureType = /*#__PURE__*/function (FeatureType) {
|
|
47
|
-
FeatureType["IN_APP_MESSAGING"] = "IN_APP_MESSAGING";
|
|
48
|
-
FeatureType["PRICE_CHANGE_CONFIRMATION"] = "PRICE_CHANGE_CONFIRMATION";
|
|
49
|
-
FeatureType["PRODUCT_DETAILS"] = "PRODUCT_DETAILS";
|
|
50
|
-
FeatureType["SUBSCRIPTIONS"] = "SUBSCRIPTIONS";
|
|
51
|
-
FeatureType["SUBSCRIPTIONS_UPDATE"] = "SUBSCRIPTIONS_UPDATE";
|
|
52
|
-
return FeatureType;
|
|
53
|
-
}({});
|
|
54
|
-
/** Added to maintain backwards compatibility */
|
|
55
|
-
const singleProductAndroidMap = originalProd => {
|
|
56
|
-
var _originalProd$oneTime, _originalProd$oneTime2, _originalProd$oneTime3;
|
|
57
|
-
const prod = {
|
|
58
|
-
...originalProd,
|
|
59
|
-
//legacy properties
|
|
60
|
-
price: ((_originalProd$oneTime = originalProd.oneTimePurchaseOfferDetails) === null || _originalProd$oneTime === void 0 ? void 0 : _originalProd$oneTime.formattedPrice) ?? originalProd.price,
|
|
61
|
-
localizedPrice: ((_originalProd$oneTime2 = originalProd.oneTimePurchaseOfferDetails) === null || _originalProd$oneTime2 === void 0 ? void 0 : _originalProd$oneTime2.formattedPrice) ?? originalProd.price,
|
|
62
|
-
currency: ((_originalProd$oneTime3 = originalProd.oneTimePurchaseOfferDetails) === null || _originalProd$oneTime3 === void 0 ? void 0 : _originalProd$oneTime3.priceCurrencyCode) ?? originalProd.currency
|
|
63
|
-
};
|
|
64
|
-
return prod;
|
|
65
|
-
};
|
|
66
|
-
exports.singleProductAndroidMap = singleProductAndroidMap;
|
|
67
|
-
//# sourceMappingURL=android.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["AndroidPurchaseState","exports","AndroidPurchaseType","AndroidConsumptionState","AndroidAcknowledgementState","FeatureType","singleProductAndroidMap","originalProd","_originalProd$oneTime","_originalProd$oneTime2","_originalProd$oneTime3","prod","price","oneTimePurchaseOfferDetails","formattedPrice","localizedPrice","currency","priceCurrencyCode"],"sourceRoot":"../../../src","sources":["types/android.ts"],"mappings":";;;;;;IAEYA,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,0BAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;AAAA,IAMpBE,mBAAmB,GAAAD,OAAA,CAAAC,mBAAA,0BAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA;AAAA,IAMnBC,uBAAuB,GAAAF,OAAA,CAAAE,uBAAA,0BAAvBA,uBAAuB;EAAvBA,uBAAuB,CAAvBA,uBAAuB;EAAvBA,uBAAuB,CAAvBA,uBAAuB;EAAA,OAAvBA,uBAAuB;AAAA;AAAA,IAKvBC,2BAA2B,GAAAH,OAAA,CAAAG,2BAAA,0BAA3BA,2BAA2B;EAA3BA,2BAA2B,CAA3BA,2BAA2B;EAA3BA,2BAA2B,CAA3BA,2BAA2B;EAAA,OAA3BA,2BAA2B;AAAA;AAKvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAiBA;AACA;AACA;AAFA,IAGYC,WAAW,GAAAJ,OAAA,CAAAI,WAAA,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;AAavB;AACO,MAAMC,uBAAuB,GAClCC,YAA4B,IACT;EAAA,IAAAC,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA;EACnB,MAAMC,IAAoB,GAAG;IAC3B,GAAGJ,YAAY;IACf;IACAK,KAAK,EACH,EAAAJ,qBAAA,GAAAD,YAAY,CAACM,2BAA2B,cAAAL,qBAAA,uBAAxCA,qBAAA,CAA0CM,cAAc,KACxDP,YAAY,CAACK,KAAK;IACpBG,cAAc,EACZ,EAAAN,sBAAA,GAAAF,YAAY,CAACM,2BAA2B,cAAAJ,sBAAA,uBAAxCA,sBAAA,CAA0CK,cAAc,KACxDP,YAAY,CAACK,KAAK;IACpBI,QAAQ,EACN,EAAAN,sBAAA,GAAAH,YAAY,CAACM,2BAA2B,cAAAH,sBAAA,uBAAxCA,sBAAA,CAA0CO,iBAAiB,KAC3DV,YAAY,CAACS;EACjB,CAAC;EACD,OAAOL,IAAI;AACb,CAAC;AAACV,OAAA,CAAAK,uBAAA,GAAAA,uBAAA"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.offerToRecord = void 0;
|
|
7
|
-
/**
|
|
8
|
-
* Payment discount interface @see https://developer.apple.com/documentation/storekit/skpaymentdiscount?language=objc
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
const offerToRecord = offer => {
|
|
12
|
-
if (!offer) {
|
|
13
|
-
return undefined;
|
|
14
|
-
}
|
|
15
|
-
return {
|
|
16
|
-
identifier: offer.identifier,
|
|
17
|
-
keyIdentifier: offer.keyIdentifier,
|
|
18
|
-
nonce: offer.nonce,
|
|
19
|
-
signature: offer.signature,
|
|
20
|
-
timestamp: offer.timestamp.toString()
|
|
21
|
-
};
|
|
22
|
-
};
|
|
23
|
-
exports.offerToRecord = offerToRecord;
|
|
24
|
-
//# sourceMappingURL=apple.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["offerToRecord","offer","undefined","identifier","keyIdentifier","nonce","signature","timestamp","toString","exports"],"sourceRoot":"../../../src","sources":["types/apple.ts"],"mappings":";;;;;;AAAA;AACA;AACA;;AA4BO,MAAMA,aAAa,GACxBC,KAAkC,IACoB;EACtD,IAAI,CAACA,KAAK,EAAE;IACV,OAAOC,SAAS;EAClB;EACA,OAAO;IACLC,UAAU,EAAEF,KAAK,CAACE,UAAU;IAC5BC,aAAa,EAAEH,KAAK,CAACG,aAAa;IAClCC,KAAK,EAAEJ,KAAK,CAACI,KAAK;IAClBC,SAAS,EAAEL,KAAK,CAACK,SAAS;IAC1BC,SAAS,EAAEN,KAAK,CAACM,SAAS,CAACC,QAAQ,CAAC;EACtC,CAAC;AACH,CAAC;AAACC,OAAA,CAAAT,aAAA,GAAAA,aAAA"}
|