react-native-iap 12.10.8 → 12.12.0
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/README.md +11 -8
- package/android/gradle.properties +2 -2
- package/android/src/amazon/java/com/dooboolab/rniap/RNIapAmazonListener.kt +17 -0
- package/android/src/main/java/com/dooboolab/rniap/PromiseUtils.kt +1 -0
- package/ios/IapSerializationUtils.swift +26 -4
- package/ios/RNIapIosSk2.swift +66 -21
- package/lib/commonjs/eventEmitter.js +3 -0
- package/lib/commonjs/eventEmitter.js.map +1 -1
- package/lib/commonjs/hooks/useIAP.js +11 -14
- package/lib/commonjs/hooks/useIAP.js.map +1 -1
- package/lib/commonjs/hooks/withIAPContext.js +11 -7
- package/lib/commonjs/hooks/withIAPContext.js.map +1 -1
- package/lib/commonjs/iap.js +60 -71
- package/lib/commonjs/iap.js.map +1 -1
- package/lib/commonjs/internal/enhancedFetch.js.map +1 -1
- package/lib/commonjs/internal/fillProductsWithAdditionalData.js +5 -0
- package/lib/commonjs/internal/fillProductsWithAdditionalData.js.map +1 -1
- package/lib/commonjs/internal/platform.js +5 -8
- package/lib/commonjs/internal/platform.js.map +1 -1
- package/lib/commonjs/modules/amazon.js +12 -15
- package/lib/commonjs/modules/amazon.js.map +1 -1
- package/lib/commonjs/modules/android.js +15 -19
- package/lib/commonjs/modules/android.js.map +1 -1
- package/lib/commonjs/modules/ios.js +7 -9
- package/lib/commonjs/modules/ios.js.map +1 -1
- package/lib/commonjs/modules/iosSk2.js.map +1 -1
- package/lib/commonjs/purchaseError.js +1 -2
- package/lib/commonjs/purchaseError.js.map +1 -1
- package/lib/commonjs/types/android.js +5 -10
- package/lib/commonjs/types/android.js.map +1 -1
- package/lib/commonjs/types/apple.js.map +1 -1
- package/lib/commonjs/types/appleSk2.js +54 -36
- package/lib/commonjs/types/appleSk2.js.map +1 -1
- package/lib/commonjs/types/index.js +22 -13
- package/lib/commonjs/types/index.js.map +1 -1
- package/lib/module/eventEmitter.js +4 -1
- package/lib/module/eventEmitter.js.map +1 -1
- package/lib/module/hooks/useIAP.js +11 -14
- package/lib/module/hooks/useIAP.js.map +1 -1
- package/lib/module/hooks/withIAPContext.js +9 -5
- package/lib/module/hooks/withIAPContext.js.map +1 -1
- package/lib/module/iap.js +58 -69
- package/lib/module/iap.js.map +1 -1
- package/lib/module/internal/enhancedFetch.js.map +1 -1
- package/lib/module/internal/fillProductsWithAdditionalData.js +5 -0
- package/lib/module/internal/fillProductsWithAdditionalData.js.map +1 -1
- package/lib/module/internal/platform.js.map +1 -1
- package/lib/module/modules/amazon.js +12 -13
- package/lib/module/modules/amazon.js.map +1 -1
- package/lib/module/modules/android.js +14 -17
- package/lib/module/modules/android.js.map +1 -1
- package/lib/module/modules/ios.js +7 -9
- package/lib/module/modules/ios.js.map +1 -1
- package/lib/module/modules/iosSk2.js.map +1 -1
- package/lib/module/types/apple.js.map +1 -1
- package/lib/module/types/appleSk2.js +55 -36
- package/lib/module/types/appleSk2.js.map +1 -1
- package/lib/module/types/index.js +19 -0
- package/lib/module/types/index.js.map +1 -1
- package/lib/typescript/src/eventEmitter.d.ts.map +1 -1
- package/lib/typescript/src/hooks/withIAPContext.d.ts.map +1 -1
- package/lib/typescript/src/internal/fillProductsWithAdditionalData.d.ts.map +1 -1
- package/lib/typescript/src/types/appleSk2.d.ts +17 -3
- package/lib/typescript/src/types/appleSk2.d.ts.map +1 -1
- package/lib/typescript/src/types/index.d.ts +6 -0
- package/lib/typescript/src/types/index.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/eventEmitter.ts +11 -1
- package/src/hooks/withIAPContext.tsx +1 -0
- package/src/internal/fillProductsWithAdditionalData.ts +3 -0
- package/src/types/appleSk2.ts +32 -3
- package/src/types/index.ts +7 -0
|
@@ -4,27 +4,24 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.singleProductAndroidMap = exports.FeatureType = exports.AndroidPurchaseType = exports.AndroidPurchaseState = exports.AndroidConsumptionState = exports.AndroidAcknowledgementState = void 0;
|
|
7
|
-
let AndroidPurchaseState = /*#__PURE__*/function (AndroidPurchaseState) {
|
|
7
|
+
let AndroidPurchaseState = exports.AndroidPurchaseState = /*#__PURE__*/function (AndroidPurchaseState) {
|
|
8
8
|
AndroidPurchaseState[AndroidPurchaseState["purchased"] = 0] = "purchased";
|
|
9
9
|
AndroidPurchaseState[AndroidPurchaseState["canceled"] = 1] = "canceled";
|
|
10
10
|
AndroidPurchaseState[AndroidPurchaseState["pending"] = 2] = "pending";
|
|
11
11
|
return AndroidPurchaseState;
|
|
12
12
|
}({});
|
|
13
|
-
exports.
|
|
14
|
-
let AndroidPurchaseType = /*#__PURE__*/function (AndroidPurchaseType) {
|
|
13
|
+
let AndroidPurchaseType = exports.AndroidPurchaseType = /*#__PURE__*/function (AndroidPurchaseType) {
|
|
15
14
|
AndroidPurchaseType[AndroidPurchaseType["test"] = 0] = "test";
|
|
16
15
|
AndroidPurchaseType[AndroidPurchaseType["promo"] = 1] = "promo";
|
|
17
16
|
AndroidPurchaseType[AndroidPurchaseType["rewarded"] = 2] = "rewarded";
|
|
18
17
|
return AndroidPurchaseType;
|
|
19
18
|
}({});
|
|
20
|
-
exports.
|
|
21
|
-
let AndroidConsumptionState = /*#__PURE__*/function (AndroidConsumptionState) {
|
|
19
|
+
let AndroidConsumptionState = exports.AndroidConsumptionState = /*#__PURE__*/function (AndroidConsumptionState) {
|
|
22
20
|
AndroidConsumptionState[AndroidConsumptionState["yet"] = 0] = "yet";
|
|
23
21
|
AndroidConsumptionState[AndroidConsumptionState["consumed"] = 1] = "consumed";
|
|
24
22
|
return AndroidConsumptionState;
|
|
25
23
|
}({});
|
|
26
|
-
exports.
|
|
27
|
-
let AndroidAcknowledgementState = /*#__PURE__*/function (AndroidAcknowledgementState) {
|
|
24
|
+
let AndroidAcknowledgementState = exports.AndroidAcknowledgementState = /*#__PURE__*/function (AndroidAcknowledgementState) {
|
|
28
25
|
AndroidAcknowledgementState[AndroidAcknowledgementState["yet"] = 0] = "yet";
|
|
29
26
|
AndroidAcknowledgementState[AndroidAcknowledgementState["acknowledged"] = 1] = "acknowledged";
|
|
30
27
|
return AndroidAcknowledgementState;
|
|
@@ -43,11 +40,10 @@ let AndroidAcknowledgementState = /*#__PURE__*/function (AndroidAcknowledgementS
|
|
|
43
40
|
* @param {AndroidAcknowledgementState} acknowledgementState Check if product is acknowledged.
|
|
44
41
|
* @param {string} kind
|
|
45
42
|
*/
|
|
46
|
-
exports.AndroidAcknowledgementState = AndroidAcknowledgementState;
|
|
47
43
|
/** Based on
|
|
48
44
|
* https://developer.android.com/reference/com/android/billingclient/api/BillingClient.FeatureType
|
|
49
45
|
*/
|
|
50
|
-
let FeatureType = /*#__PURE__*/function (FeatureType) {
|
|
46
|
+
let FeatureType = exports.FeatureType = /*#__PURE__*/function (FeatureType) {
|
|
51
47
|
FeatureType["IN_APP_MESSAGING"] = "IN_APP_MESSAGING";
|
|
52
48
|
FeatureType["PRICE_CHANGE_CONFIRMATION"] = "PRICE_CHANGE_CONFIRMATION";
|
|
53
49
|
FeatureType["PRODUCT_DETAILS"] = "PRODUCT_DETAILS";
|
|
@@ -56,7 +52,6 @@ let FeatureType = /*#__PURE__*/function (FeatureType) {
|
|
|
56
52
|
return FeatureType;
|
|
57
53
|
}({});
|
|
58
54
|
/** Added to maintain backwards compatibility */
|
|
59
|
-
exports.FeatureType = FeatureType;
|
|
60
55
|
const singleProductAndroidMap = originalProd => {
|
|
61
56
|
var _originalProd$oneTime, _originalProd$oneTime2, _originalProd$oneTime3;
|
|
62
57
|
const prod = {
|
|
@@ -1 +1 @@
|
|
|
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,0BAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;
|
|
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 +1 @@
|
|
|
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;
|
|
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"}
|
|
@@ -4,15 +4,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.transactionSk2ToPurchaseMap = exports.subscriptionSk2Map = exports.productSk2Map = exports.offerSk2Map = void 0;
|
|
7
|
-
var _ = require("
|
|
8
|
-
const productSk2Map =
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
7
|
+
var _ = require("./");
|
|
8
|
+
const productSk2Map = ({
|
|
9
|
+
id,
|
|
10
|
+
description,
|
|
11
|
+
displayName,
|
|
12
|
+
price,
|
|
13
|
+
currency,
|
|
14
|
+
displayPrice
|
|
15
|
+
}) => {
|
|
16
16
|
const prod = {
|
|
17
17
|
title: displayName,
|
|
18
18
|
productId: String(id),
|
|
@@ -20,22 +20,21 @@ const productSk2Map = _ref => {
|
|
|
20
20
|
type: 'iap',
|
|
21
21
|
price: String(price),
|
|
22
22
|
localizedPrice: displayPrice,
|
|
23
|
-
currency
|
|
23
|
+
currency
|
|
24
24
|
};
|
|
25
|
-
|
|
26
25
|
return prod;
|
|
27
26
|
};
|
|
28
27
|
exports.productSk2Map = productSk2Map;
|
|
29
|
-
const subscriptionSk2Map =
|
|
28
|
+
const subscriptionSk2Map = ({
|
|
29
|
+
id,
|
|
30
|
+
description,
|
|
31
|
+
displayName,
|
|
32
|
+
price,
|
|
33
|
+
currency,
|
|
34
|
+
displayPrice,
|
|
35
|
+
subscription
|
|
36
|
+
}) => {
|
|
30
37
|
var _subscription$subscri, _subscription$subscri2;
|
|
31
|
-
let {
|
|
32
|
-
id,
|
|
33
|
-
description,
|
|
34
|
-
displayName,
|
|
35
|
-
price,
|
|
36
|
-
displayPrice,
|
|
37
|
-
subscription
|
|
38
|
-
} = _ref2;
|
|
39
38
|
const prod = {
|
|
40
39
|
platform: _.SubscriptionPlatform.ios,
|
|
41
40
|
title: displayName,
|
|
@@ -44,25 +43,43 @@ const subscriptionSk2Map = _ref2 => {
|
|
|
44
43
|
type: 'subs',
|
|
45
44
|
price: String(price),
|
|
46
45
|
localizedPrice: displayPrice,
|
|
47
|
-
currency
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
subscriptionPeriodUnitIOS: subscription === null || subscription === void 0 ? void 0 : (_subscription$subscri2 = subscription.subscriptionPeriod) === null || _subscription$subscri2 === void 0 ? void 0 : _subscription$subscri2.unit.toUpperCase()
|
|
46
|
+
currency,
|
|
47
|
+
subscriptionPeriodNumberIOS: `${subscription === null || subscription === void 0 || (_subscription$subscri = subscription.subscriptionPeriod) === null || _subscription$subscri === void 0 ? void 0 : _subscription$subscri.value}`,
|
|
48
|
+
subscriptionPeriodUnitIOS: subscription === null || subscription === void 0 || (_subscription$subscri2 = subscription.subscriptionPeriod) === null || _subscription$subscri2 === void 0 ? void 0 : _subscription$subscri2.unit.toUpperCase()
|
|
51
49
|
};
|
|
52
50
|
return prod;
|
|
53
51
|
};
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Only one of `transaction` and `error` is not undefined at the time
|
|
55
|
+
*/
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Renewal info for whole subscription group.
|
|
59
|
+
* see: https://developer.apple.com/documentation/storekit/product/subscriptioninfo/status/3822294-renewalinfo
|
|
60
|
+
* WARN:
|
|
61
|
+
* - autoRenewPreference is serialised as autoRenewProductId in jsonRepresentation
|
|
62
|
+
* - renewalDate is available in jsonRepresentation (will change with Xcode 15 https://developer.apple.com/forums/thread/738833)
|
|
63
|
+
*/
|
|
54
64
|
exports.subscriptionSk2Map = subscriptionSk2Map;
|
|
55
|
-
const transactionSk2ToPurchaseMap =
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
65
|
+
const transactionSk2ToPurchaseMap = ({
|
|
66
|
+
id,
|
|
67
|
+
originalPurchaseDate,
|
|
68
|
+
productID,
|
|
69
|
+
purchaseDate,
|
|
70
|
+
purchasedQuantity,
|
|
71
|
+
originalID,
|
|
72
|
+
verificationResult,
|
|
73
|
+
appAccountToken,
|
|
74
|
+
jsonRepresentation
|
|
75
|
+
}) => {
|
|
76
|
+
let transactionReasonIOS;
|
|
77
|
+
try {
|
|
78
|
+
const transactionData = JSON.parse(jsonRepresentation);
|
|
79
|
+
transactionReasonIOS = transactionData.transactionReason;
|
|
80
|
+
} catch (e) {
|
|
81
|
+
console.log('AppleSK2.ts react-native-iap: Error parsing jsonRepresentation', e);
|
|
82
|
+
}
|
|
66
83
|
const purchase = {
|
|
67
84
|
productId: productID,
|
|
68
85
|
transactionId: String(id),
|
|
@@ -76,7 +93,8 @@ const transactionSk2ToPurchaseMap = _ref3 => {
|
|
|
76
93
|
originalTransactionDateIOS: originalPurchaseDate,
|
|
77
94
|
originalTransactionIdentifierIOS: originalID,
|
|
78
95
|
verificationResultIOS: verificationResult ?? '',
|
|
79
|
-
appAccountToken: appAccountToken ?? ''
|
|
96
|
+
appAccountToken: appAccountToken ?? '',
|
|
97
|
+
transactionReasonIOS: transactionReasonIOS ?? ''
|
|
80
98
|
};
|
|
81
99
|
return purchase;
|
|
82
100
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_","require","productSk2Map","
|
|
1
|
+
{"version":3,"names":["_","require","productSk2Map","id","description","displayName","price","currency","displayPrice","prod","title","productId","String","type","localizedPrice","exports","subscriptionSk2Map","subscription","_subscription$subscri","_subscription$subscri2","platform","SubscriptionPlatform","ios","subscriptionPeriodNumberIOS","subscriptionPeriod","value","subscriptionPeriodUnitIOS","unit","toUpperCase","transactionSk2ToPurchaseMap","originalPurchaseDate","productID","purchaseDate","purchasedQuantity","originalID","verificationResult","appAccountToken","jsonRepresentation","transactionReasonIOS","transactionData","JSON","parse","transactionReason","e","console","log","purchase","transactionId","transactionDate","transactionReceipt","purchaseToken","quantityIOS","originalTransactionDateIOS","originalTransactionIdentifierIOS","verificationResultIOS","offerSk2Map","offer","undefined","offerID","identifier","keyID","keyIdentifier","nonce","signature","timestamp","toString"],"sourceRoot":"../../../src","sources":["types/appleSk2.ts"],"mappings":"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"}
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.SubscriptionPlatform = exports.PurchaseStateAndroid = exports.ProrationModesAndroid = exports.ProductType = exports.PROMOTED_PRODUCT = exports.InstallSourceAndroid = void 0;
|
|
7
|
-
let ProrationModesAndroid = /*#__PURE__*/function (ProrationModesAndroid) {
|
|
6
|
+
exports.TransactionReason = exports.SubscriptionPlatform = exports.PurchaseStateAndroid = exports.ProrationModesAndroid = exports.ProductType = exports.PROMOTED_PRODUCT = exports.InstallSourceAndroid = void 0;
|
|
7
|
+
let ProrationModesAndroid = exports.ProrationModesAndroid = /*#__PURE__*/function (ProrationModesAndroid) {
|
|
8
8
|
ProrationModesAndroid[ProrationModesAndroid["IMMEDIATE_WITH_TIME_PRORATION"] = 1] = "IMMEDIATE_WITH_TIME_PRORATION";
|
|
9
9
|
ProrationModesAndroid[ProrationModesAndroid["IMMEDIATE_AND_CHARGE_PRORATED_PRICE"] = 2] = "IMMEDIATE_AND_CHARGE_PRORATED_PRICE";
|
|
10
10
|
ProrationModesAndroid[ProrationModesAndroid["IMMEDIATE_WITHOUT_PRORATION"] = 3] = "IMMEDIATE_WITHOUT_PRORATION";
|
|
@@ -13,40 +13,49 @@ let ProrationModesAndroid = /*#__PURE__*/function (ProrationModesAndroid) {
|
|
|
13
13
|
ProrationModesAndroid[ProrationModesAndroid["UNKNOWN_SUBSCRIPTION_UPGRADE_DOWNGRADE_POLICY"] = 0] = "UNKNOWN_SUBSCRIPTION_UPGRADE_DOWNGRADE_POLICY";
|
|
14
14
|
return ProrationModesAndroid;
|
|
15
15
|
}({});
|
|
16
|
-
exports.
|
|
17
|
-
let PurchaseStateAndroid = /*#__PURE__*/function (PurchaseStateAndroid) {
|
|
16
|
+
let PurchaseStateAndroid = exports.PurchaseStateAndroid = /*#__PURE__*/function (PurchaseStateAndroid) {
|
|
18
17
|
PurchaseStateAndroid[PurchaseStateAndroid["UNSPECIFIED_STATE"] = 0] = "UNSPECIFIED_STATE";
|
|
19
18
|
PurchaseStateAndroid[PurchaseStateAndroid["PURCHASED"] = 1] = "PURCHASED";
|
|
20
19
|
PurchaseStateAndroid[PurchaseStateAndroid["PENDING"] = 2] = "PENDING";
|
|
21
20
|
return PurchaseStateAndroid;
|
|
22
21
|
}({});
|
|
23
|
-
exports.
|
|
24
|
-
|
|
25
|
-
exports.PROMOTED_PRODUCT = PROMOTED_PRODUCT;
|
|
26
|
-
let InstallSourceAndroid = /*#__PURE__*/function (InstallSourceAndroid) {
|
|
22
|
+
const PROMOTED_PRODUCT = exports.PROMOTED_PRODUCT = 'iap-promoted-product';
|
|
23
|
+
let InstallSourceAndroid = exports.InstallSourceAndroid = /*#__PURE__*/function (InstallSourceAndroid) {
|
|
27
24
|
InstallSourceAndroid[InstallSourceAndroid["NOT_SET"] = 0] = "NOT_SET";
|
|
28
25
|
InstallSourceAndroid[InstallSourceAndroid["GOOGLE_PLAY"] = 1] = "GOOGLE_PLAY";
|
|
29
26
|
InstallSourceAndroid[InstallSourceAndroid["AMAZON"] = 2] = "AMAZON";
|
|
30
27
|
return InstallSourceAndroid;
|
|
31
28
|
}({});
|
|
32
|
-
exports.
|
|
33
|
-
let ProductType = /*#__PURE__*/function (ProductType) {
|
|
29
|
+
let ProductType = exports.ProductType = /*#__PURE__*/function (ProductType) {
|
|
34
30
|
ProductType["subs"] = "subs";
|
|
35
31
|
ProductType["sub"] = "sub";
|
|
36
32
|
ProductType["inapp"] = "inapp";
|
|
37
33
|
ProductType["iap"] = "iap";
|
|
38
34
|
return ProductType;
|
|
39
35
|
}({});
|
|
40
|
-
exports.
|
|
36
|
+
let TransactionReason = exports.TransactionReason = /*#__PURE__*/function (TransactionReason) {
|
|
37
|
+
TransactionReason["PURCHASE"] = "PURCHASE";
|
|
38
|
+
TransactionReason["RENEWAL"] = "RENEWAL";
|
|
39
|
+
return TransactionReason;
|
|
40
|
+
}({});
|
|
41
41
|
/**
|
|
42
42
|
* Can be used to distinguish the different platforms' subscription information
|
|
43
43
|
*/
|
|
44
|
-
let SubscriptionPlatform = /*#__PURE__*/function (SubscriptionPlatform) {
|
|
44
|
+
let SubscriptionPlatform = exports.SubscriptionPlatform = /*#__PURE__*/function (SubscriptionPlatform) {
|
|
45
45
|
SubscriptionPlatform["android"] = "android";
|
|
46
46
|
SubscriptionPlatform["amazon"] = "amazon";
|
|
47
47
|
SubscriptionPlatform["ios"] = "ios";
|
|
48
48
|
return SubscriptionPlatform;
|
|
49
49
|
}({});
|
|
50
50
|
/** Android Billing v5 type */
|
|
51
|
-
|
|
51
|
+
/**
|
|
52
|
+
* TODO: As of 2022-10-10, this typing is not verified against the real
|
|
53
|
+
* Amazon API. Please update this if you have a more accurate type.
|
|
54
|
+
*/
|
|
55
|
+
/** As of 2022-10-12, we only use the `sku` field for Amazon purchases */
|
|
56
|
+
/**
|
|
57
|
+
* In order to purchase a new subscription, every sku must have a selected offerToken
|
|
58
|
+
* @see SubscriptionAndroid.subscriptionOfferDetails.offerToken
|
|
59
|
+
*/
|
|
60
|
+
/** As of 2022-10-12, we only use the `sku` field for Amazon subscriptions */
|
|
52
61
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ProrationModesAndroid","exports","PurchaseStateAndroid","PROMOTED_PRODUCT","InstallSourceAndroid","ProductType","SubscriptionPlatform"],"sourceRoot":"../../../src","sources":["types/index.ts"],"mappings":";;;;;;IAWYA,qBAAqB,0BAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA;
|
|
1
|
+
{"version":3,"names":["ProrationModesAndroid","exports","PurchaseStateAndroid","PROMOTED_PRODUCT","InstallSourceAndroid","ProductType","TransactionReason","SubscriptionPlatform"],"sourceRoot":"../../../src","sources":["types/index.ts"],"mappings":";;;;;;IAWYA,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,0BAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA;AAAA,IASrBE,oBAAoB,GAAAD,OAAA,CAAAC,oBAAA,0BAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;AAMzB,MAAMC,gBAAgB,GAAAF,OAAA,CAAAE,gBAAA,GAAG,sBAAsB;AAAC,IAE3CC,oBAAoB,GAAAH,OAAA,CAAAG,oBAAA,0BAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAApBA,oBAAoB,CAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;AAAA,IAMpBC,WAAW,GAAAJ,OAAA,CAAAI,WAAA,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;AAAA,IAcXC,iBAAiB,GAAAL,OAAA,CAAAK,iBAAA,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA;AA0F7B;AACA;AACA;AAFA,IAGYC,oBAAoB,GAAAN,OAAA,CAAAM,oBAAA,0BAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;AAMhC;AAiCA;AACA;AACA;AACA;AAsDA;AAQA;AACA;AACA;AACA;AAcA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { NativeEventEmitter } from 'react-native';
|
|
2
2
|
import { transactionSk2ToPurchaseMap } from './types/appleSk2';
|
|
3
3
|
import { isIosStorekit2 } from './iap';
|
|
4
|
-
import { getIosModule, getNativeModule, isIos } from './internal';
|
|
4
|
+
import { getAndroidModule, getIosModule, getNativeModule, isAndroid, isIos } from './internal';
|
|
5
5
|
/**
|
|
6
6
|
* Add IAP purchase event
|
|
7
7
|
* Register a callback that gets called when the store has any updates to purchases that have not yet been finished, consumed or acknowledged. Returns a React Native `EmitterSubscription` on which you can call `.remove()` to stop receiving updates. Register you listener as soon as possible and react to updates at all times.
|
|
@@ -40,6 +40,9 @@ export const purchaseUpdatedListener = listener => {
|
|
|
40
40
|
listener(transactionSk2ToPurchaseMap(event));
|
|
41
41
|
} : listener;
|
|
42
42
|
const emitterSubscription = eventEmitter.addListener('purchase-updated', proxyListener);
|
|
43
|
+
if (isAndroid) {
|
|
44
|
+
getAndroidModule().startListening();
|
|
45
|
+
}
|
|
43
46
|
return emitterSubscription;
|
|
44
47
|
};
|
|
45
48
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeEventEmitter","transactionSk2ToPurchaseMap","isIosStorekit2","getIosModule","getNativeModule","isIos","purchaseUpdatedListener","listener","eventEmitter","proxyListener","event","emitterSubscription","addListener","purchaseErrorListener","promotedProductListener","transactionListener"],"sourceRoot":"../../src","sources":["eventEmitter.ts"],"mappings":"AAAA,SAA6BA,kBAAkB,QAAO,cAAc;AAEpE,SAA0BC,2BAA2B,QAAO,kBAAkB;AAC9E,SAAQC,cAAc,QAAO,OAAO;AACpC,
|
|
1
|
+
{"version":3,"names":["NativeEventEmitter","transactionSk2ToPurchaseMap","isIosStorekit2","getAndroidModule","getIosModule","getNativeModule","isAndroid","isIos","purchaseUpdatedListener","listener","eventEmitter","proxyListener","event","emitterSubscription","addListener","startListening","purchaseErrorListener","promotedProductListener","transactionListener"],"sourceRoot":"../../src","sources":["eventEmitter.ts"],"mappings":"AAAA,SAA6BA,kBAAkB,QAAO,cAAc;AAEpE,SAA0BC,2BAA2B,QAAO,kBAAkB;AAC9E,SAAQC,cAAc,QAAO,OAAO;AACpC,SACEC,gBAAgB,EAChBC,YAAY,EACZC,eAAe,EACfC,SAAS,EACTC,KAAK,QACA,YAAY;AAInB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,uBAAuB,GAClCC,QAAmC,IAChC;EACH,MAAMC,YAAY,GAAG,IAAIV,kBAAkB,CAACK,eAAe,CAAC,CAAC,CAAC;EAC9D,MAAMM,aAAa,GAAGT,cAAc,CAAC,CAAC,GACjCU,KAAe,IAAK;IACnBH,QAAQ,CAACR,2BAA2B,CAACW,KAAY,CAAC,CAAC;EACrD,CAAC,GACDH,QAAQ;EACZ,MAAMI,mBAAmB,GAAGH,YAAY,CAACI,WAAW,CAClD,kBAAkB,EAClBH,aACF,CAAC;EAED,IAAIL,SAAS,EAAE;IACbH,gBAAgB,CAAC,CAAC,CAACY,cAAc,CAAC,CAAC;EACrC;EAEA,OAAOF,mBAAmB;AAC5B,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMG,qBAAqB,GAChCP,QAAwC,IAChB;EACxB,MAAMC,YAAY,GAAG,IAAIV,kBAAkB,CAACK,eAAe,CAAC,CAAC,CAAC;EAC9D,OAAOK,YAAY,CAACI,WAAW,CAAC,gBAAgB,EAAEL,QAAQ,CAAC;AAC7D,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMQ,uBAAuB,GAAIR,QAAoB,IAAK;EAC/D,IAAIF,KAAK,IAAI,CAACL,cAAc,CAAC,CAAC,EAAE;IAC9B,MAAMQ,YAAY,GAAG,IAAIV,kBAAkB,CAACI,YAAY,CAAC,CAAC,CAAC;IAC3D,OAAOM,YAAY,CAACI,WAAW,CAAC,sBAAsB,EAAEL,QAAQ,CAAC;EACnE;EAEA,OAAO,IAAI;AACb,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMS,mBAAmB,GAC9BT,QAA2C,IACxC;EACH,IAAIF,KAAK,IAAIL,cAAc,CAAC,CAAC,EAAE;IAC7B,MAAMQ,YAAY,GAAG,IAAIV,kBAAkB,CAACI,YAAY,CAAC,CAAC,CAAC;IAC3D,OAAOM,YAAY,CAACI,WAAW,CAAC,yBAAyB,EAAEL,QAAQ,CAAC;EACtE;EAEA,OAAO,IAAI;AACb,CAAC"}
|
|
@@ -19,18 +19,16 @@ export const useIAP = () => {
|
|
|
19
19
|
setCurrentPurchase,
|
|
20
20
|
setCurrentPurchaseError
|
|
21
21
|
} = useIAPContext();
|
|
22
|
-
const getProducts = useCallback(async
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
} = _ref;
|
|
22
|
+
const getProducts = useCallback(async ({
|
|
23
|
+
skus
|
|
24
|
+
}) => {
|
|
26
25
|
setProducts(await iapGetProducts({
|
|
27
26
|
skus
|
|
28
27
|
}));
|
|
29
28
|
}, [setProducts]);
|
|
30
|
-
const getSubscriptions = useCallback(async
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
} = _ref2;
|
|
29
|
+
const getSubscriptions = useCallback(async ({
|
|
30
|
+
skus
|
|
31
|
+
}) => {
|
|
34
32
|
setSubscriptions(await iapGetSubscriptions({
|
|
35
33
|
skus
|
|
36
34
|
}));
|
|
@@ -41,12 +39,11 @@ export const useIAP = () => {
|
|
|
41
39
|
const getPurchaseHistory = useCallback(async () => {
|
|
42
40
|
setPurchaseHistory(await iapGetPurchaseHistory());
|
|
43
41
|
}, [setPurchaseHistory]);
|
|
44
|
-
const finishTransaction = useCallback(async
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
} = _ref3;
|
|
42
|
+
const finishTransaction = useCallback(async ({
|
|
43
|
+
purchase,
|
|
44
|
+
isConsumable,
|
|
45
|
+
developerPayloadAndroid
|
|
46
|
+
}) => {
|
|
50
47
|
try {
|
|
51
48
|
return await iapFinishTransaction({
|
|
52
49
|
purchase,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","finishTransaction","iapFinishTransaction","getAvailablePurchases","iapGetAvailablePurchases","getProducts","iapGetProducts","getPurchaseHistory","iapGetPurchaseHistory","getSubscriptions","iapGetSubscriptions","requestPurchase","iapRequestPurchase","requestSubscription","iapRequestSubscription","useIAPContext","useIAP","connected","products","promotedProductsIOS","subscriptions","purchaseHistory","availablePurchases","currentPurchase","currentPurchaseError","initConnectionError","setProducts","setSubscriptions","setAvailablePurchases","setPurchaseHistory","setCurrentPurchase","setCurrentPurchaseError","
|
|
1
|
+
{"version":3,"names":["useCallback","finishTransaction","iapFinishTransaction","getAvailablePurchases","iapGetAvailablePurchases","getProducts","iapGetProducts","getPurchaseHistory","iapGetPurchaseHistory","getSubscriptions","iapGetSubscriptions","requestPurchase","iapRequestPurchase","requestSubscription","iapRequestSubscription","useIAPContext","useIAP","connected","products","promotedProductsIOS","subscriptions","purchaseHistory","availablePurchases","currentPurchase","currentPurchaseError","initConnectionError","setProducts","setSubscriptions","setAvailablePurchases","setPurchaseHistory","setCurrentPurchase","setCurrentPurchaseError","skus","purchase","isConsumable","developerPayloadAndroid","err","productId","undefined"],"sourceRoot":"../../../src","sources":["hooks/useIAP.ts"],"mappings":"AAAA,SAAQA,WAAW,QAAO,OAAO;AAEjC,SACEC,iBAAiB,IAAIC,oBAAoB,EACzCC,qBAAqB,IAAIC,wBAAwB,EACjDC,WAAW,IAAIC,cAAc,EAC7BC,kBAAkB,IAAIC,qBAAqB,EAC3CC,gBAAgB,IAAIC,mBAAmB,EACvCC,eAAe,IAAIC,kBAAkB,EACrCC,mBAAmB,IAAIC,sBAAsB,QACxC,QAAQ;AAIf,SAAQC,aAAa,QAAO,kBAAkB;AA6B9C,OAAO,MAAMC,MAAM,GAAGA,CAAA,KAAkB;EACtC,MAAM;IACJC,SAAS;IACTC,QAAQ;IACRC,mBAAmB;IACnBC,aAAa;IACbC,eAAe;IACfC,kBAAkB;IAClBC,eAAe;IACfC,oBAAoB;IACpBC,mBAAmB;IACnBC,WAAW;IACXC,gBAAgB;IAChBC,qBAAqB;IACrBC,kBAAkB;IAClBC,kBAAkB;IAClBC;EACF,CAAC,GAAGhB,aAAa,CAAC,CAAC;EAEnB,MAAMV,WAAW,GAAGL,WAAW,CAC7B,OAAO;IAACgC;EAAsB,CAAC,KAAoB;IACjDN,WAAW,CAAC,MAAMpB,cAAc,CAAC;MAAC0B;IAAI,CAAC,CAAC,CAAC;EAC3C,CAAC,EACD,CAACN,WAAW,CACd,CAAC;EAED,MAAMjB,gBAAgB,GAAGT,WAAW,CAClC,OAAO;IAACgC;EAAsB,CAAC,KAAoB;IACjDL,gBAAgB,CAAC,MAAMjB,mBAAmB,CAAC;MAACsB;IAAI,CAAC,CAAC,CAAC;EACrD,CAAC,EACD,CAACL,gBAAgB,CACnB,CAAC;EAED,MAAMxB,qBAAqB,GAAGH,WAAW,CAAC,YAA2B;IACnE4B,qBAAqB,CAAC,MAAMxB,wBAAwB,CAAC,CAAC,CAAC;EACzD,CAAC,EAAE,CAACwB,qBAAqB,CAAC,CAAC;EAE3B,MAAMrB,kBAAkB,GAAGP,WAAW,CAAC,YAA2B;IAChE6B,kBAAkB,CAAC,MAAMrB,qBAAqB,CAAC,CAAC,CAAC;EACnD,CAAC,EAAE,CAACqB,kBAAkB,CAAC,CAAC;EAExB,MAAM5B,iBAAiB,GAAGD,WAAW,CACnC,OAAO;IACLiC,QAAQ;IACRC,YAAY;IACZC;EAKF,CAAC,KAAwD;IACvD,IAAI;MACF,OAAO,MAAMjC,oBAAoB,CAAC;QAChC+B,QAAQ;QACRC,YAAY;QACZC;MACF,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOC,GAAG,EAAE;MACZ,MAAMA,GAAG;IACX,CAAC,SAAS;MACR,IAAIH,QAAQ,CAACI,SAAS,MAAKd,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEc,SAAS,GAAE;QACrDP,kBAAkB,CAACQ,SAAS,CAAC;MAC/B;MAEA,IAAIL,QAAQ,CAACI,SAAS,MAAKb,oBAAoB,aAApBA,oBAAoB,uBAApBA,oBAAoB,CAAEa,SAAS,GAAE;QAC1DN,uBAAuB,CAACO,SAAS,CAAC;MACpC;IACF;EACF,CAAC,EACD,CACEf,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEc,SAAS,EAC1Bb,oBAAoB,aAApBA,oBAAoB,uBAApBA,oBAAoB,CAAEa,SAAS,EAC/BP,kBAAkB,EAClBC,uBAAuB,CAE3B,CAAC;EAED,OAAO;IACLd,SAAS;IACTC,QAAQ;IACRC,mBAAmB;IACnBC,aAAa;IACbC,eAAe;IACfC,kBAAkB;IAClBC,eAAe;IACfC,oBAAoB;IACpBC,mBAAmB;IACnBxB,iBAAiB;IACjBI,WAAW;IACXI,gBAAgB;IAChBN,qBAAqB;IACrBI,kBAAkB;IAClBI,eAAe,EAAEC,kBAAkB;IACnCC,mBAAmB,EAAEC;EACvB,CAAC;AACH,CAAC"}
|
|
@@ -69,13 +69,17 @@ export function withIAPContext(Component) {
|
|
|
69
69
|
return () => {
|
|
70
70
|
purchaseUpdateSubscription.remove();
|
|
71
71
|
purchaseErrorSubscription.remove();
|
|
72
|
-
promotedProductSubscription === null || promotedProductSubscription === void 0
|
|
73
|
-
transactionUpdateSubscription === null || transactionUpdateSubscription === void 0
|
|
72
|
+
promotedProductSubscription === null || promotedProductSubscription === void 0 || promotedProductSubscription.remove();
|
|
73
|
+
transactionUpdateSubscription === null || transactionUpdateSubscription === void 0 || transactionUpdateSubscription.remove();
|
|
74
74
|
};
|
|
75
75
|
}, [connected]);
|
|
76
|
-
return
|
|
77
|
-
|
|
78
|
-
|
|
76
|
+
return (
|
|
77
|
+
/*#__PURE__*/
|
|
78
|
+
// @ts-ignore
|
|
79
|
+
React.createElement(IAPContext.Provider, {
|
|
80
|
+
value: context
|
|
81
|
+
}, /*#__PURE__*/React.createElement(Component, props))
|
|
82
|
+
);
|
|
79
83
|
};
|
|
80
84
|
}
|
|
81
85
|
//# sourceMappingURL=withIAPContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useContext","useEffect","useMemo","useState","promotedProductListener","purchaseErrorListener","purchaseUpdatedListener","transactionListener","IapIos","initConnection","IAPContext","createContext","useIAPContext","ctx","Error","withIAPContext","Component","WrapperComponent","props","connected","setConnected","products","setProducts","promotedProductsIOS","setPromotedProductsIOS","subscriptions","setSubscriptions","purchaseHistory","setPurchaseHistory","availablePurchases","setAvailablePurchases","currentPurchase","setCurrentPurchase","currentTransaction","setCurrentTransaction","currentPurchaseError","setCurrentPurchaseError","initConnectionError","setInitConnectionError","context","then","value","undefined","catch","purchaseUpdateSubscription","purchase","transactionUpdateSubscription","transactionOrError","error","transaction","purchaseErrorSubscription","promotedProductSubscription","product","getPromotedProductIOS","prevProducts","remove","createElement","Provider"],"sourceRoot":"../../../src","sources":["hooks/withIAPContext.tsx"],"mappings":"AAAA,OAAOA,KAAK,IAAGC,UAAU,EAAEC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,QAAO,OAAO;AAErE,SACEC,uBAAuB,EACvBC,qBAAqB,EACrBC,uBAAuB,EACvBC,mBAAmB,QACd,iBAAiB;AACxB,SAAQC,MAAM,EAAEC,cAAc,QAAO,QAAQ;AAgC7C;AACA,MAAMC,UAAU,gBAAGX,KAAK,CAACY,aAAa,CAAiB,IAAI,CAAC;AAE5D,OAAO,SAASC,aAAaA,CAAA,EAAmB;EAC9C,MAAMC,GAAG,GAAGb,UAAU,CAACU,UAAU,CAAC;EAElC,IAAI,CAACG,GAAG,EAAE;IACR,MAAM,IAAIC,KAAK,CAAC,gDAAgD,CAAC;EACnE;EAEA,OAAOD,GAAG;AACZ;AAEA,OAAO,SAASE,cAAcA,CAAIC,SAAiC,EAAE;EACnE,OAAO,SAASC,gBAAgBA,CAACC,KAAQ,EAAE;IACzC,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAGjB,QAAQ,CAAC,KAAK,CAAC;IACjD,MAAM,CAACkB,QAAQ,EAAEC,WAAW,CAAC,GAAGnB,QAAQ,CAAY,EAAE,CAAC;IAEvD,MAAM,CAACoB,mBAAmB,EAAEC,sBAAsB,CAAC,GAAGrB,QAAQ,CAC5D,
|
|
1
|
+
{"version":3,"names":["React","useContext","useEffect","useMemo","useState","promotedProductListener","purchaseErrorListener","purchaseUpdatedListener","transactionListener","IapIos","initConnection","IAPContext","createContext","useIAPContext","ctx","Error","withIAPContext","Component","WrapperComponent","props","connected","setConnected","products","setProducts","promotedProductsIOS","setPromotedProductsIOS","subscriptions","setSubscriptions","purchaseHistory","setPurchaseHistory","availablePurchases","setAvailablePurchases","currentPurchase","setCurrentPurchase","currentTransaction","setCurrentTransaction","currentPurchaseError","setCurrentPurchaseError","initConnectionError","setInitConnectionError","context","then","value","undefined","catch","purchaseUpdateSubscription","purchase","transactionUpdateSubscription","transactionOrError","error","transaction","purchaseErrorSubscription","promotedProductSubscription","product","getPromotedProductIOS","prevProducts","remove","createElement","Provider"],"sourceRoot":"../../../src","sources":["hooks/withIAPContext.tsx"],"mappings":"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"}
|
package/lib/module/iap.js
CHANGED
|
@@ -28,10 +28,9 @@ const ANDROID_ITEM_TYPE_IAP = ProductType.inapp;
|
|
|
28
28
|
* have already targeted a min version of 15 for their app.
|
|
29
29
|
*/
|
|
30
30
|
|
|
31
|
-
export const setup =
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
31
|
+
export const setup = ({
|
|
32
|
+
storekitMode = 'STOREKIT1_MODE'
|
|
33
|
+
} = {}) => {
|
|
35
34
|
switch (storekitMode) {
|
|
36
35
|
case 'STOREKIT1_MODE':
|
|
37
36
|
storekit1Mode();
|
|
@@ -139,10 +138,9 @@ Just a few things to keep in mind:
|
|
|
139
138
|
- If the user has no IAPs available when the app starts first, you may want to check again when the user enters your IAP store.
|
|
140
139
|
|
|
141
140
|
*/
|
|
142
|
-
export const getProducts =
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
} = _ref;
|
|
141
|
+
export const getProducts = ({
|
|
142
|
+
skus
|
|
143
|
+
}) => {
|
|
146
144
|
if (!(skus !== null && skus !== void 0 && skus.length)) {
|
|
147
145
|
return Promise.reject('"skus" is required');
|
|
148
146
|
}
|
|
@@ -184,10 +182,9 @@ const App = () => {
|
|
|
184
182
|
```
|
|
185
183
|
|
|
186
184
|
*/
|
|
187
|
-
export const getSubscriptions =
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
} = _ref2;
|
|
185
|
+
export const getSubscriptions = ({
|
|
186
|
+
skus
|
|
187
|
+
}) => {
|
|
191
188
|
if (!(skus !== null && skus !== void 0 && skus.length)) {
|
|
192
189
|
return Promise.reject('"skus" is required');
|
|
193
190
|
}
|
|
@@ -264,30 +261,27 @@ have to manually finish the returned transaction once you have delivered the con
|
|
|
264
261
|
@param {onlyIncludeActiveItems}:boolean. (IOS Sk2 only). Defaults to false, meaning that it will return one transaction per item purchased.
|
|
265
262
|
@See https://developer.apple.com/documentation/storekit/transaction/3851204-currententitlements for details
|
|
266
263
|
*/
|
|
267
|
-
export const getPurchaseHistory =
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
} else {
|
|
278
|
-
return RNIapIos.getAvailableItems(automaticallyFinishRestoredTransactions);
|
|
279
|
-
}
|
|
280
|
-
},
|
|
281
|
-
android: async () => {
|
|
282
|
-
if (RNIapAmazonModule) {
|
|
283
|
-
return await RNIapAmazonModule.getAvailableItems();
|
|
284
|
-
}
|
|
285
|
-
const products = await RNIapModule.getPurchaseHistoryByType(ANDROID_ITEM_TYPE_IAP);
|
|
286
|
-
const subscriptions = await RNIapModule.getPurchaseHistoryByType(ANDROID_ITEM_TYPE_SUBSCRIPTION);
|
|
287
|
-
return products.concat(subscriptions);
|
|
264
|
+
export const getPurchaseHistory = ({
|
|
265
|
+
alsoPublishToEventListener = false,
|
|
266
|
+
automaticallyFinishRestoredTransactions = true,
|
|
267
|
+
onlyIncludeActiveItems = false
|
|
268
|
+
} = {}) => (Platform.select({
|
|
269
|
+
ios: async () => {
|
|
270
|
+
if (isIosStorekit2()) {
|
|
271
|
+
return Promise.resolve((await RNIapIosSk2.getAvailableItems(alsoPublishToEventListener, onlyIncludeActiveItems)).map(transactionSk2ToPurchaseMap));
|
|
272
|
+
} else {
|
|
273
|
+
return RNIapIos.getAvailableItems(automaticallyFinishRestoredTransactions);
|
|
288
274
|
}
|
|
289
|
-
}
|
|
290
|
-
|
|
275
|
+
},
|
|
276
|
+
android: async () => {
|
|
277
|
+
if (RNIapAmazonModule) {
|
|
278
|
+
return await RNIapAmazonModule.getAvailableItems();
|
|
279
|
+
}
|
|
280
|
+
const products = await RNIapModule.getPurchaseHistoryByType(ANDROID_ITEM_TYPE_IAP);
|
|
281
|
+
const subscriptions = await RNIapModule.getPurchaseHistoryByType(ANDROID_ITEM_TYPE_SUBSCRIPTION);
|
|
282
|
+
return products.concat(subscriptions);
|
|
283
|
+
}
|
|
284
|
+
}) || (() => Promise.resolve([])))();
|
|
291
285
|
|
|
292
286
|
/**
|
|
293
287
|
* Get all purchases made by the user (either non-consumable, or haven't been consumed yet)
|
|
@@ -371,30 +365,27 @@ Note that this is only for backaward compatiblity. It won't publish to transacti
|
|
|
371
365
|
@See https://developer.apple.com/documentation/storekit/transaction/3851204-currententitlements for details
|
|
372
366
|
*
|
|
373
367
|
*/
|
|
374
|
-
export const getAvailablePurchases =
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
} else {
|
|
385
|
-
return RNIapIos.getAvailableItems(automaticallyFinishRestoredTransactions);
|
|
386
|
-
}
|
|
387
|
-
},
|
|
388
|
-
android: async () => {
|
|
389
|
-
if (RNIapAmazonModule) {
|
|
390
|
-
return await RNIapAmazonModule.getAvailableItems();
|
|
391
|
-
}
|
|
392
|
-
const products = await RNIapModule.getAvailableItemsByType(ANDROID_ITEM_TYPE_IAP);
|
|
393
|
-
const subscriptions = await RNIapModule.getAvailableItemsByType(ANDROID_ITEM_TYPE_SUBSCRIPTION);
|
|
394
|
-
return products.concat(subscriptions);
|
|
368
|
+
export const getAvailablePurchases = ({
|
|
369
|
+
alsoPublishToEventListener = false,
|
|
370
|
+
automaticallyFinishRestoredTransactions = false,
|
|
371
|
+
onlyIncludeActiveItems = true
|
|
372
|
+
} = {}) => (Platform.select({
|
|
373
|
+
ios: async () => {
|
|
374
|
+
if (isIosStorekit2()) {
|
|
375
|
+
return Promise.resolve((await RNIapIosSk2.getAvailableItems(alsoPublishToEventListener, onlyIncludeActiveItems)).map(transactionSk2ToPurchaseMap));
|
|
376
|
+
} else {
|
|
377
|
+
return RNIapIos.getAvailableItems(automaticallyFinishRestoredTransactions);
|
|
395
378
|
}
|
|
396
|
-
}
|
|
397
|
-
|
|
379
|
+
},
|
|
380
|
+
android: async () => {
|
|
381
|
+
if (RNIapAmazonModule) {
|
|
382
|
+
return await RNIapAmazonModule.getAvailableItems();
|
|
383
|
+
}
|
|
384
|
+
const products = await RNIapModule.getAvailableItemsByType(ANDROID_ITEM_TYPE_IAP);
|
|
385
|
+
const subscriptions = await RNIapModule.getAvailableItemsByType(ANDROID_ITEM_TYPE_SUBSCRIPTION);
|
|
386
|
+
return products.concat(subscriptions);
|
|
387
|
+
}
|
|
388
|
+
}) || (() => Promise.resolve([])))();
|
|
398
389
|
|
|
399
390
|
/**
|
|
400
391
|
* Request a purchase for product. This will be received in `PurchaseUpdatedListener`.
|
|
@@ -662,12 +653,11 @@ const App = () => {
|
|
|
662
653
|
```
|
|
663
654
|
@returns {Promise<PurchaseResult | boolean>} Android: PurchaseResult, iOS: true
|
|
664
655
|
*/
|
|
665
|
-
export const finishTransaction =
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
} = _ref3;
|
|
656
|
+
export const finishTransaction = ({
|
|
657
|
+
purchase,
|
|
658
|
+
isConsumable,
|
|
659
|
+
developerPayloadAndroid
|
|
660
|
+
}) => {
|
|
671
661
|
return (Platform.select({
|
|
672
662
|
ios: async () => {
|
|
673
663
|
const transactionId = purchase.transactionId;
|
|
@@ -696,11 +686,10 @@ export const finishTransaction = _ref3 => {
|
|
|
696
686
|
* Deeplinks to native interface that allows users to manage their subscriptions
|
|
697
687
|
*
|
|
698
688
|
*/
|
|
699
|
-
export const deepLinkToSubscriptions =
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
} = _ref4;
|
|
689
|
+
export const deepLinkToSubscriptions = ({
|
|
690
|
+
sku,
|
|
691
|
+
isAmazonDevice = true
|
|
692
|
+
}) => {
|
|
704
693
|
return (Platform.select({
|
|
705
694
|
ios: async () => {
|
|
706
695
|
IapIos.deepLinkToSubscriptionsIos();
|