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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-iap",
|
|
3
|
-
"version": "12.
|
|
3
|
+
"version": "12.12.0",
|
|
4
4
|
"description": "React Native In App Purchase Module.",
|
|
5
5
|
"repository": "https://github.com/dooboolab-community/react-native-iap",
|
|
6
|
-
"author": "
|
|
6
|
+
"author": "hyochan <dooboolab@gmail.com> (https://github.com/hyochan)",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"bugs": {
|
|
9
9
|
"url": "https://github.com/dooboolab-community/react-native-iap/issues"
|
package/src/eventEmitter.ts
CHANGED
|
@@ -2,7 +2,13 @@ import {EmitterSubscription, NativeEventEmitter} from 'react-native';
|
|
|
2
2
|
|
|
3
3
|
import {TransactionEvent, transactionSk2ToPurchaseMap} from './types/appleSk2';
|
|
4
4
|
import {isIosStorekit2} from './iap';
|
|
5
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
getAndroidModule,
|
|
7
|
+
getIosModule,
|
|
8
|
+
getNativeModule,
|
|
9
|
+
isAndroid,
|
|
10
|
+
isIos,
|
|
11
|
+
} from './internal';
|
|
6
12
|
import type {PurchaseError} from './purchaseError';
|
|
7
13
|
import type {Purchase} from './types';
|
|
8
14
|
|
|
@@ -52,6 +58,10 @@ export const purchaseUpdatedListener = (
|
|
|
52
58
|
proxyListener,
|
|
53
59
|
);
|
|
54
60
|
|
|
61
|
+
if (isAndroid) {
|
|
62
|
+
getAndroidModule().startListening();
|
|
63
|
+
}
|
|
64
|
+
|
|
55
65
|
return emitterSubscription;
|
|
56
66
|
};
|
|
57
67
|
|
|
@@ -35,7 +35,10 @@ export const fillProductsWithAdditionalData = async <T extends ProductCommon>(
|
|
|
35
35
|
// Add currency to items
|
|
36
36
|
items.forEach((item) => {
|
|
37
37
|
if (currency) {
|
|
38
|
+
const {originalPrice} = item;
|
|
38
39
|
item.currency = currency;
|
|
40
|
+
item.price = originalPrice ?? '0.0';
|
|
41
|
+
item.localizedPrice = originalPrice ?? '0.0';
|
|
39
42
|
}
|
|
40
43
|
});
|
|
41
44
|
}
|
package/src/types/appleSk2.ts
CHANGED
|
@@ -7,7 +7,7 @@ import type {
|
|
|
7
7
|
SubscriptionIosPeriod,
|
|
8
8
|
} from '.';
|
|
9
9
|
import type * as Apple from './apple';
|
|
10
|
-
import {SubscriptionPlatform} from '
|
|
10
|
+
import {SubscriptionPlatform} from './';
|
|
11
11
|
|
|
12
12
|
export type SubscriptionPeriod = {
|
|
13
13
|
unit: 'day' | 'week' | 'month' | 'year';
|
|
@@ -36,6 +36,7 @@ export type SubscriptionInfo = {
|
|
|
36
36
|
export type RefundRequestStatus = 'success' | 'userCancelled';
|
|
37
37
|
|
|
38
38
|
export type ProductSk2 = {
|
|
39
|
+
currency: string;
|
|
39
40
|
description: string;
|
|
40
41
|
displayName: string;
|
|
41
42
|
displayPrice: string;
|
|
@@ -51,6 +52,7 @@ export const productSk2Map = ({
|
|
|
51
52
|
description,
|
|
52
53
|
displayName,
|
|
53
54
|
price,
|
|
55
|
+
currency,
|
|
54
56
|
displayPrice,
|
|
55
57
|
}: ProductSk2): ProductIOS => {
|
|
56
58
|
const prod: ProductIOS = {
|
|
@@ -60,7 +62,7 @@ export const productSk2Map = ({
|
|
|
60
62
|
type: 'iap',
|
|
61
63
|
price: String(price),
|
|
62
64
|
localizedPrice: displayPrice,
|
|
63
|
-
currency
|
|
65
|
+
currency,
|
|
64
66
|
};
|
|
65
67
|
return prod;
|
|
66
68
|
};
|
|
@@ -70,6 +72,7 @@ export const subscriptionSk2Map = ({
|
|
|
70
72
|
description,
|
|
71
73
|
displayName,
|
|
72
74
|
price,
|
|
75
|
+
currency,
|
|
73
76
|
displayPrice,
|
|
74
77
|
subscription,
|
|
75
78
|
}: ProductSk2): SubscriptionIOS => {
|
|
@@ -81,7 +84,7 @@ export const subscriptionSk2Map = ({
|
|
|
81
84
|
type: 'subs',
|
|
82
85
|
price: String(price),
|
|
83
86
|
localizedPrice: displayPrice,
|
|
84
|
-
currency
|
|
87
|
+
currency,
|
|
85
88
|
subscriptionPeriodNumberIOS: `${subscription?.subscriptionPeriod?.value}`,
|
|
86
89
|
subscriptionPeriodUnitIOS:
|
|
87
90
|
subscription?.subscriptionPeriod?.unit.toUpperCase() as SubscriptionIosPeriod,
|
|
@@ -134,8 +137,22 @@ export type SubscriptionStatus =
|
|
|
134
137
|
| 'revoked'
|
|
135
138
|
| 'subscribed';
|
|
136
139
|
|
|
140
|
+
/**
|
|
141
|
+
* Renewal info for whole subscription group.
|
|
142
|
+
* see: https://developer.apple.com/documentation/storekit/product/subscriptioninfo/status/3822294-renewalinfo
|
|
143
|
+
* WARN:
|
|
144
|
+
* - autoRenewPreference is serialised as autoRenewProductId in jsonRepresentation
|
|
145
|
+
* - renewalDate is available in jsonRepresentation (will change with Xcode 15 https://developer.apple.com/forums/thread/738833)
|
|
146
|
+
*/
|
|
147
|
+
export type RenewalInfo = {
|
|
148
|
+
jsonRepresentation?: string;
|
|
149
|
+
willAutoRenew: boolean;
|
|
150
|
+
autoRenewPreference?: string;
|
|
151
|
+
};
|
|
152
|
+
|
|
137
153
|
export type ProductStatus = {
|
|
138
154
|
state: SubscriptionStatus;
|
|
155
|
+
renewalInfo?: RenewalInfo;
|
|
139
156
|
};
|
|
140
157
|
|
|
141
158
|
export const transactionSk2ToPurchaseMap = ({
|
|
@@ -147,7 +164,18 @@ export const transactionSk2ToPurchaseMap = ({
|
|
|
147
164
|
originalID,
|
|
148
165
|
verificationResult,
|
|
149
166
|
appAccountToken,
|
|
167
|
+
jsonRepresentation,
|
|
150
168
|
}: TransactionSk2): Purchase => {
|
|
169
|
+
let transactionReasonIOS;
|
|
170
|
+
try {
|
|
171
|
+
const transactionData = JSON.parse(jsonRepresentation);
|
|
172
|
+
transactionReasonIOS = transactionData.transactionReason;
|
|
173
|
+
} catch (e) {
|
|
174
|
+
console.log(
|
|
175
|
+
'AppleSK2.ts react-native-iap: Error parsing jsonRepresentation',
|
|
176
|
+
e,
|
|
177
|
+
);
|
|
178
|
+
}
|
|
151
179
|
const purchase: Purchase = {
|
|
152
180
|
productId: productID,
|
|
153
181
|
transactionId: String(id),
|
|
@@ -159,6 +187,7 @@ export const transactionSk2ToPurchaseMap = ({
|
|
|
159
187
|
originalTransactionIdentifierIOS: originalID,
|
|
160
188
|
verificationResultIOS: verificationResult ?? '',
|
|
161
189
|
appAccountToken: appAccountToken ?? '',
|
|
190
|
+
transactionReasonIOS: transactionReasonIOS ?? '',
|
|
162
191
|
};
|
|
163
192
|
return purchase;
|
|
164
193
|
};
|
package/src/types/index.ts
CHANGED
|
@@ -46,6 +46,11 @@ export enum ProductType {
|
|
|
46
46
|
iap = 'iap',
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
+
export enum TransactionReason {
|
|
50
|
+
PURCHASE = 'PURCHASE',
|
|
51
|
+
RENEWAL = 'RENEWAL',
|
|
52
|
+
}
|
|
53
|
+
|
|
49
54
|
export interface ProductCommon {
|
|
50
55
|
type: 'subs' | 'sub' | 'inapp' | 'iap';
|
|
51
56
|
productId: string; //iOS
|
|
@@ -55,6 +60,7 @@ export interface ProductCommon {
|
|
|
55
60
|
price: string;
|
|
56
61
|
currency: string;
|
|
57
62
|
localizedPrice: string;
|
|
63
|
+
originalPrice?: string;
|
|
58
64
|
countryCode?: string;
|
|
59
65
|
}
|
|
60
66
|
|
|
@@ -101,6 +107,7 @@ export interface SubscriptionPurchase extends ProductPurchase {
|
|
|
101
107
|
originalTransactionDateIOS?: number;
|
|
102
108
|
originalTransactionIdentifierIOS?: string;
|
|
103
109
|
verificationResultIOS?: string;
|
|
110
|
+
transactionReasonIOS?: TransactionReason | string;
|
|
104
111
|
}
|
|
105
112
|
|
|
106
113
|
export type Purchase = ProductPurchase | SubscriptionPurchase;
|