react-native-iap 15.1.0 → 15.2.1

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 (96) hide show
  1. package/android/src/main/java/com/margelo/nitro/iap/HybridRnIap.kt +171 -114
  2. package/android/src/main/java/com/margelo/nitro/iap/ProductQueryHelpers.kt +42 -0
  3. package/android/src/test/java/com/margelo/nitro/iap/ProductQueryHelpersTest.kt +140 -0
  4. package/ios/HybridRnIap.swift +72 -1
  5. package/lib/module/hooks/useIAP.js +11 -1
  6. package/lib/module/hooks/useIAP.js.map +1 -1
  7. package/lib/module/hooks/useWebhookEvents.js +113 -0
  8. package/lib/module/hooks/useWebhookEvents.js.map +1 -0
  9. package/lib/module/index.js +405 -131
  10. package/lib/module/index.js.map +1 -1
  11. package/lib/module/kit-api.js +161 -0
  12. package/lib/module/kit-api.js.map +1 -0
  13. package/lib/module/types.js +16 -0
  14. package/lib/module/types.js.map +1 -1
  15. package/lib/module/utils/error.js.map +1 -1
  16. package/lib/module/utils/errorMapping.js +6 -0
  17. package/lib/module/utils/errorMapping.js.map +1 -1
  18. package/lib/module/webhook-client.js +164 -0
  19. package/lib/module/webhook-client.js.map +1 -0
  20. package/lib/typescript/plugin/src/withIAP.d.ts +1 -1
  21. package/lib/typescript/src/hooks/useIAP.d.ts +172 -2
  22. package/lib/typescript/src/hooks/useIAP.d.ts.map +1 -1
  23. package/lib/typescript/src/hooks/useWebhookEvents.d.ts +55 -0
  24. package/lib/typescript/src/hooks/useWebhookEvents.d.ts.map +1 -0
  25. package/lib/typescript/src/index.d.ts +283 -129
  26. package/lib/typescript/src/index.d.ts.map +1 -1
  27. package/lib/typescript/src/kit-api.d.ts +54 -0
  28. package/lib/typescript/src/kit-api.d.ts.map +1 -0
  29. package/lib/typescript/src/specs/RnIap.nitro.d.ts +24 -0
  30. package/lib/typescript/src/specs/RnIap.nitro.d.ts.map +1 -1
  31. package/lib/typescript/src/types.d.ts +320 -75
  32. package/lib/typescript/src/types.d.ts.map +1 -1
  33. package/lib/typescript/src/utils/error.d.ts +3 -0
  34. package/lib/typescript/src/utils/error.d.ts.map +1 -1
  35. package/lib/typescript/src/utils/errorMapping.d.ts +6 -0
  36. package/lib/typescript/src/utils/errorMapping.d.ts.map +1 -1
  37. package/lib/typescript/src/webhook-client.d.ts +82 -0
  38. package/lib/typescript/src/webhook-client.d.ts.map +1 -0
  39. package/nitrogen/generated/android/NitroIap+autolinking.cmake +3 -0
  40. package/nitrogen/generated/android/c++/JAdvancedCommerceInfoIOS.hpp +118 -0
  41. package/nitrogen/generated/android/c++/JAdvancedCommerceItemDetailsIOS.hpp +62 -0
  42. package/nitrogen/generated/android/c++/JAdvancedCommerceItemIOS.hpp +78 -0
  43. package/nitrogen/generated/android/c++/JAdvancedCommerceRefundIOS.hpp +62 -0
  44. package/nitrogen/generated/android/c++/JHybridRnIapSpec.cpp +52 -0
  45. package/nitrogen/generated/android/c++/JHybridRnIapSpec.hpp +3 -0
  46. package/nitrogen/generated/android/c++/JPurchase.hpp +11 -0
  47. package/nitrogen/generated/android/c++/JPurchaseIOS.hpp +16 -1
  48. package/nitrogen/generated/android/c++/JRequestPurchaseResult.hpp +11 -0
  49. package/nitrogen/generated/android/c++/JVariant_NullType_AdvancedCommerceInfoIOS.cpp +26 -0
  50. package/nitrogen/generated/android/c++/JVariant_NullType_AdvancedCommerceInfoIOS.hpp +84 -0
  51. package/nitrogen/generated/android/c++/JVariant_NullType_AdvancedCommerceItemDetailsIOS.cpp +26 -0
  52. package/nitrogen/generated/android/c++/JVariant_NullType_AdvancedCommerceItemDetailsIOS.hpp +74 -0
  53. package/nitrogen/generated/android/c++/JVariant_NullType_Array_AdvancedCommerceRefundIOS_.cpp +35 -0
  54. package/nitrogen/generated/android/c++/JVariant_NullType_Array_AdvancedCommerceRefundIOS_.hpp +84 -0
  55. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceInfoIOS.kt +59 -0
  56. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceItemDetailsIOS.kt +38 -0
  57. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceItemIOS.kt +44 -0
  58. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceRefundIOS.kt +38 -0
  59. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/HybridRnIapSpec.kt +22 -0
  60. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseIOS.kt +5 -2
  61. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_AdvancedCommerceInfoIOS.kt +53 -0
  62. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_AdvancedCommerceItemDetailsIOS.kt +53 -0
  63. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_AdvancedCommerceRefundIOS_.kt +53 -0
  64. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.hpp +166 -0
  65. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Umbrella.hpp +12 -0
  66. package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.hpp +32 -0
  67. package/nitrogen/generated/ios/swift/AdvancedCommerceInfoIOS.swift +294 -0
  68. package/nitrogen/generated/ios/swift/AdvancedCommerceItemDetailsIOS.swift +61 -0
  69. package/nitrogen/generated/ios/swift/AdvancedCommerceItemIOS.swift +141 -0
  70. package/nitrogen/generated/ios/swift/AdvancedCommerceRefundIOS.swift +61 -0
  71. package/nitrogen/generated/ios/swift/HybridRnIapSpec.swift +3 -0
  72. package/nitrogen/generated/ios/swift/HybridRnIapSpec_cxx.swift +57 -0
  73. package/nitrogen/generated/ios/swift/PurchaseIOS.swift +39 -2
  74. package/nitrogen/generated/ios/swift/Variant_NullType_AdvancedCommerceInfoIOS.swift +18 -0
  75. package/nitrogen/generated/ios/swift/Variant_NullType_AdvancedCommerceItemDetailsIOS.swift +18 -0
  76. package/nitrogen/generated/ios/swift/Variant_NullType__AdvancedCommerceRefundIOS_.swift +18 -0
  77. package/nitrogen/generated/shared/c++/AdvancedCommerceInfoIOS.hpp +117 -0
  78. package/nitrogen/generated/shared/c++/AdvancedCommerceItemDetailsIOS.hpp +86 -0
  79. package/nitrogen/generated/shared/c++/AdvancedCommerceItemIOS.hpp +99 -0
  80. package/nitrogen/generated/shared/c++/AdvancedCommerceRefundIOS.hpp +86 -0
  81. package/nitrogen/generated/shared/c++/HybridRnIapSpec.cpp +3 -0
  82. package/nitrogen/generated/shared/c++/HybridRnIapSpec.hpp +3 -0
  83. package/nitrogen/generated/shared/c++/PurchaseIOS.hpp +9 -2
  84. package/openiap-versions.json +3 -3
  85. package/package.json +1 -1
  86. package/plugin/build/withIAP.d.ts +1 -1
  87. package/plugin/src/withIAP.ts +1 -1
  88. package/src/hooks/useIAP.ts +185 -2
  89. package/src/hooks/useWebhookEvents.ts +180 -0
  90. package/src/index.ts +440 -130
  91. package/src/kit-api.ts +225 -0
  92. package/src/specs/RnIap.nitro.ts +31 -0
  93. package/src/types.ts +330 -75
  94. package/src/utils/error.ts +3 -0
  95. package/src/utils/errorMapping.ts +12 -0
  96. package/src/webhook-client.ts +312 -0
@@ -0,0 +1,294 @@
1
+ ///
2
+ /// AdvancedCommerceInfoIOS.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ import NitroModules
9
+
10
+ /**
11
+ * Represents an instance of `AdvancedCommerceInfoIOS`, backed by a C++ struct.
12
+ */
13
+ public typealias AdvancedCommerceInfoIOS = margelo.nitro.iap.AdvancedCommerceInfoIOS
14
+
15
+ public extension AdvancedCommerceInfoIOS {
16
+ private typealias bridge = margelo.nitro.iap.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `AdvancedCommerceInfoIOS`.
20
+ */
21
+ init(description: Variant_NullType_String?, displayName: Variant_NullType_String?, estimatedTax: Variant_NullType_String?, items: [AdvancedCommerceItemIOS], requestReferenceId: Variant_NullType_String?, taxCode: Variant_NullType_String?, taxExclusivePrice: Variant_NullType_String?, taxRate: Variant_NullType_String?) {
22
+ self.init({ () -> bridge.std__optional_std__variant_nitro__NullType__std__string__ in
23
+ if let __unwrappedValue = description {
24
+ return bridge.create_std__optional_std__variant_nitro__NullType__std__string__({ () -> bridge.std__variant_nitro__NullType__std__string_ in
25
+ switch __unwrappedValue {
26
+ case .first(let __value):
27
+ return bridge.create_std__variant_nitro__NullType__std__string_(margelo.nitro.NullType.null)
28
+ case .second(let __value):
29
+ return bridge.create_std__variant_nitro__NullType__std__string_(std.string(__value))
30
+ }
31
+ }().variant)
32
+ } else {
33
+ return .init()
34
+ }
35
+ }(), { () -> bridge.std__optional_std__variant_nitro__NullType__std__string__ in
36
+ if let __unwrappedValue = displayName {
37
+ return bridge.create_std__optional_std__variant_nitro__NullType__std__string__({ () -> bridge.std__variant_nitro__NullType__std__string_ in
38
+ switch __unwrappedValue {
39
+ case .first(let __value):
40
+ return bridge.create_std__variant_nitro__NullType__std__string_(margelo.nitro.NullType.null)
41
+ case .second(let __value):
42
+ return bridge.create_std__variant_nitro__NullType__std__string_(std.string(__value))
43
+ }
44
+ }().variant)
45
+ } else {
46
+ return .init()
47
+ }
48
+ }(), { () -> bridge.std__optional_std__variant_nitro__NullType__std__string__ in
49
+ if let __unwrappedValue = estimatedTax {
50
+ return bridge.create_std__optional_std__variant_nitro__NullType__std__string__({ () -> bridge.std__variant_nitro__NullType__std__string_ in
51
+ switch __unwrappedValue {
52
+ case .first(let __value):
53
+ return bridge.create_std__variant_nitro__NullType__std__string_(margelo.nitro.NullType.null)
54
+ case .second(let __value):
55
+ return bridge.create_std__variant_nitro__NullType__std__string_(std.string(__value))
56
+ }
57
+ }().variant)
58
+ } else {
59
+ return .init()
60
+ }
61
+ }(), { () -> bridge.std__vector_AdvancedCommerceItemIOS_ in
62
+ var __vector = bridge.create_std__vector_AdvancedCommerceItemIOS_(items.count)
63
+ for __item in items {
64
+ __vector.push_back(__item)
65
+ }
66
+ return __vector
67
+ }(), { () -> bridge.std__optional_std__variant_nitro__NullType__std__string__ in
68
+ if let __unwrappedValue = requestReferenceId {
69
+ return bridge.create_std__optional_std__variant_nitro__NullType__std__string__({ () -> bridge.std__variant_nitro__NullType__std__string_ in
70
+ switch __unwrappedValue {
71
+ case .first(let __value):
72
+ return bridge.create_std__variant_nitro__NullType__std__string_(margelo.nitro.NullType.null)
73
+ case .second(let __value):
74
+ return bridge.create_std__variant_nitro__NullType__std__string_(std.string(__value))
75
+ }
76
+ }().variant)
77
+ } else {
78
+ return .init()
79
+ }
80
+ }(), { () -> bridge.std__optional_std__variant_nitro__NullType__std__string__ in
81
+ if let __unwrappedValue = taxCode {
82
+ return bridge.create_std__optional_std__variant_nitro__NullType__std__string__({ () -> bridge.std__variant_nitro__NullType__std__string_ in
83
+ switch __unwrappedValue {
84
+ case .first(let __value):
85
+ return bridge.create_std__variant_nitro__NullType__std__string_(margelo.nitro.NullType.null)
86
+ case .second(let __value):
87
+ return bridge.create_std__variant_nitro__NullType__std__string_(std.string(__value))
88
+ }
89
+ }().variant)
90
+ } else {
91
+ return .init()
92
+ }
93
+ }(), { () -> bridge.std__optional_std__variant_nitro__NullType__std__string__ in
94
+ if let __unwrappedValue = taxExclusivePrice {
95
+ return bridge.create_std__optional_std__variant_nitro__NullType__std__string__({ () -> bridge.std__variant_nitro__NullType__std__string_ in
96
+ switch __unwrappedValue {
97
+ case .first(let __value):
98
+ return bridge.create_std__variant_nitro__NullType__std__string_(margelo.nitro.NullType.null)
99
+ case .second(let __value):
100
+ return bridge.create_std__variant_nitro__NullType__std__string_(std.string(__value))
101
+ }
102
+ }().variant)
103
+ } else {
104
+ return .init()
105
+ }
106
+ }(), { () -> bridge.std__optional_std__variant_nitro__NullType__std__string__ in
107
+ if let __unwrappedValue = taxRate {
108
+ return bridge.create_std__optional_std__variant_nitro__NullType__std__string__({ () -> bridge.std__variant_nitro__NullType__std__string_ in
109
+ switch __unwrappedValue {
110
+ case .first(let __value):
111
+ return bridge.create_std__variant_nitro__NullType__std__string_(margelo.nitro.NullType.null)
112
+ case .second(let __value):
113
+ return bridge.create_std__variant_nitro__NullType__std__string_(std.string(__value))
114
+ }
115
+ }().variant)
116
+ } else {
117
+ return .init()
118
+ }
119
+ }())
120
+ }
121
+
122
+ @inline(__always)
123
+ var description: Variant_NullType_String? {
124
+ return { () -> Variant_NullType_String? in
125
+ if bridge.has_value_std__optional_std__variant_nitro__NullType__std__string__(self.__description) {
126
+ let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__std__string__(self.__description)
127
+ return { () -> Variant_NullType_String in
128
+ let __variant = bridge.std__variant_nitro__NullType__std__string_(__unwrapped)
129
+ switch __variant.index() {
130
+ case 0:
131
+ let __actual = __variant.get_0()
132
+ return .first(NullType.null)
133
+ case 1:
134
+ let __actual = __variant.get_1()
135
+ return .second(String(__actual))
136
+ default:
137
+ fatalError("Variant can never have index \(__variant.index())!")
138
+ }
139
+ }()
140
+ } else {
141
+ return nil
142
+ }
143
+ }()
144
+ }
145
+
146
+ @inline(__always)
147
+ var displayName: Variant_NullType_String? {
148
+ return { () -> Variant_NullType_String? in
149
+ if bridge.has_value_std__optional_std__variant_nitro__NullType__std__string__(self.__displayName) {
150
+ let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__std__string__(self.__displayName)
151
+ return { () -> Variant_NullType_String in
152
+ let __variant = bridge.std__variant_nitro__NullType__std__string_(__unwrapped)
153
+ switch __variant.index() {
154
+ case 0:
155
+ let __actual = __variant.get_0()
156
+ return .first(NullType.null)
157
+ case 1:
158
+ let __actual = __variant.get_1()
159
+ return .second(String(__actual))
160
+ default:
161
+ fatalError("Variant can never have index \(__variant.index())!")
162
+ }
163
+ }()
164
+ } else {
165
+ return nil
166
+ }
167
+ }()
168
+ }
169
+
170
+ @inline(__always)
171
+ var estimatedTax: Variant_NullType_String? {
172
+ return { () -> Variant_NullType_String? in
173
+ if bridge.has_value_std__optional_std__variant_nitro__NullType__std__string__(self.__estimatedTax) {
174
+ let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__std__string__(self.__estimatedTax)
175
+ return { () -> Variant_NullType_String in
176
+ let __variant = bridge.std__variant_nitro__NullType__std__string_(__unwrapped)
177
+ switch __variant.index() {
178
+ case 0:
179
+ let __actual = __variant.get_0()
180
+ return .first(NullType.null)
181
+ case 1:
182
+ let __actual = __variant.get_1()
183
+ return .second(String(__actual))
184
+ default:
185
+ fatalError("Variant can never have index \(__variant.index())!")
186
+ }
187
+ }()
188
+ } else {
189
+ return nil
190
+ }
191
+ }()
192
+ }
193
+
194
+ @inline(__always)
195
+ var items: [AdvancedCommerceItemIOS] {
196
+ return self.__items.map({ __item in __item })
197
+ }
198
+
199
+ @inline(__always)
200
+ var requestReferenceId: Variant_NullType_String? {
201
+ return { () -> Variant_NullType_String? in
202
+ if bridge.has_value_std__optional_std__variant_nitro__NullType__std__string__(self.__requestReferenceId) {
203
+ let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__std__string__(self.__requestReferenceId)
204
+ return { () -> Variant_NullType_String in
205
+ let __variant = bridge.std__variant_nitro__NullType__std__string_(__unwrapped)
206
+ switch __variant.index() {
207
+ case 0:
208
+ let __actual = __variant.get_0()
209
+ return .first(NullType.null)
210
+ case 1:
211
+ let __actual = __variant.get_1()
212
+ return .second(String(__actual))
213
+ default:
214
+ fatalError("Variant can never have index \(__variant.index())!")
215
+ }
216
+ }()
217
+ } else {
218
+ return nil
219
+ }
220
+ }()
221
+ }
222
+
223
+ @inline(__always)
224
+ var taxCode: Variant_NullType_String? {
225
+ return { () -> Variant_NullType_String? in
226
+ if bridge.has_value_std__optional_std__variant_nitro__NullType__std__string__(self.__taxCode) {
227
+ let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__std__string__(self.__taxCode)
228
+ return { () -> Variant_NullType_String in
229
+ let __variant = bridge.std__variant_nitro__NullType__std__string_(__unwrapped)
230
+ switch __variant.index() {
231
+ case 0:
232
+ let __actual = __variant.get_0()
233
+ return .first(NullType.null)
234
+ case 1:
235
+ let __actual = __variant.get_1()
236
+ return .second(String(__actual))
237
+ default:
238
+ fatalError("Variant can never have index \(__variant.index())!")
239
+ }
240
+ }()
241
+ } else {
242
+ return nil
243
+ }
244
+ }()
245
+ }
246
+
247
+ @inline(__always)
248
+ var taxExclusivePrice: Variant_NullType_String? {
249
+ return { () -> Variant_NullType_String? in
250
+ if bridge.has_value_std__optional_std__variant_nitro__NullType__std__string__(self.__taxExclusivePrice) {
251
+ let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__std__string__(self.__taxExclusivePrice)
252
+ return { () -> Variant_NullType_String in
253
+ let __variant = bridge.std__variant_nitro__NullType__std__string_(__unwrapped)
254
+ switch __variant.index() {
255
+ case 0:
256
+ let __actual = __variant.get_0()
257
+ return .first(NullType.null)
258
+ case 1:
259
+ let __actual = __variant.get_1()
260
+ return .second(String(__actual))
261
+ default:
262
+ fatalError("Variant can never have index \(__variant.index())!")
263
+ }
264
+ }()
265
+ } else {
266
+ return nil
267
+ }
268
+ }()
269
+ }
270
+
271
+ @inline(__always)
272
+ var taxRate: Variant_NullType_String? {
273
+ return { () -> Variant_NullType_String? in
274
+ if bridge.has_value_std__optional_std__variant_nitro__NullType__std__string__(self.__taxRate) {
275
+ let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__std__string__(self.__taxRate)
276
+ return { () -> Variant_NullType_String in
277
+ let __variant = bridge.std__variant_nitro__NullType__std__string_(__unwrapped)
278
+ switch __variant.index() {
279
+ case 0:
280
+ let __actual = __variant.get_0()
281
+ return .first(NullType.null)
282
+ case 1:
283
+ let __actual = __variant.get_1()
284
+ return .second(String(__actual))
285
+ default:
286
+ fatalError("Variant can never have index \(__variant.index())!")
287
+ }
288
+ }()
289
+ } else {
290
+ return nil
291
+ }
292
+ }()
293
+ }
294
+ }
@@ -0,0 +1,61 @@
1
+ ///
2
+ /// AdvancedCommerceItemDetailsIOS.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ import NitroModules
9
+
10
+ /**
11
+ * Represents an instance of `AdvancedCommerceItemDetailsIOS`, backed by a C++ struct.
12
+ */
13
+ public typealias AdvancedCommerceItemDetailsIOS = margelo.nitro.iap.AdvancedCommerceItemDetailsIOS
14
+
15
+ public extension AdvancedCommerceItemDetailsIOS {
16
+ private typealias bridge = margelo.nitro.iap.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `AdvancedCommerceItemDetailsIOS`.
20
+ */
21
+ init(jsonRepresentation: Variant_NullType_String?) {
22
+ self.init({ () -> bridge.std__optional_std__variant_nitro__NullType__std__string__ in
23
+ if let __unwrappedValue = jsonRepresentation {
24
+ return bridge.create_std__optional_std__variant_nitro__NullType__std__string__({ () -> bridge.std__variant_nitro__NullType__std__string_ in
25
+ switch __unwrappedValue {
26
+ case .first(let __value):
27
+ return bridge.create_std__variant_nitro__NullType__std__string_(margelo.nitro.NullType.null)
28
+ case .second(let __value):
29
+ return bridge.create_std__variant_nitro__NullType__std__string_(std.string(__value))
30
+ }
31
+ }().variant)
32
+ } else {
33
+ return .init()
34
+ }
35
+ }())
36
+ }
37
+
38
+ @inline(__always)
39
+ var jsonRepresentation: Variant_NullType_String? {
40
+ return { () -> Variant_NullType_String? in
41
+ if bridge.has_value_std__optional_std__variant_nitro__NullType__std__string__(self.__jsonRepresentation) {
42
+ let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__std__string__(self.__jsonRepresentation)
43
+ return { () -> Variant_NullType_String in
44
+ let __variant = bridge.std__variant_nitro__NullType__std__string_(__unwrapped)
45
+ switch __variant.index() {
46
+ case 0:
47
+ let __actual = __variant.get_0()
48
+ return .first(NullType.null)
49
+ case 1:
50
+ let __actual = __variant.get_1()
51
+ return .second(String(__actual))
52
+ default:
53
+ fatalError("Variant can never have index \(__variant.index())!")
54
+ }
55
+ }()
56
+ } else {
57
+ return nil
58
+ }
59
+ }()
60
+ }
61
+ }
@@ -0,0 +1,141 @@
1
+ ///
2
+ /// AdvancedCommerceItemIOS.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ import NitroModules
9
+
10
+ /**
11
+ * Represents an instance of `AdvancedCommerceItemIOS`, backed by a C++ struct.
12
+ */
13
+ public typealias AdvancedCommerceItemIOS = margelo.nitro.iap.AdvancedCommerceItemIOS
14
+
15
+ public extension AdvancedCommerceItemIOS {
16
+ private typealias bridge = margelo.nitro.iap.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `AdvancedCommerceItemIOS`.
20
+ */
21
+ init(details: Variant_NullType_AdvancedCommerceItemDetailsIOS?, refunds: Variant_NullType__AdvancedCommerceRefundIOS_?, revocationDate: Variant_NullType_Double?) {
22
+ self.init({ () -> bridge.std__optional_std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS__ in
23
+ if let __unwrappedValue = details {
24
+ return bridge.create_std__optional_std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS__({ () -> bridge.std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS_ in
25
+ switch __unwrappedValue {
26
+ case .first(let __value):
27
+ return bridge.create_std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS_(margelo.nitro.NullType.null)
28
+ case .second(let __value):
29
+ return bridge.create_std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS_(__value)
30
+ }
31
+ }().variant)
32
+ } else {
33
+ return .init()
34
+ }
35
+ }(), { () -> bridge.std__optional_std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS___ in
36
+ if let __unwrappedValue = refunds {
37
+ return bridge.create_std__optional_std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS___({ () -> bridge.std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS__ in
38
+ switch __unwrappedValue {
39
+ case .first(let __value):
40
+ return bridge.create_std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS__(margelo.nitro.NullType.null)
41
+ case .second(let __value):
42
+ return bridge.create_std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS__({ () -> bridge.std__vector_AdvancedCommerceRefundIOS_ in
43
+ var __vector = bridge.create_std__vector_AdvancedCommerceRefundIOS_(__value.count)
44
+ for __item in __value {
45
+ __vector.push_back(__item)
46
+ }
47
+ return __vector
48
+ }())
49
+ }
50
+ }().variant)
51
+ } else {
52
+ return .init()
53
+ }
54
+ }(), { () -> bridge.std__optional_std__variant_nitro__NullType__double__ in
55
+ if let __unwrappedValue = revocationDate {
56
+ return bridge.create_std__optional_std__variant_nitro__NullType__double__({ () -> bridge.std__variant_nitro__NullType__double_ in
57
+ switch __unwrappedValue {
58
+ case .first(let __value):
59
+ return bridge.create_std__variant_nitro__NullType__double_(margelo.nitro.NullType.null)
60
+ case .second(let __value):
61
+ return bridge.create_std__variant_nitro__NullType__double_(__value)
62
+ }
63
+ }().variant)
64
+ } else {
65
+ return .init()
66
+ }
67
+ }())
68
+ }
69
+
70
+ @inline(__always)
71
+ var details: Variant_NullType_AdvancedCommerceItemDetailsIOS? {
72
+ return { () -> Variant_NullType_AdvancedCommerceItemDetailsIOS? in
73
+ if bridge.has_value_std__optional_std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS__(self.__details) {
74
+ let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS__(self.__details)
75
+ return { () -> Variant_NullType_AdvancedCommerceItemDetailsIOS in
76
+ let __variant = bridge.std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS_(__unwrapped)
77
+ switch __variant.index() {
78
+ case 0:
79
+ let __actual = __variant.get_0()
80
+ return .first(NullType.null)
81
+ case 1:
82
+ let __actual = __variant.get_1()
83
+ return .second(__actual)
84
+ default:
85
+ fatalError("Variant can never have index \(__variant.index())!")
86
+ }
87
+ }()
88
+ } else {
89
+ return nil
90
+ }
91
+ }()
92
+ }
93
+
94
+ @inline(__always)
95
+ var refunds: Variant_NullType__AdvancedCommerceRefundIOS_? {
96
+ return { () -> Variant_NullType__AdvancedCommerceRefundIOS_? in
97
+ if bridge.has_value_std__optional_std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS___(self.__refunds) {
98
+ let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS___(self.__refunds)
99
+ return { () -> Variant_NullType__AdvancedCommerceRefundIOS_ in
100
+ let __variant = bridge.std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS__(__unwrapped)
101
+ switch __variant.index() {
102
+ case 0:
103
+ let __actual = __variant.get_0()
104
+ return .first(NullType.null)
105
+ case 1:
106
+ let __actual = __variant.get_1()
107
+ return .second(__actual.map({ __item in __item }))
108
+ default:
109
+ fatalError("Variant can never have index \(__variant.index())!")
110
+ }
111
+ }()
112
+ } else {
113
+ return nil
114
+ }
115
+ }()
116
+ }
117
+
118
+ @inline(__always)
119
+ var revocationDate: Variant_NullType_Double? {
120
+ return { () -> Variant_NullType_Double? in
121
+ if bridge.has_value_std__optional_std__variant_nitro__NullType__double__(self.__revocationDate) {
122
+ let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__double__(self.__revocationDate)
123
+ return { () -> Variant_NullType_Double in
124
+ let __variant = bridge.std__variant_nitro__NullType__double_(__unwrapped)
125
+ switch __variant.index() {
126
+ case 0:
127
+ let __actual = __variant.get_0()
128
+ return .first(NullType.null)
129
+ case 1:
130
+ let __actual = __variant.get_1()
131
+ return .second(__actual)
132
+ default:
133
+ fatalError("Variant can never have index \(__variant.index())!")
134
+ }
135
+ }()
136
+ } else {
137
+ return nil
138
+ }
139
+ }()
140
+ }
141
+ }
@@ -0,0 +1,61 @@
1
+ ///
2
+ /// AdvancedCommerceRefundIOS.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ import NitroModules
9
+
10
+ /**
11
+ * Represents an instance of `AdvancedCommerceRefundIOS`, backed by a C++ struct.
12
+ */
13
+ public typealias AdvancedCommerceRefundIOS = margelo.nitro.iap.AdvancedCommerceRefundIOS
14
+
15
+ public extension AdvancedCommerceRefundIOS {
16
+ private typealias bridge = margelo.nitro.iap.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `AdvancedCommerceRefundIOS`.
20
+ */
21
+ init(jsonRepresentation: Variant_NullType_String?) {
22
+ self.init({ () -> bridge.std__optional_std__variant_nitro__NullType__std__string__ in
23
+ if let __unwrappedValue = jsonRepresentation {
24
+ return bridge.create_std__optional_std__variant_nitro__NullType__std__string__({ () -> bridge.std__variant_nitro__NullType__std__string_ in
25
+ switch __unwrappedValue {
26
+ case .first(let __value):
27
+ return bridge.create_std__variant_nitro__NullType__std__string_(margelo.nitro.NullType.null)
28
+ case .second(let __value):
29
+ return bridge.create_std__variant_nitro__NullType__std__string_(std.string(__value))
30
+ }
31
+ }().variant)
32
+ } else {
33
+ return .init()
34
+ }
35
+ }())
36
+ }
37
+
38
+ @inline(__always)
39
+ var jsonRepresentation: Variant_NullType_String? {
40
+ return { () -> Variant_NullType_String? in
41
+ if bridge.has_value_std__optional_std__variant_nitro__NullType__std__string__(self.__jsonRepresentation) {
42
+ let __unwrapped = bridge.get_std__optional_std__variant_nitro__NullType__std__string__(self.__jsonRepresentation)
43
+ return { () -> Variant_NullType_String in
44
+ let __variant = bridge.std__variant_nitro__NullType__std__string_(__unwrapped)
45
+ switch __variant.index() {
46
+ case 0:
47
+ let __actual = __variant.get_0()
48
+ return .first(NullType.null)
49
+ case 1:
50
+ let __actual = __variant.get_1()
51
+ return .second(String(__actual))
52
+ default:
53
+ fatalError("Variant can never have index \(__variant.index())!")
54
+ }
55
+ }()
56
+ } else {
57
+ return nil
58
+ }
59
+ }()
60
+ }
61
+ }
@@ -39,6 +39,7 @@ public protocol HybridRnIapSpec_protocol: HybridObject {
39
39
  func currentEntitlementIOS(sku: String) throws -> Promise<Variant_NullType_NitroPurchase>
40
40
  func latestTransactionIOS(sku: String) throws -> Promise<Variant_NullType_NitroPurchase>
41
41
  func getPendingTransactionsIOS() throws -> Promise<[NitroPurchase]>
42
+ func getAllTransactionsIOS() throws -> Promise<[NitroPurchase]>
42
43
  func syncIOS() throws -> Promise<Bool>
43
44
  func showManageSubscriptionsIOS() throws -> Promise<[NitroPurchase]>
44
45
  func deepLinkToSubscriptionsIOS() throws -> Promise<Bool>
@@ -59,6 +60,8 @@ public protocol HybridRnIapSpec_protocol: HybridObject {
59
60
  func removeUserChoiceBillingListenerAndroid(listener: @escaping (_ details: UserChoiceBillingDetails) -> Void) throws -> Void
60
61
  func addDeveloperProvidedBillingListenerAndroid(listener: @escaping (_ details: DeveloperProvidedBillingDetailsAndroid) -> Void) throws -> Void
61
62
  func removeDeveloperProvidedBillingListenerAndroid(listener: @escaping (_ details: DeveloperProvidedBillingDetailsAndroid) -> Void) throws -> Void
63
+ func addSubscriptionBillingIssueListener(listener: @escaping (_ purchase: NitroPurchase) -> Void) throws -> Void
64
+ func removeSubscriptionBillingIssueListener(listener: @escaping (_ purchase: NitroPurchase) -> Void) throws -> Void
62
65
  func enableBillingProgramAndroid(program: BillingProgramAndroid) throws -> Void
63
66
  func isBillingProgramAvailableAndroid(program: BillingProgramAndroid) throws -> Promise<NitroBillingProgramAvailabilityResultAndroid>
64
67
  func createBillingProgramReportingDetailsAndroid(program: BillingProgramAndroid) throws -> Promise<NitroBillingProgramReportingDetailsAndroid>
@@ -743,6 +743,31 @@ open class HybridRnIapSpec_cxx {
743
743
  }
744
744
  }
745
745
 
746
+ @inline(__always)
747
+ public final func getAllTransactionsIOS() -> bridge.Result_std__shared_ptr_Promise_std__vector_NitroPurchase____ {
748
+ do {
749
+ let __result = try self.__implementation.getAllTransactionsIOS()
750
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__vector_NitroPurchase___ in
751
+ let __promise = bridge.create_std__shared_ptr_Promise_std__vector_NitroPurchase___()
752
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__vector_NitroPurchase___(__promise)
753
+ __result
754
+ .then({ __result in __promiseHolder.resolve({ () -> bridge.std__vector_NitroPurchase_ in
755
+ var __vector = bridge.create_std__vector_NitroPurchase_(__result.count)
756
+ for __item in __result {
757
+ __vector.push_back(__item)
758
+ }
759
+ return __vector
760
+ }()) })
761
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
762
+ return __promise
763
+ }()
764
+ return bridge.create_Result_std__shared_ptr_Promise_std__vector_NitroPurchase____(__resultCpp)
765
+ } catch (let __error) {
766
+ let __exceptionPtr = __error.toCpp()
767
+ return bridge.create_Result_std__shared_ptr_Promise_std__vector_NitroPurchase____(__exceptionPtr)
768
+ }
769
+ }
770
+
746
771
  @inline(__always)
747
772
  public final func syncIOS() -> bridge.Result_std__shared_ptr_Promise_bool___ {
748
773
  do {
@@ -1157,6 +1182,38 @@ open class HybridRnIapSpec_cxx {
1157
1182
  }
1158
1183
  }
1159
1184
 
1185
+ @inline(__always)
1186
+ public final func addSubscriptionBillingIssueListener(listener: bridge.Func_void_NitroPurchase) -> bridge.Result_void_ {
1187
+ do {
1188
+ try self.__implementation.addSubscriptionBillingIssueListener(listener: { () -> (NitroPurchase) -> Void in
1189
+ let __wrappedFunction = bridge.wrap_Func_void_NitroPurchase(listener)
1190
+ return { (__purchase: NitroPurchase) -> Void in
1191
+ __wrappedFunction.call(__purchase)
1192
+ }
1193
+ }())
1194
+ return bridge.create_Result_void_()
1195
+ } catch (let __error) {
1196
+ let __exceptionPtr = __error.toCpp()
1197
+ return bridge.create_Result_void_(__exceptionPtr)
1198
+ }
1199
+ }
1200
+
1201
+ @inline(__always)
1202
+ public final func removeSubscriptionBillingIssueListener(listener: bridge.Func_void_NitroPurchase) -> bridge.Result_void_ {
1203
+ do {
1204
+ try self.__implementation.removeSubscriptionBillingIssueListener(listener: { () -> (NitroPurchase) -> Void in
1205
+ let __wrappedFunction = bridge.wrap_Func_void_NitroPurchase(listener)
1206
+ return { (__purchase: NitroPurchase) -> Void in
1207
+ __wrappedFunction.call(__purchase)
1208
+ }
1209
+ }())
1210
+ return bridge.create_Result_void_()
1211
+ } catch (let __error) {
1212
+ let __exceptionPtr = __error.toCpp()
1213
+ return bridge.create_Result_void_(__exceptionPtr)
1214
+ }
1215
+ }
1216
+
1160
1217
  @inline(__always)
1161
1218
  public final func enableBillingProgramAndroid(program: Int32) -> bridge.Result_void_ {
1162
1219
  do {