react-native-iap 14.7.1 → 14.7.3
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/android/src/main/java/com/margelo/nitro/iap/HybridRnIap.kt +151 -7
- package/ios/HybridRnIap.swift +13 -0
- package/ios/RnIapHelper.swift +24 -0
- package/lib/module/types.js +94 -1
- package/lib/module/types.js.map +1 -1
- package/lib/module/utils/type-bridge.js +52 -1
- package/lib/module/utils/type-bridge.js.map +1 -1
- package/lib/typescript/src/specs/RnIap.nitro.d.ts +47 -1
- package/lib/typescript/src/specs/RnIap.nitro.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +350 -4
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/utils/type-bridge.d.ts.map +1 -1
- package/nitrogen/generated/android/c++/JHybridRnIapSpec.cpp +16 -0
- package/nitrogen/generated/android/c++/JNitroAvailablePurchasesAndroidOptions.hpp +7 -3
- package/nitrogen/generated/android/c++/JNitroAvailablePurchasesIosOptions.hpp +5 -1
- package/nitrogen/generated/android/c++/JNitroProduct.hpp +15 -3
- package/nitrogen/generated/android/c++/JNitroPurchaseRequest.hpp +8 -0
- package/nitrogen/generated/android/c++/JNitroRequestPurchaseAndroid.hpp +11 -3
- package/nitrogen/generated/android/c++/JNitroRequestPurchaseIos.hpp +19 -3
- package/nitrogen/generated/android/c++/JPromotionalOfferJwsInputIOS.hpp +61 -0
- package/nitrogen/generated/android/c++/JSubscriptionProductReplacementParamsAndroid.hpp +63 -0
- package/nitrogen/generated/android/c++/JSubscriptionReplacementModeAndroid.hpp +74 -0
- package/nitrogen/generated/android/c++/JWinBackOfferInputIOS.hpp +57 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesAndroidOptions.kt +6 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroAvailablePurchasesIosOptions.kt +5 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroProduct.kt +12 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRequestPurchaseAndroid.kt +6 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroRequestPurchaseIos.kt +12 -3
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PromotionalOfferJwsInputIOS.kt +39 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/SubscriptionProductReplacementParamsAndroid.kt +39 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/SubscriptionReplacementModeAndroid.kt +26 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/WinBackOfferInputIOS.kt +36 -0
- package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.hpp +57 -0
- package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Umbrella.hpp +12 -0
- package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.hpp +12 -0
- package/nitrogen/generated/ios/swift/NitroAvailablePurchasesAndroidOptions.swift +31 -1
- package/nitrogen/generated/ios/swift/NitroAvailablePurchasesIosOptions.swift +31 -1
- package/nitrogen/generated/ios/swift/NitroProduct.swift +91 -1
- package/nitrogen/generated/ios/swift/NitroRequestPurchaseAndroid.swift +24 -1
- package/nitrogen/generated/ios/swift/NitroRequestPurchaseIos.swift +77 -1
- package/nitrogen/generated/ios/swift/PromotionalOfferJwsInputIOS.swift +46 -0
- package/nitrogen/generated/ios/swift/SubscriptionProductReplacementParamsAndroid.swift +46 -0
- package/nitrogen/generated/ios/swift/SubscriptionReplacementModeAndroid.swift +60 -0
- package/nitrogen/generated/ios/swift/WinBackOfferInputIOS.swift +35 -0
- package/nitrogen/generated/shared/c++/NitroAvailablePurchasesAndroidOptions.hpp +6 -2
- package/nitrogen/generated/shared/c++/NitroAvailablePurchasesIosOptions.hpp +5 -1
- package/nitrogen/generated/shared/c++/NitroProduct.hpp +14 -2
- package/nitrogen/generated/shared/c++/NitroRequestPurchaseAndroid.hpp +9 -2
- package/nitrogen/generated/shared/c++/NitroRequestPurchaseIos.hpp +20 -3
- package/nitrogen/generated/shared/c++/PromotionalOfferJwsInputIOS.hpp +79 -0
- package/nitrogen/generated/shared/c++/SubscriptionProductReplacementParamsAndroid.hpp +81 -0
- package/nitrogen/generated/shared/c++/SubscriptionReplacementModeAndroid.hpp +96 -0
- package/nitrogen/generated/shared/c++/WinBackOfferInputIOS.hpp +75 -0
- package/openiap-versions.json +4 -4
- package/package.json +1 -1
- package/src/specs/RnIap.nitro.ts +50 -0
- package/src/types.ts +360 -4
- package/src/utils/type-bridge.ts +55 -0
|
@@ -27,6 +27,8 @@ import dev.hyo.openiap.RequestPurchaseResultPurchase
|
|
|
27
27
|
import dev.hyo.openiap.RequestPurchaseResultPurchases
|
|
28
28
|
import dev.hyo.openiap.RequestSubscriptionAndroidProps
|
|
29
29
|
import dev.hyo.openiap.RequestSubscriptionPropsByPlatforms
|
|
30
|
+
import dev.hyo.openiap.SubscriptionProductReplacementParamsAndroid as OpenIapSubscriptionProductReplacementParams
|
|
31
|
+
import dev.hyo.openiap.SubscriptionReplacementModeAndroid as OpenIapSubscriptionReplacementMode
|
|
30
32
|
import dev.hyo.openiap.VerifyPurchaseGoogleOptions
|
|
31
33
|
import dev.hyo.openiap.VerifyPurchaseProps
|
|
32
34
|
import dev.hyo.openiap.VerifyPurchaseResultAndroid
|
|
@@ -414,6 +416,15 @@ class HybridRnIap : HybridRnIapSpec() {
|
|
|
414
416
|
val requestProps = when (queryType) {
|
|
415
417
|
ProductQueryType.Subs -> {
|
|
416
418
|
val replacementMode = (androidRequest.replacementModeAndroid as? Number)?.toInt()
|
|
419
|
+
|
|
420
|
+
// Parse subscriptionProductReplacementParams (8.1.0+)
|
|
421
|
+
val subscriptionProductReplacementParams = androidRequest.subscriptionProductReplacementParams?.let { params ->
|
|
422
|
+
OpenIapSubscriptionProductReplacementParams(
|
|
423
|
+
oldProductId = params.oldProductId,
|
|
424
|
+
replacementMode = parseSubscriptionReplacementMode(params.replacementMode)
|
|
425
|
+
)
|
|
426
|
+
}
|
|
427
|
+
|
|
417
428
|
val androidProps = RequestSubscriptionAndroidProps(
|
|
418
429
|
isOfferPersonalized = androidRequest.isOfferPersonalized,
|
|
419
430
|
obfuscatedAccountIdAndroid = androidRequest.obfuscatedAccountIdAndroid,
|
|
@@ -421,7 +432,8 @@ class HybridRnIap : HybridRnIapSpec() {
|
|
|
421
432
|
purchaseTokenAndroid = androidRequest.purchaseTokenAndroid,
|
|
422
433
|
replacementModeAndroid = replacementMode,
|
|
423
434
|
skus = androidRequest.skus.toList(),
|
|
424
|
-
subscriptionOffers = normalizedOffers
|
|
435
|
+
subscriptionOffers = normalizedOffers,
|
|
436
|
+
subscriptionProductReplacementParams = subscriptionProductReplacementParams
|
|
425
437
|
)
|
|
426
438
|
RequestPurchaseProps(
|
|
427
439
|
request = RequestPurchaseProps.Request.Subscription(
|
|
@@ -489,9 +501,11 @@ class HybridRnIap : HybridRnIapSpec() {
|
|
|
489
501
|
val androidOptions = options?.android
|
|
490
502
|
initConnection(null).await()
|
|
491
503
|
|
|
504
|
+
val includeSuspended = androidOptions?.includeSuspended ?: false
|
|
505
|
+
|
|
492
506
|
RnIapLog.payload(
|
|
493
507
|
"getAvailablePurchases",
|
|
494
|
-
mapOf("type" to androidOptions?.type?.name)
|
|
508
|
+
mapOf("type" to androidOptions?.type?.name, "includeSuspended" to includeSuspended)
|
|
495
509
|
)
|
|
496
510
|
|
|
497
511
|
val typeName = androidOptions?.type?.name?.lowercase()
|
|
@@ -504,16 +518,23 @@ class HybridRnIap : HybridRnIapSpec() {
|
|
|
504
518
|
else -> null
|
|
505
519
|
}
|
|
506
520
|
|
|
521
|
+
// Create PurchaseOptions with includeSuspendedAndroid
|
|
522
|
+
val purchaseOptions = dev.hyo.openiap.PurchaseOptions(
|
|
523
|
+
includeSuspendedAndroid = includeSuspended
|
|
524
|
+
)
|
|
525
|
+
|
|
507
526
|
val result: List<OpenIapPurchase> = if (normalizedType != null) {
|
|
508
527
|
val typeEnum = parseProductQueryType(normalizedType)
|
|
509
528
|
RnIapLog.payload(
|
|
510
529
|
"getAvailablePurchases.native",
|
|
511
|
-
mapOf("type" to typeEnum.rawValue)
|
|
530
|
+
mapOf("type" to typeEnum.rawValue, "includeSuspended" to includeSuspended)
|
|
512
531
|
)
|
|
532
|
+
// Note: getAvailableItems doesn't accept PurchaseOptions
|
|
533
|
+
// includeSuspended only applies when fetching all types
|
|
513
534
|
openIap.getAvailableItems(typeEnum)
|
|
514
535
|
} else {
|
|
515
|
-
RnIapLog.payload("getAvailablePurchases.native", mapOf("type" to "all"))
|
|
516
|
-
openIap.getAvailablePurchases(
|
|
536
|
+
RnIapLog.payload("getAvailablePurchases.native", mapOf("type" to "all", "includeSuspended" to includeSuspended))
|
|
537
|
+
openIap.getAvailablePurchases(purchaseOptions)
|
|
517
538
|
}
|
|
518
539
|
RnIapLog.result(
|
|
519
540
|
"getAvailablePurchases",
|
|
@@ -795,6 +816,21 @@ class HybridRnIap : HybridRnIapSpec() {
|
|
|
795
816
|
}
|
|
796
817
|
}
|
|
797
818
|
|
|
819
|
+
/**
|
|
820
|
+
* Parse subscription replacement mode from Nitro enum to OpenIAP enum (8.1.0+)
|
|
821
|
+
*/
|
|
822
|
+
private fun parseSubscriptionReplacementMode(mode: SubscriptionReplacementModeAndroid): OpenIapSubscriptionReplacementMode {
|
|
823
|
+
return when (mode) {
|
|
824
|
+
SubscriptionReplacementModeAndroid.WITH_TIME_PRORATION -> OpenIapSubscriptionReplacementMode.WithTimeProration
|
|
825
|
+
SubscriptionReplacementModeAndroid.CHARGE_PRORATED_PRICE -> OpenIapSubscriptionReplacementMode.ChargeProratedPrice
|
|
826
|
+
SubscriptionReplacementModeAndroid.CHARGE_FULL_PRICE -> OpenIapSubscriptionReplacementMode.ChargeFullPrice
|
|
827
|
+
SubscriptionReplacementModeAndroid.WITHOUT_PRORATION -> OpenIapSubscriptionReplacementMode.WithoutProration
|
|
828
|
+
SubscriptionReplacementModeAndroid.DEFERRED -> OpenIapSubscriptionReplacementMode.Deferred
|
|
829
|
+
SubscriptionReplacementModeAndroid.KEEP_EXISTING -> OpenIapSubscriptionReplacementMode.KeepExisting
|
|
830
|
+
SubscriptionReplacementModeAndroid.UNKNOWN_REPLACEMENT_MODE -> OpenIapSubscriptionReplacementMode.UnknownReplacementMode
|
|
831
|
+
}
|
|
832
|
+
}
|
|
833
|
+
|
|
798
834
|
private fun FetchProductsResult.productsOrEmpty(): List<ProductCommon> = when (this) {
|
|
799
835
|
is FetchProductsResultProducts -> this.value.orEmpty().filterIsInstance<ProductCommon>()
|
|
800
836
|
is FetchProductsResultSubscriptions -> this.value.orEmpty().filterIsInstance<ProductCommon>()
|
|
@@ -837,6 +873,84 @@ class HybridRnIap : HybridRnIapSpec() {
|
|
|
837
873
|
return array.toString()
|
|
838
874
|
}
|
|
839
875
|
|
|
876
|
+
/**
|
|
877
|
+
* Serialize standardized SubscriptionOffer list to JSON string (OpenIAP 1.3.10+)
|
|
878
|
+
*/
|
|
879
|
+
private fun serializeStandardizedSubscriptionOffers(offers: List<dev.hyo.openiap.SubscriptionOffer>): String {
|
|
880
|
+
val array = JSONArray()
|
|
881
|
+
offers.forEach { offer ->
|
|
882
|
+
val offerJson = JSONObject()
|
|
883
|
+
offerJson.put("id", offer.id)
|
|
884
|
+
offerJson.put("displayPrice", offer.displayPrice)
|
|
885
|
+
offerJson.put("price", offer.price)
|
|
886
|
+
offerJson.put("type", offer.type.rawValue)
|
|
887
|
+
offer.currency?.let { offerJson.put("currency", it) }
|
|
888
|
+
offer.basePlanIdAndroid?.let { offerJson.put("basePlanIdAndroid", it) }
|
|
889
|
+
offer.offerTokenAndroid?.let { offerJson.put("offerTokenAndroid", it) }
|
|
890
|
+
offer.offerTagsAndroid?.let { offerJson.put("offerTagsAndroid", JSONArray(it)) }
|
|
891
|
+
offer.paymentMode?.let { offerJson.put("paymentMode", it.rawValue) }
|
|
892
|
+
offer.periodCount?.let { offerJson.put("periodCount", it) }
|
|
893
|
+
offer.numberOfPeriodsIOS?.let { offerJson.put("numberOfPeriodsIOS", it) }
|
|
894
|
+
offer.period?.let { period ->
|
|
895
|
+
val periodJson = JSONObject()
|
|
896
|
+
periodJson.put("unit", period.unit.rawValue)
|
|
897
|
+
periodJson.put("value", period.value)
|
|
898
|
+
offerJson.put("period", periodJson)
|
|
899
|
+
}
|
|
900
|
+
offer.pricingPhasesAndroid?.let { phases ->
|
|
901
|
+
val phasesJson = JSONObject()
|
|
902
|
+
val phaseList = JSONArray()
|
|
903
|
+
phases.pricingPhaseList.forEach { phase ->
|
|
904
|
+
val phaseJson = JSONObject()
|
|
905
|
+
phaseJson.put("billingCycleCount", phase.billingCycleCount)
|
|
906
|
+
phaseJson.put("billingPeriod", phase.billingPeriod)
|
|
907
|
+
phaseJson.put("formattedPrice", phase.formattedPrice)
|
|
908
|
+
phaseJson.put("priceAmountMicros", phase.priceAmountMicros)
|
|
909
|
+
phaseJson.put("priceCurrencyCode", phase.priceCurrencyCode)
|
|
910
|
+
phaseJson.put("recurrenceMode", phase.recurrenceMode)
|
|
911
|
+
phaseList.put(phaseJson)
|
|
912
|
+
}
|
|
913
|
+
phasesJson.put("pricingPhaseList", phaseList)
|
|
914
|
+
offerJson.put("pricingPhasesAndroid", phasesJson)
|
|
915
|
+
}
|
|
916
|
+
array.put(offerJson)
|
|
917
|
+
}
|
|
918
|
+
return array.toString()
|
|
919
|
+
}
|
|
920
|
+
|
|
921
|
+
/**
|
|
922
|
+
* Serialize standardized DiscountOffer list to JSON string (OpenIAP 1.3.10+)
|
|
923
|
+
*/
|
|
924
|
+
private fun serializeStandardizedDiscountOffers(offers: List<dev.hyo.openiap.DiscountOffer>): String {
|
|
925
|
+
val array = JSONArray()
|
|
926
|
+
offers.forEach { offer ->
|
|
927
|
+
val offerJson = JSONObject()
|
|
928
|
+
offerJson.put("currency", offer.currency)
|
|
929
|
+
offerJson.put("displayPrice", offer.displayPrice)
|
|
930
|
+
offerJson.put("price", offer.price)
|
|
931
|
+
offer.id?.let { offerJson.put("id", it) }
|
|
932
|
+
offer.offerTagsAndroid?.let { offerJson.put("offerTagsAndroid", JSONArray(it)) }
|
|
933
|
+
offer.offerTokenAndroid?.let { offerJson.put("offerTokenAndroid", it) }
|
|
934
|
+
offer.discountAmountMicrosAndroid?.let { offerJson.put("discountAmountMicrosAndroid", it) }
|
|
935
|
+
offer.formattedDiscountAmountAndroid?.let { offerJson.put("formattedDiscountAmountAndroid", it) }
|
|
936
|
+
offer.fullPriceMicrosAndroid?.let { offerJson.put("fullPriceMicrosAndroid", it) }
|
|
937
|
+
offer.limitedQuantityInfoAndroid?.let { info ->
|
|
938
|
+
val infoJson = JSONObject()
|
|
939
|
+
infoJson.put("maximumQuantity", info.maximumQuantity)
|
|
940
|
+
infoJson.put("remainingQuantity", info.remainingQuantity)
|
|
941
|
+
offerJson.put("limitedQuantityInfoAndroid", infoJson)
|
|
942
|
+
}
|
|
943
|
+
offer.validTimeWindowAndroid?.let { window ->
|
|
944
|
+
val windowJson = JSONObject()
|
|
945
|
+
windowJson.put("startTimeMillis", window.startTimeMillis)
|
|
946
|
+
windowJson.put("endTimeMillis", window.endTimeMillis)
|
|
947
|
+
offerJson.put("validTimeWindowAndroid", windowJson)
|
|
948
|
+
}
|
|
949
|
+
array.put(offerJson)
|
|
950
|
+
}
|
|
951
|
+
return array.toString()
|
|
952
|
+
}
|
|
953
|
+
|
|
840
954
|
private fun convertToNitroProduct(product: ProductCommon): NitroProduct {
|
|
841
955
|
val subscriptionOffers = when (product) {
|
|
842
956
|
is ProductSubscriptionAndroid -> product.subscriptionOfferDetailsAndroid.orEmpty()
|
|
@@ -940,6 +1054,33 @@ class HybridRnIap : HybridRnIapSpec() {
|
|
|
940
1054
|
else -> null
|
|
941
1055
|
}
|
|
942
1056
|
|
|
1057
|
+
// Extract productStatusAndroid (OpenIAP 1.3.14+, Billing Library 8.0+)
|
|
1058
|
+
val productStatusAndroid = when (product) {
|
|
1059
|
+
is ProductAndroid -> product.productStatusAndroid?.rawValue
|
|
1060
|
+
is ProductSubscriptionAndroid -> product.productStatusAndroid?.rawValue
|
|
1061
|
+
else -> null
|
|
1062
|
+
}
|
|
1063
|
+
|
|
1064
|
+
// Serialize standardized cross-platform subscriptionOffers (OpenIAP 1.3.10+)
|
|
1065
|
+
val standardizedSubsOffers = when (product) {
|
|
1066
|
+
is ProductSubscriptionAndroid -> product.subscriptionOffers
|
|
1067
|
+
is ProductAndroid -> product.subscriptionOffers
|
|
1068
|
+
else -> null
|
|
1069
|
+
}
|
|
1070
|
+
val subscriptionOffersStandardizedJson = standardizedSubsOffers?.takeIf { it.isNotEmpty() }?.let {
|
|
1071
|
+
serializeStandardizedSubscriptionOffers(it)
|
|
1072
|
+
}
|
|
1073
|
+
|
|
1074
|
+
// Serialize standardized cross-platform discountOffers (OpenIAP 1.3.10+)
|
|
1075
|
+
val standardizedDiscountOffers = when (product) {
|
|
1076
|
+
is ProductSubscriptionAndroid -> product.discountOffers
|
|
1077
|
+
is ProductAndroid -> product.discountOffers
|
|
1078
|
+
else -> null
|
|
1079
|
+
}
|
|
1080
|
+
val discountOffersJson = standardizedDiscountOffers?.takeIf { it.isNotEmpty() }?.let {
|
|
1081
|
+
serializeStandardizedDiscountOffers(it)
|
|
1082
|
+
}
|
|
1083
|
+
|
|
943
1084
|
return NitroProduct(
|
|
944
1085
|
id = product.id,
|
|
945
1086
|
title = product.title,
|
|
@@ -961,6 +1102,8 @@ class HybridRnIap : HybridRnIapSpec() {
|
|
|
961
1102
|
introductoryPricePaymentModeIOS = PaymentModeIOS.EMPTY,
|
|
962
1103
|
introductoryPriceNumberOfPeriodsIOS = null,
|
|
963
1104
|
introductoryPriceSubscriptionPeriodIOS = null,
|
|
1105
|
+
subscriptionOffers = subscriptionOffersStandardizedJson,
|
|
1106
|
+
discountOffers = discountOffersJson,
|
|
964
1107
|
nameAndroid = nameAndroid,
|
|
965
1108
|
originalPriceAndroid = originalPriceAndroid,
|
|
966
1109
|
originalPriceAmountMicrosAndroid = originalPriceAmountMicrosAndroid,
|
|
@@ -970,10 +1113,11 @@ class HybridRnIap : HybridRnIapSpec() {
|
|
|
970
1113
|
subscriptionPeriodAndroid = subscriptionPeriodAndroid,
|
|
971
1114
|
freeTrialPeriodAndroid = freeTrialPeriodAndroid,
|
|
972
1115
|
subscriptionOfferDetailsAndroid = subscriptionOffersJson,
|
|
973
|
-
oneTimePurchaseOfferDetailsAndroid = oneTimeOffersNitro
|
|
1116
|
+
oneTimePurchaseOfferDetailsAndroid = oneTimeOffersNitro,
|
|
1117
|
+
productStatusAndroid = productStatusAndroid
|
|
974
1118
|
)
|
|
975
1119
|
}
|
|
976
|
-
|
|
1120
|
+
|
|
977
1121
|
// Purchase state is provided as enum value by OpenIAP
|
|
978
1122
|
|
|
979
1123
|
private fun convertToNitroPurchase(purchase: OpenIapPurchase): NitroPurchase {
|
package/ios/HybridRnIap.swift
CHANGED
|
@@ -186,6 +186,19 @@ class HybridRnIap: HybridRnIapSpec {
|
|
|
186
186
|
if let advancedCommerceData = iosRequest.advancedCommerceData {
|
|
187
187
|
iosPayload["advancedCommerceData"] = advancedCommerceData
|
|
188
188
|
}
|
|
189
|
+
// WWDC 2025 / iOS 18+ subscription offer fields
|
|
190
|
+
if let introductoryOfferEligibility = iosRequest.introductoryOfferEligibility {
|
|
191
|
+
iosPayload["introductoryOfferEligibility"] = introductoryOfferEligibility
|
|
192
|
+
}
|
|
193
|
+
if let promotionalOfferJWS = iosRequest.promotionalOfferJWS {
|
|
194
|
+
iosPayload["promotionalOfferJWS"] = [
|
|
195
|
+
"jws": promotionalOfferJWS.jws,
|
|
196
|
+
"offerId": promotionalOfferJWS.offerId
|
|
197
|
+
]
|
|
198
|
+
}
|
|
199
|
+
if let winBackOffer = iosRequest.winBackOffer {
|
|
200
|
+
iosPayload["winBackOffer"] = ["offerId": winBackOffer.offerId]
|
|
201
|
+
}
|
|
189
202
|
|
|
190
203
|
let cachedType = await MainActor.run { self.productTypeBySku[iosRequest.sku] }
|
|
191
204
|
let resolvedType = RnIapHelper.parseProductQueryType(cachedType)
|
package/ios/RnIapHelper.swift
CHANGED
|
@@ -124,6 +124,30 @@ enum RnIapHelper {
|
|
|
124
124
|
if let introductoryPeriod = dictionary["introductoryPriceSubscriptionPeriodIOS"] as? String { product.introductoryPriceSubscriptionPeriodIOS = introductoryPeriod }
|
|
125
125
|
if let displayNameIOS = dictionary["displayNameIOS"] as? String { product.displayName = displayNameIOS }
|
|
126
126
|
|
|
127
|
+
// Handle subscriptionOffers - standardized cross-platform offers (OpenIAP 1.3.10+)
|
|
128
|
+
if let offersArray = dictionary["subscriptionOffers"] as? [[String: Any]], !offersArray.isEmpty {
|
|
129
|
+
do {
|
|
130
|
+
let jsonData = try JSONSerialization.data(withJSONObject: offersArray, options: [])
|
|
131
|
+
if let jsonString = String(data: jsonData, encoding: .utf8) {
|
|
132
|
+
product.subscriptionOffers = jsonString
|
|
133
|
+
}
|
|
134
|
+
} catch {
|
|
135
|
+
NSLog("⚠️ [RnIapHelper] Failed to serialize subscriptionOffers: \(error)")
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
// Handle discountOffers - standardized cross-platform offers for one-time purchases (OpenIAP 1.3.10+)
|
|
140
|
+
if let discountOffersArray = dictionary["discountOffers"] as? [[String: Any]], !discountOffersArray.isEmpty {
|
|
141
|
+
do {
|
|
142
|
+
let jsonData = try JSONSerialization.data(withJSONObject: discountOffersArray, options: [])
|
|
143
|
+
if let jsonString = String(data: jsonData, encoding: .utf8) {
|
|
144
|
+
product.discountOffers = jsonString
|
|
145
|
+
}
|
|
146
|
+
} catch {
|
|
147
|
+
NSLog("⚠️ [RnIapHelper] Failed to serialize discountOffers: \(error)")
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
|
|
127
151
|
return product
|
|
128
152
|
}
|
|
129
153
|
|
package/lib/module/types.js
CHANGED
|
@@ -28,6 +28,11 @@
|
|
|
28
28
|
* Available in Google Play Billing Library 8.2.0+
|
|
29
29
|
*/
|
|
30
30
|
|
|
31
|
+
/**
|
|
32
|
+
* Extended billing result with sub-response code (Android)
|
|
33
|
+
* Available in Google Play Billing Library 8.0.0+
|
|
34
|
+
*/
|
|
35
|
+
|
|
31
36
|
/**
|
|
32
37
|
* Launch mode for developer billing option (Android)
|
|
33
38
|
* Determines how the external payment URL is launched
|
|
@@ -56,6 +61,33 @@
|
|
|
56
61
|
* Available in Google Play Billing Library 7.0+
|
|
57
62
|
*/
|
|
58
63
|
|
|
64
|
+
/**
|
|
65
|
+
* Discount information returned from the store.
|
|
66
|
+
* @deprecated Use the standardized SubscriptionOffer type instead for cross-platform compatibility.
|
|
67
|
+
* @see https://openiap.dev/docs/types#subscription-offer
|
|
68
|
+
*/
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Standardized one-time product discount offer.
|
|
72
|
+
* Provides a unified interface for one-time purchase discounts across platforms.
|
|
73
|
+
*
|
|
74
|
+
* Currently supported on Android (Google Play Billing 7.0+).
|
|
75
|
+
* iOS does not support one-time purchase discounts in the same way.
|
|
76
|
+
*
|
|
77
|
+
* @see https://openiap.dev/docs/features/discount
|
|
78
|
+
*/
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* iOS DiscountOffer (output type).
|
|
82
|
+
* @deprecated Use the standardized SubscriptionOffer type instead for cross-platform compatibility.
|
|
83
|
+
* @see https://openiap.dev/docs/types#subscription-offer
|
|
84
|
+
*/
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Discount offer type enumeration.
|
|
88
|
+
* Categorizes the type of discount or promotional offer.
|
|
89
|
+
*/
|
|
90
|
+
|
|
59
91
|
export let ErrorCode = /*#__PURE__*/function (ErrorCode) {
|
|
60
92
|
ErrorCode["ActivityUnavailable"] = "activity-unavailable";
|
|
61
93
|
ErrorCode["AlreadyOwned"] = "already-owned";
|
|
@@ -142,14 +174,41 @@ export let ErrorCode = /*#__PURE__*/function (ErrorCode) {
|
|
|
142
174
|
* Available in Google Play Billing Library 7.0+
|
|
143
175
|
*/
|
|
144
176
|
|
|
177
|
+
/**
|
|
178
|
+
* Payment mode for subscription offers.
|
|
179
|
+
* Determines how the user pays during the offer period.
|
|
180
|
+
*/
|
|
181
|
+
|
|
145
182
|
/**
|
|
146
183
|
* Pre-order details for one-time purchase products (Android)
|
|
147
184
|
* Available in Google Play Billing Library 8.1.0+
|
|
148
185
|
*/
|
|
149
186
|
|
|
150
187
|
/**
|
|
151
|
-
* One-time purchase offer details (Android)
|
|
188
|
+
* One-time purchase offer details (Android).
|
|
152
189
|
* Available in Google Play Billing Library 7.0+
|
|
190
|
+
* @deprecated Use the standardized DiscountOffer type instead for cross-platform compatibility.
|
|
191
|
+
* @see https://openiap.dev/docs/types#discount-offer
|
|
192
|
+
*/
|
|
193
|
+
|
|
194
|
+
/**
|
|
195
|
+
* Status code for individual products returned from queryProductDetailsAsync (Android)
|
|
196
|
+
* Prior to 8.0, products that couldn't be fetched were simply not returned.
|
|
197
|
+
* With 8.0+, these products are returned with a status code explaining why.
|
|
198
|
+
* Available in Google Play Billing Library 8.0.0+
|
|
199
|
+
*/
|
|
200
|
+
|
|
201
|
+
/**
|
|
202
|
+
* Subscription offer details (Android).
|
|
203
|
+
* @deprecated Use the standardized SubscriptionOffer type instead for cross-platform compatibility.
|
|
204
|
+
* @see https://openiap.dev/docs/types#subscription-offer
|
|
205
|
+
*/
|
|
206
|
+
|
|
207
|
+
/**
|
|
208
|
+
* JWS promotional offer input for iOS 15+ (StoreKit 2, WWDC 2025).
|
|
209
|
+
* New signature format using compact JWS string for promotional offers.
|
|
210
|
+
* This provides a simpler alternative to the legacy signature-based promotional offers.
|
|
211
|
+
* Back-deployed to iOS 15.
|
|
153
212
|
*/
|
|
154
213
|
|
|
155
214
|
/**
|
|
@@ -187,6 +246,33 @@ export let ErrorCode = /*#__PURE__*/function (ErrorCode) {
|
|
|
187
246
|
* - google: Verifies via Play Store (purchase token)
|
|
188
247
|
*/
|
|
189
248
|
|
|
249
|
+
/**
|
|
250
|
+
* Sub-response codes for more granular purchase error information (Android)
|
|
251
|
+
* Available in Google Play Billing Library 8.0.0+
|
|
252
|
+
*/
|
|
253
|
+
|
|
254
|
+
/**
|
|
255
|
+
* Standardized subscription discount/promotional offer.
|
|
256
|
+
* Provides a unified interface for subscription offers across iOS and Android.
|
|
257
|
+
*
|
|
258
|
+
* Both platforms support subscription offers with different implementations:
|
|
259
|
+
* - iOS: Introductory offers, promotional offers with server-side signatures
|
|
260
|
+
* - Android: Offer tokens with pricing phases
|
|
261
|
+
*
|
|
262
|
+
* @see https://openiap.dev/docs/types/ios#discount-offer
|
|
263
|
+
* @see https://openiap.dev/docs/types/android#subscription-offer
|
|
264
|
+
*/
|
|
265
|
+
|
|
266
|
+
/**
|
|
267
|
+
* iOS subscription offer details.
|
|
268
|
+
* @deprecated Use the standardized SubscriptionOffer type instead for cross-platform compatibility.
|
|
269
|
+
* @see https://openiap.dev/docs/types#subscription-offer
|
|
270
|
+
*/
|
|
271
|
+
|
|
272
|
+
/** Subscription period value combining unit and count. */
|
|
273
|
+
|
|
274
|
+
/** Subscription period unit for cross-platform use. */
|
|
275
|
+
|
|
190
276
|
/**
|
|
191
277
|
* Product-level subscription replacement parameters (Android)
|
|
192
278
|
* Used with setSubscriptionProductReplacementParams in BillingFlowParams.ProductDetailsParams
|
|
@@ -242,6 +328,13 @@ export let ErrorCode = /*#__PURE__*/function (ErrorCode) {
|
|
|
242
328
|
* Returns verification status and grant time for the entitlement.
|
|
243
329
|
*/
|
|
244
330
|
|
|
331
|
+
/**
|
|
332
|
+
* Win-back offer input for iOS 18+ (StoreKit 2)
|
|
333
|
+
* Win-back offers are used to re-engage churned subscribers.
|
|
334
|
+
* The offer is automatically presented via StoreKit Message when eligible,
|
|
335
|
+
* or can be applied programmatically during purchase.
|
|
336
|
+
*/
|
|
337
|
+
|
|
245
338
|
// -- Query helper types (auto-generated)
|
|
246
339
|
|
|
247
340
|
// -- End query helper types
|
package/lib/module/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ErrorCode"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AAAA;AACA;AACA;AACA;;AAmCA;AACA;AACA;AACA;AACA;AACA;;AA0BA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;;AAQA;AACA;AACA;AACA;AACA;;
|
|
1
|
+
{"version":3,"names":["ErrorCode"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AAAA;AACA;AACA;AACA;;AAmCA;AACA;AACA;AACA;AACA;AACA;;AA0BA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;;AAQA;AACA;AACA;AACA;AACA;;AAWA;AACA;AACA;AACA;;AAoBA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;;AAUA;AACA;AACA;AACA;AACA;;AAUA;AACA;AACA;AACA;;AAQA;AACA;AACA;AACA;;AAcA;AACA;AACA;AACA;AACA;;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA4DA;AACA;AACA;AACA;AACA;;AA2BA;AACA;AACA;AACA;;AASA,WAAYA,SAAS,0BAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA;;AAwCrB;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;;AAMA;AACA;AACA;AACA;AACA;;AAMA;;AAQA;;AAGA;;AAgBA;;AAGA;;AAoBA;AACA;AACA;AACA;AACA;;AAYA;AACA;AACA;AACA;;AAkKA;AACA;AACA;AACA;;AAKA;AACA;AACA;AACA;;AA2EA;AACA;AACA;AACA;AACA;AACA;;AAqFA;AACA;AACA;AACA;AACA;AACA;;AAmDA;AACA;AACA;AACA;AACA;;AAqDA;AACA;AACA;AACA;AACA;AACA;;AAuNA;AACA;AACA;AACA;;AA4CA;AACA;AACA;AACA;;AAmEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAoFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAsBA;AACA;AACA;AACA;AACA;AACA;;AAkBA;AACA;AACA;AACA;;AAiCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAiEA;AACA;AACA;AACA;AACA;;AAaA;;AAUA;;AAQA;AACA;AACA;AACA;AACA;;AAQA;AACA;AACA;AACA;AACA;;AAQA;AACA;AACA;AACA;;AAQA;AACA;AACA;AACA;;AAQA;AACA;AACA;AACA;;AAMA;AACA;AACA;AACA;AACA;AACA;;AAoBA;AACA;AACA;AACA;AACA;AACA;AACA;;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;;AAiCA;AACA;AACA;AACA;;AAuCA;AACA;AACA;AACA;AACA;AACA;;AAKA;;AAgCA;;AAEA;;AAuCA;;AAEA;;AAmBA","ignoreList":[]}
|
|
@@ -210,18 +210,69 @@ export function convertNitroProductToProduct(nitroProduct) {
|
|
|
210
210
|
} else {
|
|
211
211
|
iosProduct.discountsIOS = null;
|
|
212
212
|
}
|
|
213
|
+
|
|
214
|
+
// Parse standardized subscriptionOffers (cross-platform, OpenIAP 1.3.10+)
|
|
215
|
+
if (nitroProduct.subscriptionOffers) {
|
|
216
|
+
try {
|
|
217
|
+
iosProduct.subscriptionOffers = JSON.parse(nitroProduct.subscriptionOffers);
|
|
218
|
+
} catch {
|
|
219
|
+
iosProduct.subscriptionOffers = null;
|
|
220
|
+
}
|
|
221
|
+
} else {
|
|
222
|
+
iosProduct.subscriptionOffers = null;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
// Parse standardized discountOffers (cross-platform, OpenIAP 1.3.10+)
|
|
226
|
+
if (nitroProduct.discountOffers) {
|
|
227
|
+
try {
|
|
228
|
+
iosProduct.discountOffers = JSON.parse(nitroProduct.discountOffers);
|
|
229
|
+
} catch {
|
|
230
|
+
iosProduct.discountOffers = null;
|
|
231
|
+
}
|
|
232
|
+
} else {
|
|
233
|
+
iosProduct.discountOffers = null;
|
|
234
|
+
}
|
|
213
235
|
return iosProduct;
|
|
214
236
|
}
|
|
215
237
|
const androidProduct = {
|
|
216
238
|
...base,
|
|
217
239
|
nameAndroid: nitroProduct.nameAndroid ?? nitroProduct.title,
|
|
218
240
|
oneTimePurchaseOfferDetailsAndroid: nitroProduct.oneTimePurchaseOfferDetailsAndroid ?? null,
|
|
219
|
-
subscriptionOfferDetailsAndroid: parseSubscriptionOffers(nitroProduct.subscriptionOfferDetailsAndroid)
|
|
241
|
+
subscriptionOfferDetailsAndroid: parseSubscriptionOffers(nitroProduct.subscriptionOfferDetailsAndroid),
|
|
242
|
+
// Product status (Billing Library 8.0+, OpenIAP 1.3.14+)
|
|
243
|
+
productStatusAndroid: nitroProduct.productStatusAndroid ?? null
|
|
220
244
|
};
|
|
245
|
+
|
|
246
|
+
// Parse standardized subscriptionOffers (cross-platform, OpenIAP 1.3.10+)
|
|
247
|
+
if (nitroProduct.subscriptionOffers) {
|
|
248
|
+
try {
|
|
249
|
+
androidProduct.subscriptionOffers = JSON.parse(nitroProduct.subscriptionOffers);
|
|
250
|
+
} catch {
|
|
251
|
+
androidProduct.subscriptionOffers = null;
|
|
252
|
+
}
|
|
253
|
+
} else {
|
|
254
|
+
androidProduct.subscriptionOffers = null;
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
// Parse standardized discountOffers (cross-platform, OpenIAP 1.3.10+)
|
|
258
|
+
if (nitroProduct.discountOffers) {
|
|
259
|
+
try {
|
|
260
|
+
androidProduct.discountOffers = JSON.parse(nitroProduct.discountOffers);
|
|
261
|
+
} catch {
|
|
262
|
+
androidProduct.discountOffers = null;
|
|
263
|
+
}
|
|
264
|
+
} else {
|
|
265
|
+
androidProduct.discountOffers = null;
|
|
266
|
+
}
|
|
221
267
|
if (type === PRODUCT_TYPE_SUBS) {
|
|
268
|
+
// Ensure subscriptionOfferDetailsAndroid is always an array for subscriptions
|
|
222
269
|
if (!Array.isArray(androidProduct.subscriptionOfferDetailsAndroid)) {
|
|
223
270
|
androidProduct.subscriptionOfferDetailsAndroid = [];
|
|
224
271
|
}
|
|
272
|
+
// Ensure subscriptionOffers is always an array for subscriptions (non-nullable in ProductSubscriptionAndroid)
|
|
273
|
+
if (!Array.isArray(androidProduct.subscriptionOffers)) {
|
|
274
|
+
androidProduct.subscriptionOffers = [];
|
|
275
|
+
}
|
|
225
276
|
}
|
|
226
277
|
return androidProduct;
|
|
227
278
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RnIapConsole","PLATFORM_IOS","PLATFORM_ANDROID","STORE_UNKNOWN","STORE_APPLE","STORE_GOOGLE","STORE_HORIZON","PRODUCT_TYPE_SUBS","PRODUCT_TYPE_IN_APP","PURCHASE_STATE_PENDING","PURCHASE_STATE_PURCHASED","PURCHASE_STATE_UNKNOWN","PAYMENT_MODE_EMPTY","PAYMENT_MODE_FREE_TRIAL","PAYMENT_MODE_PAY_AS_YOU_GO","PAYMENT_MODE_PAY_UP_FRONT","SUBSCRIPTION_PERIOD_DAY","SUBSCRIPTION_PERIOD_WEEK","SUBSCRIPTION_PERIOD_MONTH","SUBSCRIPTION_PERIOD_YEAR","SUBSCRIPTION_PERIOD_EMPTY","DEFAULT_JSON_REPR","normalizePlatform","value","toLowerCase","normalizeStore","normalizeProductType","normalizeProductTypeIOS","warn","normalizePaymentMode","toUpperCase","normalizeSubscriptionPeriod","normalizePurchaseState","state","toNullableString","String","toNullableNumber","num","Number","isFinite","toNullableBoolean","parseSubscriptionOffers","undefined","Array","isArray","parsed","JSON","parse","error","convertNitroProductToProduct","nitroProduct","platform","type","base","id","title","description","displayName","displayPrice","currency","price","debugDescription","iosProduct","displayNameIOS","isFamilyShareableIOS","Boolean","jsonRepresentationIOS","typeIOS","subscriptionInfoIOS","introductoryPriceAsAmountIOS","introductoryPriceIOS","introductoryPriceNumberOfPeriodsIOS","introductoryPricePaymentModeIOS","introductoryPriceSubscriptionPeriodIOS","subscriptionPeriodNumberIOS","subscriptionPeriodUnitIOS","discountsIOS","androidProduct","nameAndroid","oneTimePurchaseOfferDetailsAndroid","subscriptionOfferDetailsAndroid","convertProductToProductSubscription","product","output","convertNitroPurchaseToPurchase","nitroPurchase","purchaseState","purchaseStateAndroid","store","iosPurchase","productId","transactionDate","Date","now","purchaseToken","quantity","isAutoRenewing","transactionId","quantityIOS","originalTransactionDateIOS","originalTransactionIdentifierIOS","appAccountToken","appBundleIdIOS","countryCodeIOS","currencyCodeIOS","currencySymbolIOS","environmentIOS","expirationDateIOS","isUpgradedIOS","offerIOS","ownershipTypeIOS","reasonIOS","reasonStringRepresentationIOS","revocationDateIOS","revocationReasonIOS","storefrontCountryCodeIOS","subscriptionGroupIdIOS","transactionReasonIOS","webOrderLineItemIdIOS","renewalInfoIOS","autoRenewPreference","expirationReason","gracePeriodExpirationDate","isInBillingRetry","jsonRepresentation","pendingUpgradeProductId","priceIncreaseStatus","renewalDate","renewalOfferId","renewalOfferType","willAutoRenew","androidPurchase","purchaseTokenAndroid","autoRenewingAndroid","dataAndroid","signatureAndroid","isAcknowledgedAndroid","packageNameAndroid","obfuscatedAccountIdAndroid","obfuscatedProfileIdAndroid","developerPayloadAndroid","isSuspendedAndroid","convertNitroSubscriptionStatusToSubscriptionStatusIOS","nitro","renewalInfo","stringify","autoRenewStatus","validateNitroProduct","required","field","validateNitroPurchase","checkTypeSynchronization","issues","testNitroProduct","converted","push","isSync","length"],"sourceRoot":"../../../src","sources":["utils/type-bridge.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["RnIapConsole","PLATFORM_IOS","PLATFORM_ANDROID","STORE_UNKNOWN","STORE_APPLE","STORE_GOOGLE","STORE_HORIZON","PRODUCT_TYPE_SUBS","PRODUCT_TYPE_IN_APP","PURCHASE_STATE_PENDING","PURCHASE_STATE_PURCHASED","PURCHASE_STATE_UNKNOWN","PAYMENT_MODE_EMPTY","PAYMENT_MODE_FREE_TRIAL","PAYMENT_MODE_PAY_AS_YOU_GO","PAYMENT_MODE_PAY_UP_FRONT","SUBSCRIPTION_PERIOD_DAY","SUBSCRIPTION_PERIOD_WEEK","SUBSCRIPTION_PERIOD_MONTH","SUBSCRIPTION_PERIOD_YEAR","SUBSCRIPTION_PERIOD_EMPTY","DEFAULT_JSON_REPR","normalizePlatform","value","toLowerCase","normalizeStore","normalizeProductType","normalizeProductTypeIOS","warn","normalizePaymentMode","toUpperCase","normalizeSubscriptionPeriod","normalizePurchaseState","state","toNullableString","String","toNullableNumber","num","Number","isFinite","toNullableBoolean","parseSubscriptionOffers","undefined","Array","isArray","parsed","JSON","parse","error","convertNitroProductToProduct","nitroProduct","platform","type","base","id","title","description","displayName","displayPrice","currency","price","debugDescription","iosProduct","displayNameIOS","isFamilyShareableIOS","Boolean","jsonRepresentationIOS","typeIOS","subscriptionInfoIOS","introductoryPriceAsAmountIOS","introductoryPriceIOS","introductoryPriceNumberOfPeriodsIOS","introductoryPricePaymentModeIOS","introductoryPriceSubscriptionPeriodIOS","subscriptionPeriodNumberIOS","subscriptionPeriodUnitIOS","discountsIOS","subscriptionOffers","discountOffers","androidProduct","nameAndroid","oneTimePurchaseOfferDetailsAndroid","subscriptionOfferDetailsAndroid","productStatusAndroid","convertProductToProductSubscription","product","output","convertNitroPurchaseToPurchase","nitroPurchase","purchaseState","purchaseStateAndroid","store","iosPurchase","productId","transactionDate","Date","now","purchaseToken","quantity","isAutoRenewing","transactionId","quantityIOS","originalTransactionDateIOS","originalTransactionIdentifierIOS","appAccountToken","appBundleIdIOS","countryCodeIOS","currencyCodeIOS","currencySymbolIOS","environmentIOS","expirationDateIOS","isUpgradedIOS","offerIOS","ownershipTypeIOS","reasonIOS","reasonStringRepresentationIOS","revocationDateIOS","revocationReasonIOS","storefrontCountryCodeIOS","subscriptionGroupIdIOS","transactionReasonIOS","webOrderLineItemIdIOS","renewalInfoIOS","autoRenewPreference","expirationReason","gracePeriodExpirationDate","isInBillingRetry","jsonRepresentation","pendingUpgradeProductId","priceIncreaseStatus","renewalDate","renewalOfferId","renewalOfferType","willAutoRenew","androidPurchase","purchaseTokenAndroid","autoRenewingAndroid","dataAndroid","signatureAndroid","isAcknowledgedAndroid","packageNameAndroid","obfuscatedAccountIdAndroid","obfuscatedProfileIdAndroid","developerPayloadAndroid","isSuspendedAndroid","convertNitroSubscriptionStatusToSubscriptionStatusIOS","nitro","renewalInfo","stringify","autoRenewStatus","validateNitroProduct","required","field","validateNitroPurchase","checkTypeSynchronization","issues","testNitroProduct","converted","push","isSync","length"],"sourceRoot":"../../../src","sources":["utils/type-bridge.ts"],"mappings":"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","ignoreList":[]}
|