react-native-iap 14.3.5-rc.1 → 14.3.5

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.
Files changed (79) hide show
  1. package/NitroIap.podspec +1 -1
  2. package/README.md +1 -1
  3. package/android/CMakeLists.txt +4 -0
  4. package/android/build.gradle +2 -2
  5. package/android/src/main/cpp/cpp-adapter.cpp +8 -0
  6. package/android/src/main/java/com/margelo/nitro/iap/HybridRnIap.kt +93 -51
  7. package/ios/HybridRnIap.swift +38 -30
  8. package/lib/module/hooks/useIAP.js +3 -5
  9. package/lib/module/hooks/useIAP.js.map +1 -1
  10. package/lib/module/index.js +54 -55
  11. package/lib/module/index.js.map +1 -1
  12. package/lib/module/types.js +1 -1
  13. package/lib/module/utils/type-bridge.js.map +1 -1
  14. package/lib/typescript/src/hooks/useIAP.d.ts +4 -4
  15. package/lib/typescript/src/hooks/useIAP.d.ts.map +1 -1
  16. package/lib/typescript/src/index.d.ts +8 -7
  17. package/lib/typescript/src/index.d.ts.map +1 -1
  18. package/lib/typescript/src/specs/RnIap.nitro.d.ts +2 -1
  19. package/lib/typescript/src/specs/RnIap.nitro.d.ts.map +1 -1
  20. package/lib/typescript/src/types.d.ts +141 -146
  21. package/lib/typescript/src/types.d.ts.map +1 -1
  22. package/lib/typescript/src/utils/type-bridge.d.ts.map +1 -1
  23. package/nitrogen/generated/android/NitroIap+autolinking.cmake +9 -4
  24. package/nitrogen/generated/android/c++/JHybridRnIapSpec.cpp +32 -5
  25. package/nitrogen/generated/android/c++/JHybridRnIapSpec.hpp +1 -1
  26. package/nitrogen/generated/android/c++/JIapPlatform.hpp +59 -0
  27. package/nitrogen/generated/android/c++/JPurchase.cpp +26 -0
  28. package/nitrogen/generated/android/c++/JPurchase.hpp +80 -0
  29. package/nitrogen/generated/android/c++/JPurchaseAndroid.hpp +140 -0
  30. package/nitrogen/generated/android/c++/JPurchaseIOS.hpp +194 -0
  31. package/nitrogen/generated/android/c++/JPurchaseOfferIOS.hpp +61 -0
  32. package/nitrogen/generated/android/c++/JPurchaseState.hpp +71 -0
  33. package/nitrogen/generated/android/c++/JRequestPurchaseResult.hpp +89 -0
  34. package/nitrogen/generated/android/c++/JVariant_PurchaseAndroid_PurchaseIOS.cpp +26 -0
  35. package/nitrogen/generated/android/c++/JVariant_PurchaseAndroid_PurchaseIOS.hpp +80 -0
  36. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/HybridRnIapSpec.kt +1 -1
  37. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/IapPlatform.kt +21 -0
  38. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Purchase.kt +42 -0
  39. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseAndroid.kt +77 -0
  40. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseIOS.kt +116 -0
  41. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseOfferIOS.kt +35 -0
  42. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseState.kt +25 -0
  43. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/RequestPurchaseResult.kt +32 -0
  44. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_PurchaseAndroid_PurchaseIOS.kt +42 -0
  45. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.cpp +13 -5
  46. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.hpp +186 -25
  47. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Umbrella.hpp +18 -0
  48. package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.hpp +20 -2
  49. package/nitrogen/generated/ios/swift/Func_void_RequestPurchaseResult.swift +47 -0
  50. package/nitrogen/generated/ios/swift/HybridRnIapSpec.swift +1 -1
  51. package/nitrogen/generated/ios/swift/HybridRnIapSpec_cxx.swift +7 -7
  52. package/nitrogen/generated/ios/swift/IapPlatform.swift +40 -0
  53. package/nitrogen/generated/ios/swift/Purchase.swift +18 -0
  54. package/nitrogen/generated/ios/swift/PurchaseAndroid.swift +399 -0
  55. package/nitrogen/generated/ios/swift/PurchaseIOS.swift +768 -0
  56. package/nitrogen/generated/ios/swift/PurchaseOfferIOS.swift +57 -0
  57. package/nitrogen/generated/ios/swift/PurchaseState.swift +56 -0
  58. package/nitrogen/generated/ios/swift/RequestPurchaseResult.swift +148 -0
  59. package/nitrogen/generated/ios/swift/Variant_PurchaseAndroid_PurchaseIOS.swift +18 -0
  60. package/nitrogen/generated/shared/c++/HybridRnIapSpec.hpp +4 -1
  61. package/nitrogen/generated/shared/c++/IapPlatform.hpp +76 -0
  62. package/nitrogen/generated/shared/c++/PurchaseAndroid.hpp +138 -0
  63. package/nitrogen/generated/shared/c++/PurchaseIOS.hpp +193 -0
  64. package/nitrogen/generated/shared/c++/PurchaseOfferIOS.hpp +75 -0
  65. package/nitrogen/generated/shared/c++/PurchaseState.hpp +92 -0
  66. package/nitrogen/generated/shared/c++/RequestPurchaseResult.hpp +78 -0
  67. package/package.json +5 -4
  68. package/plugin/build/withIAP.js +1 -1
  69. package/plugin/src/withIAP.ts +1 -1
  70. package/plugin/tsconfig.tsbuildinfo +1 -1
  71. package/src/hooks/useIAP.ts +13 -11
  72. package/src/index.ts +73 -77
  73. package/src/specs/RnIap.nitro.ts +4 -1
  74. package/src/types.ts +168 -178
  75. package/src/utils/type-bridge.ts +3 -1
  76. package/lib/index.d.ts +0 -8
  77. package/lib/index.js +0 -36
  78. package/lib/specs/RnIap.nitro.d.ts +0 -7
  79. package/lib/specs/RnIap.nitro.js +0 -1
@@ -0,0 +1,399 @@
1
+ ///
2
+ /// PurchaseAndroid.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ import NitroModules
9
+
10
+ /**
11
+ * Represents an instance of `PurchaseAndroid`, backed by a C++ struct.
12
+ */
13
+ public typealias PurchaseAndroid = margelo.nitro.iap.PurchaseAndroid
14
+
15
+ public extension PurchaseAndroid {
16
+ private typealias bridge = margelo.nitro.iap.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `PurchaseAndroid`.
20
+ */
21
+ init(autoRenewingAndroid: Bool?, dataAndroid: String?, developerPayloadAndroid: String?, id: String, ids: [String]?, isAcknowledgedAndroid: Bool?, isAutoRenewing: Bool, obfuscatedAccountIdAndroid: String?, obfuscatedProfileIdAndroid: String?, packageNameAndroid: String?, platform: IapPlatform, productId: String, purchaseState: PurchaseState, purchaseToken: String?, quantity: Double, signatureAndroid: String?, transactionDate: Double) {
22
+ self.init({ () -> bridge.std__optional_bool_ in
23
+ if let __unwrappedValue = autoRenewingAndroid {
24
+ return bridge.create_std__optional_bool_(__unwrappedValue)
25
+ } else {
26
+ return .init()
27
+ }
28
+ }(), { () -> bridge.std__optional_std__string_ in
29
+ if let __unwrappedValue = dataAndroid {
30
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
31
+ } else {
32
+ return .init()
33
+ }
34
+ }(), { () -> bridge.std__optional_std__string_ in
35
+ if let __unwrappedValue = developerPayloadAndroid {
36
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
37
+ } else {
38
+ return .init()
39
+ }
40
+ }(), std.string(id), { () -> bridge.std__optional_std__vector_std__string__ in
41
+ if let __unwrappedValue = ids {
42
+ return bridge.create_std__optional_std__vector_std__string__({ () -> bridge.std__vector_std__string_ in
43
+ var __vector = bridge.create_std__vector_std__string_(__unwrappedValue.count)
44
+ for __item in __unwrappedValue {
45
+ __vector.push_back(std.string(__item))
46
+ }
47
+ return __vector
48
+ }())
49
+ } else {
50
+ return .init()
51
+ }
52
+ }(), { () -> bridge.std__optional_bool_ in
53
+ if let __unwrappedValue = isAcknowledgedAndroid {
54
+ return bridge.create_std__optional_bool_(__unwrappedValue)
55
+ } else {
56
+ return .init()
57
+ }
58
+ }(), isAutoRenewing, { () -> bridge.std__optional_std__string_ in
59
+ if let __unwrappedValue = obfuscatedAccountIdAndroid {
60
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
61
+ } else {
62
+ return .init()
63
+ }
64
+ }(), { () -> bridge.std__optional_std__string_ in
65
+ if let __unwrappedValue = obfuscatedProfileIdAndroid {
66
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
67
+ } else {
68
+ return .init()
69
+ }
70
+ }(), { () -> bridge.std__optional_std__string_ in
71
+ if let __unwrappedValue = packageNameAndroid {
72
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
73
+ } else {
74
+ return .init()
75
+ }
76
+ }(), platform, std.string(productId), purchaseState, { () -> bridge.std__optional_std__string_ in
77
+ if let __unwrappedValue = purchaseToken {
78
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
79
+ } else {
80
+ return .init()
81
+ }
82
+ }(), quantity, { () -> bridge.std__optional_std__string_ in
83
+ if let __unwrappedValue = signatureAndroid {
84
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
85
+ } else {
86
+ return .init()
87
+ }
88
+ }(), transactionDate)
89
+ }
90
+
91
+ var autoRenewingAndroid: Bool? {
92
+ @inline(__always)
93
+ get {
94
+ return self.__autoRenewingAndroid.value
95
+ }
96
+ @inline(__always)
97
+ set {
98
+ self.__autoRenewingAndroid = { () -> bridge.std__optional_bool_ in
99
+ if let __unwrappedValue = newValue {
100
+ return bridge.create_std__optional_bool_(__unwrappedValue)
101
+ } else {
102
+ return .init()
103
+ }
104
+ }()
105
+ }
106
+ }
107
+
108
+ var dataAndroid: String? {
109
+ @inline(__always)
110
+ get {
111
+ return { () -> String? in
112
+ if bridge.has_value_std__optional_std__string_(self.__dataAndroid) {
113
+ let __unwrapped = bridge.get_std__optional_std__string_(self.__dataAndroid)
114
+ return String(__unwrapped)
115
+ } else {
116
+ return nil
117
+ }
118
+ }()
119
+ }
120
+ @inline(__always)
121
+ set {
122
+ self.__dataAndroid = { () -> bridge.std__optional_std__string_ in
123
+ if let __unwrappedValue = newValue {
124
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
125
+ } else {
126
+ return .init()
127
+ }
128
+ }()
129
+ }
130
+ }
131
+
132
+ var developerPayloadAndroid: String? {
133
+ @inline(__always)
134
+ get {
135
+ return { () -> String? in
136
+ if bridge.has_value_std__optional_std__string_(self.__developerPayloadAndroid) {
137
+ let __unwrapped = bridge.get_std__optional_std__string_(self.__developerPayloadAndroid)
138
+ return String(__unwrapped)
139
+ } else {
140
+ return nil
141
+ }
142
+ }()
143
+ }
144
+ @inline(__always)
145
+ set {
146
+ self.__developerPayloadAndroid = { () -> bridge.std__optional_std__string_ in
147
+ if let __unwrappedValue = newValue {
148
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
149
+ } else {
150
+ return .init()
151
+ }
152
+ }()
153
+ }
154
+ }
155
+
156
+ var id: String {
157
+ @inline(__always)
158
+ get {
159
+ return String(self.__id)
160
+ }
161
+ @inline(__always)
162
+ set {
163
+ self.__id = std.string(newValue)
164
+ }
165
+ }
166
+
167
+ var ids: [String]? {
168
+ @inline(__always)
169
+ get {
170
+ return { () -> [String]? in
171
+ if bridge.has_value_std__optional_std__vector_std__string__(self.__ids) {
172
+ let __unwrapped = bridge.get_std__optional_std__vector_std__string__(self.__ids)
173
+ return __unwrapped.map({ __item in String(__item) })
174
+ } else {
175
+ return nil
176
+ }
177
+ }()
178
+ }
179
+ @inline(__always)
180
+ set {
181
+ self.__ids = { () -> bridge.std__optional_std__vector_std__string__ in
182
+ if let __unwrappedValue = newValue {
183
+ return bridge.create_std__optional_std__vector_std__string__({ () -> bridge.std__vector_std__string_ in
184
+ var __vector = bridge.create_std__vector_std__string_(__unwrappedValue.count)
185
+ for __item in __unwrappedValue {
186
+ __vector.push_back(std.string(__item))
187
+ }
188
+ return __vector
189
+ }())
190
+ } else {
191
+ return .init()
192
+ }
193
+ }()
194
+ }
195
+ }
196
+
197
+ var isAcknowledgedAndroid: Bool? {
198
+ @inline(__always)
199
+ get {
200
+ return self.__isAcknowledgedAndroid.value
201
+ }
202
+ @inline(__always)
203
+ set {
204
+ self.__isAcknowledgedAndroid = { () -> bridge.std__optional_bool_ in
205
+ if let __unwrappedValue = newValue {
206
+ return bridge.create_std__optional_bool_(__unwrappedValue)
207
+ } else {
208
+ return .init()
209
+ }
210
+ }()
211
+ }
212
+ }
213
+
214
+ var isAutoRenewing: Bool {
215
+ @inline(__always)
216
+ get {
217
+ return self.__isAutoRenewing
218
+ }
219
+ @inline(__always)
220
+ set {
221
+ self.__isAutoRenewing = newValue
222
+ }
223
+ }
224
+
225
+ var obfuscatedAccountIdAndroid: String? {
226
+ @inline(__always)
227
+ get {
228
+ return { () -> String? in
229
+ if bridge.has_value_std__optional_std__string_(self.__obfuscatedAccountIdAndroid) {
230
+ let __unwrapped = bridge.get_std__optional_std__string_(self.__obfuscatedAccountIdAndroid)
231
+ return String(__unwrapped)
232
+ } else {
233
+ return nil
234
+ }
235
+ }()
236
+ }
237
+ @inline(__always)
238
+ set {
239
+ self.__obfuscatedAccountIdAndroid = { () -> bridge.std__optional_std__string_ in
240
+ if let __unwrappedValue = newValue {
241
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
242
+ } else {
243
+ return .init()
244
+ }
245
+ }()
246
+ }
247
+ }
248
+
249
+ var obfuscatedProfileIdAndroid: String? {
250
+ @inline(__always)
251
+ get {
252
+ return { () -> String? in
253
+ if bridge.has_value_std__optional_std__string_(self.__obfuscatedProfileIdAndroid) {
254
+ let __unwrapped = bridge.get_std__optional_std__string_(self.__obfuscatedProfileIdAndroid)
255
+ return String(__unwrapped)
256
+ } else {
257
+ return nil
258
+ }
259
+ }()
260
+ }
261
+ @inline(__always)
262
+ set {
263
+ self.__obfuscatedProfileIdAndroid = { () -> bridge.std__optional_std__string_ in
264
+ if let __unwrappedValue = newValue {
265
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
266
+ } else {
267
+ return .init()
268
+ }
269
+ }()
270
+ }
271
+ }
272
+
273
+ var packageNameAndroid: String? {
274
+ @inline(__always)
275
+ get {
276
+ return { () -> String? in
277
+ if bridge.has_value_std__optional_std__string_(self.__packageNameAndroid) {
278
+ let __unwrapped = bridge.get_std__optional_std__string_(self.__packageNameAndroid)
279
+ return String(__unwrapped)
280
+ } else {
281
+ return nil
282
+ }
283
+ }()
284
+ }
285
+ @inline(__always)
286
+ set {
287
+ self.__packageNameAndroid = { () -> bridge.std__optional_std__string_ in
288
+ if let __unwrappedValue = newValue {
289
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
290
+ } else {
291
+ return .init()
292
+ }
293
+ }()
294
+ }
295
+ }
296
+
297
+ var platform: IapPlatform {
298
+ @inline(__always)
299
+ get {
300
+ return self.__platform
301
+ }
302
+ @inline(__always)
303
+ set {
304
+ self.__platform = newValue
305
+ }
306
+ }
307
+
308
+ var productId: String {
309
+ @inline(__always)
310
+ get {
311
+ return String(self.__productId)
312
+ }
313
+ @inline(__always)
314
+ set {
315
+ self.__productId = std.string(newValue)
316
+ }
317
+ }
318
+
319
+ var purchaseState: PurchaseState {
320
+ @inline(__always)
321
+ get {
322
+ return self.__purchaseState
323
+ }
324
+ @inline(__always)
325
+ set {
326
+ self.__purchaseState = newValue
327
+ }
328
+ }
329
+
330
+ var purchaseToken: String? {
331
+ @inline(__always)
332
+ get {
333
+ return { () -> String? in
334
+ if bridge.has_value_std__optional_std__string_(self.__purchaseToken) {
335
+ let __unwrapped = bridge.get_std__optional_std__string_(self.__purchaseToken)
336
+ return String(__unwrapped)
337
+ } else {
338
+ return nil
339
+ }
340
+ }()
341
+ }
342
+ @inline(__always)
343
+ set {
344
+ self.__purchaseToken = { () -> bridge.std__optional_std__string_ in
345
+ if let __unwrappedValue = newValue {
346
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
347
+ } else {
348
+ return .init()
349
+ }
350
+ }()
351
+ }
352
+ }
353
+
354
+ var quantity: Double {
355
+ @inline(__always)
356
+ get {
357
+ return self.__quantity
358
+ }
359
+ @inline(__always)
360
+ set {
361
+ self.__quantity = newValue
362
+ }
363
+ }
364
+
365
+ var signatureAndroid: String? {
366
+ @inline(__always)
367
+ get {
368
+ return { () -> String? in
369
+ if bridge.has_value_std__optional_std__string_(self.__signatureAndroid) {
370
+ let __unwrapped = bridge.get_std__optional_std__string_(self.__signatureAndroid)
371
+ return String(__unwrapped)
372
+ } else {
373
+ return nil
374
+ }
375
+ }()
376
+ }
377
+ @inline(__always)
378
+ set {
379
+ self.__signatureAndroid = { () -> bridge.std__optional_std__string_ in
380
+ if let __unwrappedValue = newValue {
381
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
382
+ } else {
383
+ return .init()
384
+ }
385
+ }()
386
+ }
387
+ }
388
+
389
+ var transactionDate: Double {
390
+ @inline(__always)
391
+ get {
392
+ return self.__transactionDate
393
+ }
394
+ @inline(__always)
395
+ set {
396
+ self.__transactionDate = newValue
397
+ }
398
+ }
399
+ }