react-native-iap 15.2.0 → 15.2.2

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 (95) hide show
  1. package/android/src/main/java/com/margelo/nitro/iap/HybridRnIap.kt +117 -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 +33 -0
  5. package/lib/module/hooks/useIAP.js.map +1 -1
  6. package/lib/module/hooks/useWebhookEvents.js +113 -0
  7. package/lib/module/hooks/useWebhookEvents.js.map +1 -0
  8. package/lib/module/index.js +331 -131
  9. package/lib/module/index.js.map +1 -1
  10. package/lib/module/kit-api.js +161 -0
  11. package/lib/module/kit-api.js.map +1 -0
  12. package/lib/module/types.js +16 -0
  13. package/lib/module/types.js.map +1 -1
  14. package/lib/module/utils/error.js.map +1 -1
  15. package/lib/module/utils/errorMapping.js +6 -0
  16. package/lib/module/utils/errorMapping.js.map +1 -1
  17. package/lib/module/webhook-client.js +164 -0
  18. package/lib/module/webhook-client.js.map +1 -0
  19. package/lib/typescript/plugin/src/withIAP.d.ts +1 -1
  20. package/lib/typescript/src/hooks/useIAP.d.ts +162 -2
  21. package/lib/typescript/src/hooks/useIAP.d.ts.map +1 -1
  22. package/lib/typescript/src/hooks/useWebhookEvents.d.ts +55 -0
  23. package/lib/typescript/src/hooks/useWebhookEvents.d.ts.map +1 -0
  24. package/lib/typescript/src/index.d.ts +282 -129
  25. package/lib/typescript/src/index.d.ts.map +1 -1
  26. package/lib/typescript/src/kit-api.d.ts +54 -0
  27. package/lib/typescript/src/kit-api.d.ts.map +1 -0
  28. package/lib/typescript/src/specs/RnIap.nitro.d.ts +7 -0
  29. package/lib/typescript/src/specs/RnIap.nitro.d.ts.map +1 -1
  30. package/lib/typescript/src/types.d.ts +304 -74
  31. package/lib/typescript/src/types.d.ts.map +1 -1
  32. package/lib/typescript/src/utils/error.d.ts +3 -0
  33. package/lib/typescript/src/utils/error.d.ts.map +1 -1
  34. package/lib/typescript/src/utils/errorMapping.d.ts +6 -0
  35. package/lib/typescript/src/utils/errorMapping.d.ts.map +1 -1
  36. package/lib/typescript/src/webhook-client.d.ts +82 -0
  37. package/lib/typescript/src/webhook-client.d.ts.map +1 -0
  38. package/nitrogen/generated/android/NitroIap+autolinking.cmake +3 -0
  39. package/nitrogen/generated/android/c++/JAdvancedCommerceInfoIOS.hpp +118 -0
  40. package/nitrogen/generated/android/c++/JAdvancedCommerceItemDetailsIOS.hpp +62 -0
  41. package/nitrogen/generated/android/c++/JAdvancedCommerceItemIOS.hpp +78 -0
  42. package/nitrogen/generated/android/c++/JAdvancedCommerceRefundIOS.hpp +62 -0
  43. package/nitrogen/generated/android/c++/JHybridRnIapSpec.cpp +44 -0
  44. package/nitrogen/generated/android/c++/JHybridRnIapSpec.hpp +1 -0
  45. package/nitrogen/generated/android/c++/JPurchase.hpp +11 -0
  46. package/nitrogen/generated/android/c++/JPurchaseIOS.hpp +16 -1
  47. package/nitrogen/generated/android/c++/JRequestPurchaseResult.hpp +11 -0
  48. package/nitrogen/generated/android/c++/JVariant_NullType_AdvancedCommerceInfoIOS.cpp +26 -0
  49. package/nitrogen/generated/android/c++/JVariant_NullType_AdvancedCommerceInfoIOS.hpp +84 -0
  50. package/nitrogen/generated/android/c++/JVariant_NullType_AdvancedCommerceItemDetailsIOS.cpp +26 -0
  51. package/nitrogen/generated/android/c++/JVariant_NullType_AdvancedCommerceItemDetailsIOS.hpp +74 -0
  52. package/nitrogen/generated/android/c++/JVariant_NullType_Array_AdvancedCommerceRefundIOS_.cpp +35 -0
  53. package/nitrogen/generated/android/c++/JVariant_NullType_Array_AdvancedCommerceRefundIOS_.hpp +84 -0
  54. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceInfoIOS.kt +59 -0
  55. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceItemDetailsIOS.kt +38 -0
  56. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceItemIOS.kt +44 -0
  57. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/AdvancedCommerceRefundIOS.kt +38 -0
  58. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/HybridRnIapSpec.kt +4 -0
  59. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/PurchaseIOS.kt +5 -2
  60. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_AdvancedCommerceInfoIOS.kt +53 -0
  61. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_AdvancedCommerceItemDetailsIOS.kt +53 -0
  62. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/Variant_NullType_Array_AdvancedCommerceRefundIOS_.kt +53 -0
  63. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.hpp +166 -0
  64. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Umbrella.hpp +12 -0
  65. package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.hpp +20 -0
  66. package/nitrogen/generated/ios/swift/AdvancedCommerceInfoIOS.swift +294 -0
  67. package/nitrogen/generated/ios/swift/AdvancedCommerceItemDetailsIOS.swift +61 -0
  68. package/nitrogen/generated/ios/swift/AdvancedCommerceItemIOS.swift +141 -0
  69. package/nitrogen/generated/ios/swift/AdvancedCommerceRefundIOS.swift +61 -0
  70. package/nitrogen/generated/ios/swift/HybridRnIapSpec.swift +1 -0
  71. package/nitrogen/generated/ios/swift/HybridRnIapSpec_cxx.swift +25 -0
  72. package/nitrogen/generated/ios/swift/PurchaseIOS.swift +39 -2
  73. package/nitrogen/generated/ios/swift/Variant_NullType_AdvancedCommerceInfoIOS.swift +18 -0
  74. package/nitrogen/generated/ios/swift/Variant_NullType_AdvancedCommerceItemDetailsIOS.swift +18 -0
  75. package/nitrogen/generated/ios/swift/Variant_NullType__AdvancedCommerceRefundIOS_.swift +18 -0
  76. package/nitrogen/generated/shared/c++/AdvancedCommerceInfoIOS.hpp +117 -0
  77. package/nitrogen/generated/shared/c++/AdvancedCommerceItemDetailsIOS.hpp +86 -0
  78. package/nitrogen/generated/shared/c++/AdvancedCommerceItemIOS.hpp +99 -0
  79. package/nitrogen/generated/shared/c++/AdvancedCommerceRefundIOS.hpp +86 -0
  80. package/nitrogen/generated/shared/c++/HybridRnIapSpec.cpp +1 -0
  81. package/nitrogen/generated/shared/c++/HybridRnIapSpec.hpp +1 -0
  82. package/nitrogen/generated/shared/c++/PurchaseIOS.hpp +9 -2
  83. package/openiap-versions.json +3 -3
  84. package/package.json +1 -1
  85. package/plugin/build/withIAP.d.ts +1 -1
  86. package/plugin/src/withIAP.ts +1 -1
  87. package/src/hooks/useIAP.ts +162 -2
  88. package/src/hooks/useWebhookEvents.ts +180 -0
  89. package/src/index.ts +348 -130
  90. package/src/kit-api.ts +225 -0
  91. package/src/specs/RnIap.nitro.ts +8 -0
  92. package/src/types.ts +314 -74
  93. package/src/utils/error.ts +3 -0
  94. package/src/utils/errorMapping.ts +12 -0
  95. package/src/webhook-client.ts +312 -0
@@ -0,0 +1,38 @@
1
+ ///
2
+ /// AdvancedCommerceRefundIOS.kt
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
+ package com.margelo.nitro.iap
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.proguard.annotations.DoNotStrip
12
+ import com.margelo.nitro.core.NullType
13
+
14
+ /**
15
+ * Represents the JavaScript object/struct "AdvancedCommerceRefundIOS".
16
+ */
17
+ @DoNotStrip
18
+ @Keep
19
+ data class AdvancedCommerceRefundIOS(
20
+ @DoNotStrip
21
+ @Keep
22
+ val jsonRepresentation: Variant_NullType_String?
23
+ ) {
24
+ /* primary constructor */
25
+
26
+ companion object {
27
+ /**
28
+ * Constructor called from C++
29
+ */
30
+ @DoNotStrip
31
+ @Keep
32
+ @Suppress("unused")
33
+ @JvmStatic
34
+ private fun fromCpp(jsonRepresentation: Variant_NullType_String?): AdvancedCommerceRefundIOS {
35
+ return AdvancedCommerceRefundIOS(jsonRepresentation)
36
+ }
37
+ }
38
+ }
@@ -164,6 +164,10 @@ abstract class HybridRnIapSpec: HybridObject() {
164
164
  @Keep
165
165
  abstract fun getPendingTransactionsIOS(): Promise<Array<NitroPurchase>>
166
166
 
167
+ @DoNotStrip
168
+ @Keep
169
+ abstract fun getAllTransactionsIOS(): Promise<Array<NitroPurchase>>
170
+
167
171
  @DoNotStrip
168
172
  @Keep
169
173
  abstract fun syncIOS(): Promise<Boolean>
@@ -17,6 +17,9 @@ import com.margelo.nitro.core.NullType
17
17
  @DoNotStrip
18
18
  @Keep
19
19
  data class PurchaseIOS(
20
+ @DoNotStrip
21
+ @Keep
22
+ val advancedCommerceInfoIOS: Variant_NullType_AdvancedCommerceInfoIOS?,
20
23
  @DoNotStrip
21
24
  @Keep
22
25
  val appAccountToken: Variant_NullType_String?,
@@ -130,8 +133,8 @@ data class PurchaseIOS(
130
133
  @Keep
131
134
  @Suppress("unused")
132
135
  @JvmStatic
133
- private fun fromCpp(appAccountToken: Variant_NullType_String?, appBundleIdIOS: Variant_NullType_String?, countryCodeIOS: Variant_NullType_String?, currencyCodeIOS: Variant_NullType_String?, currencySymbolIOS: Variant_NullType_String?, currentPlanId: Variant_NullType_String?, environmentIOS: Variant_NullType_String?, expirationDateIOS: Variant_NullType_Double?, id: String, ids: Variant_NullType_Array_String_?, isAutoRenewing: Boolean, isUpgradedIOS: Variant_NullType_Boolean?, offerIOS: Variant_NullType_PurchaseOfferIOS?, originalTransactionDateIOS: Variant_NullType_Double?, originalTransactionIdentifierIOS: Variant_NullType_String?, ownershipTypeIOS: Variant_NullType_String?, platform: IapPlatform, productId: String, purchaseState: PurchaseState, purchaseToken: Variant_NullType_String?, quantity: Double, quantityIOS: Variant_NullType_Double?, reasonIOS: Variant_NullType_String?, reasonStringRepresentationIOS: Variant_NullType_String?, renewalInfoIOS: Variant_NullType_RenewalInfoIOS?, revocationDateIOS: Variant_NullType_Double?, revocationReasonIOS: Variant_NullType_String?, store: IapStore, storefrontCountryCodeIOS: Variant_NullType_String?, subscriptionGroupIdIOS: Variant_NullType_String?, transactionDate: Double, transactionId: String, transactionReasonIOS: Variant_NullType_String?, webOrderLineItemIdIOS: Variant_NullType_String?): PurchaseIOS {
134
- return PurchaseIOS(appAccountToken, appBundleIdIOS, countryCodeIOS, currencyCodeIOS, currencySymbolIOS, currentPlanId, environmentIOS, expirationDateIOS, id, ids, isAutoRenewing, isUpgradedIOS, offerIOS, originalTransactionDateIOS, originalTransactionIdentifierIOS, ownershipTypeIOS, platform, productId, purchaseState, purchaseToken, quantity, quantityIOS, reasonIOS, reasonStringRepresentationIOS, renewalInfoIOS, revocationDateIOS, revocationReasonIOS, store, storefrontCountryCodeIOS, subscriptionGroupIdIOS, transactionDate, transactionId, transactionReasonIOS, webOrderLineItemIdIOS)
136
+ private fun fromCpp(advancedCommerceInfoIOS: Variant_NullType_AdvancedCommerceInfoIOS?, appAccountToken: Variant_NullType_String?, appBundleIdIOS: Variant_NullType_String?, countryCodeIOS: Variant_NullType_String?, currencyCodeIOS: Variant_NullType_String?, currencySymbolIOS: Variant_NullType_String?, currentPlanId: Variant_NullType_String?, environmentIOS: Variant_NullType_String?, expirationDateIOS: Variant_NullType_Double?, id: String, ids: Variant_NullType_Array_String_?, isAutoRenewing: Boolean, isUpgradedIOS: Variant_NullType_Boolean?, offerIOS: Variant_NullType_PurchaseOfferIOS?, originalTransactionDateIOS: Variant_NullType_Double?, originalTransactionIdentifierIOS: Variant_NullType_String?, ownershipTypeIOS: Variant_NullType_String?, platform: IapPlatform, productId: String, purchaseState: PurchaseState, purchaseToken: Variant_NullType_String?, quantity: Double, quantityIOS: Variant_NullType_Double?, reasonIOS: Variant_NullType_String?, reasonStringRepresentationIOS: Variant_NullType_String?, renewalInfoIOS: Variant_NullType_RenewalInfoIOS?, revocationDateIOS: Variant_NullType_Double?, revocationReasonIOS: Variant_NullType_String?, store: IapStore, storefrontCountryCodeIOS: Variant_NullType_String?, subscriptionGroupIdIOS: Variant_NullType_String?, transactionDate: Double, transactionId: String, transactionReasonIOS: Variant_NullType_String?, webOrderLineItemIdIOS: Variant_NullType_String?): PurchaseIOS {
137
+ return PurchaseIOS(advancedCommerceInfoIOS, appAccountToken, appBundleIdIOS, countryCodeIOS, currencyCodeIOS, currencySymbolIOS, currentPlanId, environmentIOS, expirationDateIOS, id, ids, isAutoRenewing, isUpgradedIOS, offerIOS, originalTransactionDateIOS, originalTransactionIdentifierIOS, ownershipTypeIOS, platform, productId, purchaseState, purchaseToken, quantity, quantityIOS, reasonIOS, reasonStringRepresentationIOS, renewalInfoIOS, revocationDateIOS, revocationReasonIOS, store, storefrontCountryCodeIOS, subscriptionGroupIdIOS, transactionDate, transactionId, transactionReasonIOS, webOrderLineItemIdIOS)
135
138
  }
136
139
  }
137
140
  }
@@ -0,0 +1,53 @@
1
+ ///
2
+ /// Variant_NullType_AdvancedCommerceInfoIOS.kt
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
+ package com.margelo.nitro.iap
9
+
10
+ import com.facebook.proguard.annotations.DoNotStrip
11
+ import com.margelo.nitro.core.NullType
12
+
13
+ /**
14
+ * Represents the TypeScript variant "NullType | AdvancedCommerceInfoIOS".
15
+ */
16
+ @Suppress("ClassName")
17
+ @DoNotStrip
18
+ sealed class Variant_NullType_AdvancedCommerceInfoIOS {
19
+ @DoNotStrip
20
+ data class First(@DoNotStrip val value: NullType): Variant_NullType_AdvancedCommerceInfoIOS()
21
+ @DoNotStrip
22
+ data class Second(@DoNotStrip val value: AdvancedCommerceInfoIOS): Variant_NullType_AdvancedCommerceInfoIOS()
23
+
24
+ val isFirst: Boolean
25
+ get() = this is First
26
+ val isSecond: Boolean
27
+ get() = this is Second
28
+
29
+ fun asFirstOrNull(): NullType? {
30
+ val value = (this as? First)?.value ?: return null
31
+ return value
32
+ }
33
+ fun asSecondOrNull(): AdvancedCommerceInfoIOS? {
34
+ val value = (this as? Second)?.value ?: return null
35
+ return value
36
+ }
37
+
38
+ inline fun <R> match(first: (NullType) -> R, second: (AdvancedCommerceInfoIOS) -> R): R {
39
+ return when (this) {
40
+ is First -> first(value)
41
+ is Second -> second(value)
42
+ }
43
+ }
44
+
45
+ companion object {
46
+ @JvmStatic
47
+ @DoNotStrip
48
+ fun create(value: NullType): Variant_NullType_AdvancedCommerceInfoIOS = First(value)
49
+ @JvmStatic
50
+ @DoNotStrip
51
+ fun create(value: AdvancedCommerceInfoIOS): Variant_NullType_AdvancedCommerceInfoIOS = Second(value)
52
+ }
53
+ }
@@ -0,0 +1,53 @@
1
+ ///
2
+ /// Variant_NullType_AdvancedCommerceItemDetailsIOS.kt
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
+ package com.margelo.nitro.iap
9
+
10
+ import com.facebook.proguard.annotations.DoNotStrip
11
+ import com.margelo.nitro.core.NullType
12
+
13
+ /**
14
+ * Represents the TypeScript variant "NullType | AdvancedCommerceItemDetailsIOS".
15
+ */
16
+ @Suppress("ClassName")
17
+ @DoNotStrip
18
+ sealed class Variant_NullType_AdvancedCommerceItemDetailsIOS {
19
+ @DoNotStrip
20
+ data class First(@DoNotStrip val value: NullType): Variant_NullType_AdvancedCommerceItemDetailsIOS()
21
+ @DoNotStrip
22
+ data class Second(@DoNotStrip val value: AdvancedCommerceItemDetailsIOS): Variant_NullType_AdvancedCommerceItemDetailsIOS()
23
+
24
+ val isFirst: Boolean
25
+ get() = this is First
26
+ val isSecond: Boolean
27
+ get() = this is Second
28
+
29
+ fun asFirstOrNull(): NullType? {
30
+ val value = (this as? First)?.value ?: return null
31
+ return value
32
+ }
33
+ fun asSecondOrNull(): AdvancedCommerceItemDetailsIOS? {
34
+ val value = (this as? Second)?.value ?: return null
35
+ return value
36
+ }
37
+
38
+ inline fun <R> match(first: (NullType) -> R, second: (AdvancedCommerceItemDetailsIOS) -> R): R {
39
+ return when (this) {
40
+ is First -> first(value)
41
+ is Second -> second(value)
42
+ }
43
+ }
44
+
45
+ companion object {
46
+ @JvmStatic
47
+ @DoNotStrip
48
+ fun create(value: NullType): Variant_NullType_AdvancedCommerceItemDetailsIOS = First(value)
49
+ @JvmStatic
50
+ @DoNotStrip
51
+ fun create(value: AdvancedCommerceItemDetailsIOS): Variant_NullType_AdvancedCommerceItemDetailsIOS = Second(value)
52
+ }
53
+ }
@@ -0,0 +1,53 @@
1
+ ///
2
+ /// Variant_NullType_Array_AdvancedCommerceRefundIOS_.kt
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
+ package com.margelo.nitro.iap
9
+
10
+ import com.facebook.proguard.annotations.DoNotStrip
11
+ import com.margelo.nitro.core.NullType
12
+
13
+ /**
14
+ * Represents the TypeScript variant "NullType | Array<AdvancedCommerceRefundIOS>".
15
+ */
16
+ @Suppress("ClassName")
17
+ @DoNotStrip
18
+ sealed class Variant_NullType_Array_AdvancedCommerceRefundIOS_ {
19
+ @DoNotStrip
20
+ data class First(@DoNotStrip val value: NullType): Variant_NullType_Array_AdvancedCommerceRefundIOS_()
21
+ @DoNotStrip
22
+ data class Second(@DoNotStrip val value: Array<AdvancedCommerceRefundIOS>): Variant_NullType_Array_AdvancedCommerceRefundIOS_()
23
+
24
+ val isFirst: Boolean
25
+ get() = this is First
26
+ val isSecond: Boolean
27
+ get() = this is Second
28
+
29
+ fun asFirstOrNull(): NullType? {
30
+ val value = (this as? First)?.value ?: return null
31
+ return value
32
+ }
33
+ fun asSecondOrNull(): Array<AdvancedCommerceRefundIOS>? {
34
+ val value = (this as? Second)?.value ?: return null
35
+ return value
36
+ }
37
+
38
+ inline fun <R> match(first: (NullType) -> R, second: (Array<AdvancedCommerceRefundIOS>) -> R): R {
39
+ return when (this) {
40
+ is First -> first(value)
41
+ is Second -> second(value)
42
+ }
43
+ }
44
+
45
+ companion object {
46
+ @JvmStatic
47
+ @DoNotStrip
48
+ fun create(value: NullType): Variant_NullType_Array_AdvancedCommerceRefundIOS_ = First(value)
49
+ @JvmStatic
50
+ @DoNotStrip
51
+ fun create(value: Array<AdvancedCommerceRefundIOS>): Variant_NullType_Array_AdvancedCommerceRefundIOS_ = Second(value)
52
+ }
53
+ }
@@ -8,6 +8,14 @@
8
8
  #pragma once
9
9
 
10
10
  // Forward declarations of C++ defined types
11
+ // Forward declaration of `AdvancedCommerceInfoIOS` to properly resolve imports.
12
+ namespace margelo::nitro::iap { struct AdvancedCommerceInfoIOS; }
13
+ // Forward declaration of `AdvancedCommerceItemDetailsIOS` to properly resolve imports.
14
+ namespace margelo::nitro::iap { struct AdvancedCommerceItemDetailsIOS; }
15
+ // Forward declaration of `AdvancedCommerceItemIOS` to properly resolve imports.
16
+ namespace margelo::nitro::iap { struct AdvancedCommerceItemIOS; }
17
+ // Forward declaration of `AdvancedCommerceRefundIOS` to properly resolve imports.
18
+ namespace margelo::nitro::iap { struct AdvancedCommerceRefundIOS; }
11
19
  // Forward declaration of `AlternativeBillingModeAndroid` to properly resolve imports.
12
20
  namespace margelo::nitro::iap { enum class AlternativeBillingModeAndroid; }
13
21
  // Forward declaration of `AndroidSubscriptionOfferInput` to properly resolve imports.
@@ -138,6 +146,10 @@ namespace margelo::nitro::iap { struct WinBackOfferInputIOS; }
138
146
  namespace NitroIap { class HybridRnIapSpec_cxx; }
139
147
 
140
148
  // Include C++ defined types
149
+ #include "AdvancedCommerceInfoIOS.hpp"
150
+ #include "AdvancedCommerceItemDetailsIOS.hpp"
151
+ #include "AdvancedCommerceItemIOS.hpp"
152
+ #include "AdvancedCommerceRefundIOS.hpp"
141
153
  #include "AlternativeBillingModeAndroid.hpp"
142
154
  #include "AndroidSubscriptionOfferInput.hpp"
143
155
  #include "BillingProgramAndroid.hpp"
@@ -959,6 +971,160 @@ namespace margelo::nitro::iap::bridge::swift {
959
971
  return optional.value();
960
972
  }
961
973
 
974
+ // pragma MARK: std::variant<nitro::NullType, AdvancedCommerceItemDetailsIOS>
975
+ /**
976
+ * Wrapper struct for `std::variant<nitro::NullType, AdvancedCommerceItemDetailsIOS>`.
977
+ * std::variant cannot be used in Swift because of a Swift bug.
978
+ * Not even specializing it works. So we create a wrapper struct.
979
+ */
980
+ struct std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS_ final {
981
+ std::variant<nitro::NullType, AdvancedCommerceItemDetailsIOS> variant;
982
+ std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS_(std::variant<nitro::NullType, AdvancedCommerceItemDetailsIOS> variant): variant(variant) { }
983
+ operator std::variant<nitro::NullType, AdvancedCommerceItemDetailsIOS>() const noexcept {
984
+ return variant;
985
+ }
986
+ inline size_t index() const noexcept {
987
+ return variant.index();
988
+ }
989
+ inline nitro::NullType get_0() const noexcept {
990
+ return std::get<0>(variant);
991
+ }
992
+ inline AdvancedCommerceItemDetailsIOS get_1() const noexcept {
993
+ return std::get<1>(variant);
994
+ }
995
+ };
996
+ inline std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS_ create_std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS_(nitro::NullType value) noexcept {
997
+ return std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS_(value);
998
+ }
999
+ inline std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS_ create_std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS_(const AdvancedCommerceItemDetailsIOS& value) noexcept {
1000
+ return std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS_(value);
1001
+ }
1002
+
1003
+ // pragma MARK: std::optional<std::variant<nitro::NullType, AdvancedCommerceItemDetailsIOS>>
1004
+ /**
1005
+ * Specialized version of `std::optional<std::variant<nitro::NullType, AdvancedCommerceItemDetailsIOS>>`.
1006
+ */
1007
+ using std__optional_std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS__ = std::optional<std::variant<nitro::NullType, AdvancedCommerceItemDetailsIOS>>;
1008
+ inline std::optional<std::variant<nitro::NullType, AdvancedCommerceItemDetailsIOS>> create_std__optional_std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS__(const std::variant<nitro::NullType, AdvancedCommerceItemDetailsIOS>& value) noexcept {
1009
+ return std::optional<std::variant<nitro::NullType, AdvancedCommerceItemDetailsIOS>>(value);
1010
+ }
1011
+ inline bool has_value_std__optional_std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS__(const std::optional<std::variant<nitro::NullType, AdvancedCommerceItemDetailsIOS>>& optional) noexcept {
1012
+ return optional.has_value();
1013
+ }
1014
+ inline std::variant<nitro::NullType, AdvancedCommerceItemDetailsIOS> get_std__optional_std__variant_nitro__NullType__AdvancedCommerceItemDetailsIOS__(const std::optional<std::variant<nitro::NullType, AdvancedCommerceItemDetailsIOS>>& optional) noexcept {
1015
+ return optional.value();
1016
+ }
1017
+
1018
+ // pragma MARK: std::vector<AdvancedCommerceRefundIOS>
1019
+ /**
1020
+ * Specialized version of `std::vector<AdvancedCommerceRefundIOS>`.
1021
+ */
1022
+ using std__vector_AdvancedCommerceRefundIOS_ = std::vector<AdvancedCommerceRefundIOS>;
1023
+ inline std::vector<AdvancedCommerceRefundIOS> create_std__vector_AdvancedCommerceRefundIOS_(size_t size) noexcept {
1024
+ std::vector<AdvancedCommerceRefundIOS> vector;
1025
+ vector.reserve(size);
1026
+ return vector;
1027
+ }
1028
+
1029
+ // pragma MARK: std::variant<nitro::NullType, std::vector<AdvancedCommerceRefundIOS>>
1030
+ /**
1031
+ * Wrapper struct for `std::variant<nitro::NullType, std::vector<AdvancedCommerceRefundIOS>>`.
1032
+ * std::variant cannot be used in Swift because of a Swift bug.
1033
+ * Not even specializing it works. So we create a wrapper struct.
1034
+ */
1035
+ struct std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS__ final {
1036
+ std::variant<nitro::NullType, std::vector<AdvancedCommerceRefundIOS>> variant;
1037
+ std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS__(std::variant<nitro::NullType, std::vector<AdvancedCommerceRefundIOS>> variant): variant(variant) { }
1038
+ operator std::variant<nitro::NullType, std::vector<AdvancedCommerceRefundIOS>>() const noexcept {
1039
+ return variant;
1040
+ }
1041
+ inline size_t index() const noexcept {
1042
+ return variant.index();
1043
+ }
1044
+ inline nitro::NullType get_0() const noexcept {
1045
+ return std::get<0>(variant);
1046
+ }
1047
+ inline std::vector<AdvancedCommerceRefundIOS> get_1() const noexcept {
1048
+ return std::get<1>(variant);
1049
+ }
1050
+ };
1051
+ inline std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS__ create_std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS__(nitro::NullType value) noexcept {
1052
+ return std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS__(value);
1053
+ }
1054
+ inline std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS__ create_std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS__(const std::vector<AdvancedCommerceRefundIOS>& value) noexcept {
1055
+ return std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS__(value);
1056
+ }
1057
+
1058
+ // pragma MARK: std::optional<std::variant<nitro::NullType, std::vector<AdvancedCommerceRefundIOS>>>
1059
+ /**
1060
+ * Specialized version of `std::optional<std::variant<nitro::NullType, std::vector<AdvancedCommerceRefundIOS>>>`.
1061
+ */
1062
+ using std__optional_std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS___ = std::optional<std::variant<nitro::NullType, std::vector<AdvancedCommerceRefundIOS>>>;
1063
+ inline std::optional<std::variant<nitro::NullType, std::vector<AdvancedCommerceRefundIOS>>> create_std__optional_std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS___(const std::variant<nitro::NullType, std::vector<AdvancedCommerceRefundIOS>>& value) noexcept {
1064
+ return std::optional<std::variant<nitro::NullType, std::vector<AdvancedCommerceRefundIOS>>>(value);
1065
+ }
1066
+ inline bool has_value_std__optional_std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS___(const std::optional<std::variant<nitro::NullType, std::vector<AdvancedCommerceRefundIOS>>>& optional) noexcept {
1067
+ return optional.has_value();
1068
+ }
1069
+ inline std::variant<nitro::NullType, std::vector<AdvancedCommerceRefundIOS>> get_std__optional_std__variant_nitro__NullType__std__vector_AdvancedCommerceRefundIOS___(const std::optional<std::variant<nitro::NullType, std::vector<AdvancedCommerceRefundIOS>>>& optional) noexcept {
1070
+ return optional.value();
1071
+ }
1072
+
1073
+ // pragma MARK: std::vector<AdvancedCommerceItemIOS>
1074
+ /**
1075
+ * Specialized version of `std::vector<AdvancedCommerceItemIOS>`.
1076
+ */
1077
+ using std__vector_AdvancedCommerceItemIOS_ = std::vector<AdvancedCommerceItemIOS>;
1078
+ inline std::vector<AdvancedCommerceItemIOS> create_std__vector_AdvancedCommerceItemIOS_(size_t size) noexcept {
1079
+ std::vector<AdvancedCommerceItemIOS> vector;
1080
+ vector.reserve(size);
1081
+ return vector;
1082
+ }
1083
+
1084
+ // pragma MARK: std::variant<nitro::NullType, AdvancedCommerceInfoIOS>
1085
+ /**
1086
+ * Wrapper struct for `std::variant<nitro::NullType, AdvancedCommerceInfoIOS>`.
1087
+ * std::variant cannot be used in Swift because of a Swift bug.
1088
+ * Not even specializing it works. So we create a wrapper struct.
1089
+ */
1090
+ struct std__variant_nitro__NullType__AdvancedCommerceInfoIOS_ final {
1091
+ std::variant<nitro::NullType, AdvancedCommerceInfoIOS> variant;
1092
+ std__variant_nitro__NullType__AdvancedCommerceInfoIOS_(std::variant<nitro::NullType, AdvancedCommerceInfoIOS> variant): variant(variant) { }
1093
+ operator std::variant<nitro::NullType, AdvancedCommerceInfoIOS>() const noexcept {
1094
+ return variant;
1095
+ }
1096
+ inline size_t index() const noexcept {
1097
+ return variant.index();
1098
+ }
1099
+ inline nitro::NullType get_0() const noexcept {
1100
+ return std::get<0>(variant);
1101
+ }
1102
+ inline AdvancedCommerceInfoIOS get_1() const noexcept {
1103
+ return std::get<1>(variant);
1104
+ }
1105
+ };
1106
+ inline std__variant_nitro__NullType__AdvancedCommerceInfoIOS_ create_std__variant_nitro__NullType__AdvancedCommerceInfoIOS_(nitro::NullType value) noexcept {
1107
+ return std__variant_nitro__NullType__AdvancedCommerceInfoIOS_(value);
1108
+ }
1109
+ inline std__variant_nitro__NullType__AdvancedCommerceInfoIOS_ create_std__variant_nitro__NullType__AdvancedCommerceInfoIOS_(const AdvancedCommerceInfoIOS& value) noexcept {
1110
+ return std__variant_nitro__NullType__AdvancedCommerceInfoIOS_(value);
1111
+ }
1112
+
1113
+ // pragma MARK: std::optional<std::variant<nitro::NullType, AdvancedCommerceInfoIOS>>
1114
+ /**
1115
+ * Specialized version of `std::optional<std::variant<nitro::NullType, AdvancedCommerceInfoIOS>>`.
1116
+ */
1117
+ using std__optional_std__variant_nitro__NullType__AdvancedCommerceInfoIOS__ = std::optional<std::variant<nitro::NullType, AdvancedCommerceInfoIOS>>;
1118
+ inline std::optional<std::variant<nitro::NullType, AdvancedCommerceInfoIOS>> create_std__optional_std__variant_nitro__NullType__AdvancedCommerceInfoIOS__(const std::variant<nitro::NullType, AdvancedCommerceInfoIOS>& value) noexcept {
1119
+ return std::optional<std::variant<nitro::NullType, AdvancedCommerceInfoIOS>>(value);
1120
+ }
1121
+ inline bool has_value_std__optional_std__variant_nitro__NullType__AdvancedCommerceInfoIOS__(const std::optional<std::variant<nitro::NullType, AdvancedCommerceInfoIOS>>& optional) noexcept {
1122
+ return optional.has_value();
1123
+ }
1124
+ inline std::variant<nitro::NullType, AdvancedCommerceInfoIOS> get_std__optional_std__variant_nitro__NullType__AdvancedCommerceInfoIOS__(const std::optional<std::variant<nitro::NullType, AdvancedCommerceInfoIOS>>& optional) noexcept {
1125
+ return optional.value();
1126
+ }
1127
+
962
1128
  // pragma MARK: std::variant<nitro::NullType, PurchaseOfferIOS>
963
1129
  /**
964
1130
  * Wrapper struct for `std::variant<nitro::NullType, PurchaseOfferIOS>`.
@@ -8,6 +8,14 @@
8
8
  #pragma once
9
9
 
10
10
  // Forward declarations of C++ defined types
11
+ // Forward declaration of `AdvancedCommerceInfoIOS` to properly resolve imports.
12
+ namespace margelo::nitro::iap { struct AdvancedCommerceInfoIOS; }
13
+ // Forward declaration of `AdvancedCommerceItemDetailsIOS` to properly resolve imports.
14
+ namespace margelo::nitro::iap { struct AdvancedCommerceItemDetailsIOS; }
15
+ // Forward declaration of `AdvancedCommerceItemIOS` to properly resolve imports.
16
+ namespace margelo::nitro::iap { struct AdvancedCommerceItemIOS; }
17
+ // Forward declaration of `AdvancedCommerceRefundIOS` to properly resolve imports.
18
+ namespace margelo::nitro::iap { struct AdvancedCommerceRefundIOS; }
11
19
  // Forward declaration of `AlternativeBillingModeAndroid` to properly resolve imports.
12
20
  namespace margelo::nitro::iap { enum class AlternativeBillingModeAndroid; }
13
21
  // Forward declaration of `AndroidSubscriptionOfferInput` to properly resolve imports.
@@ -154,6 +162,10 @@ namespace margelo::nitro::iap { struct UserChoiceBillingDetails; }
154
162
  namespace margelo::nitro::iap { struct WinBackOfferInputIOS; }
155
163
 
156
164
  // Include C++ defined types
165
+ #include "AdvancedCommerceInfoIOS.hpp"
166
+ #include "AdvancedCommerceItemDetailsIOS.hpp"
167
+ #include "AdvancedCommerceItemIOS.hpp"
168
+ #include "AdvancedCommerceRefundIOS.hpp"
157
169
  #include "AlternativeBillingModeAndroid.hpp"
158
170
  #include "AndroidSubscriptionOfferInput.hpp"
159
171
  #include "BillingProgramAndroid.hpp"
@@ -48,6 +48,14 @@ namespace margelo::nitro::iap { struct PendingPurchaseUpdateAndroid; }
48
48
  namespace margelo::nitro::iap { enum class PurchaseState; }
49
49
  // Forward declaration of `IapStore` to properly resolve imports.
50
50
  namespace margelo::nitro::iap { enum class IapStore; }
51
+ // Forward declaration of `AdvancedCommerceInfoIOS` to properly resolve imports.
52
+ namespace margelo::nitro::iap { struct AdvancedCommerceInfoIOS; }
53
+ // Forward declaration of `AdvancedCommerceItemIOS` to properly resolve imports.
54
+ namespace margelo::nitro::iap { struct AdvancedCommerceItemIOS; }
55
+ // Forward declaration of `AdvancedCommerceItemDetailsIOS` to properly resolve imports.
56
+ namespace margelo::nitro::iap { struct AdvancedCommerceItemDetailsIOS; }
57
+ // Forward declaration of `AdvancedCommerceRefundIOS` to properly resolve imports.
58
+ namespace margelo::nitro::iap { struct AdvancedCommerceRefundIOS; }
51
59
  // Forward declaration of `PurchaseOfferIOS` to properly resolve imports.
52
60
  namespace margelo::nitro::iap { struct PurchaseOfferIOS; }
53
61
  // Forward declaration of `RenewalInfoIOS` to properly resolve imports.
@@ -179,6 +187,10 @@ namespace margelo::nitro::iap { enum class ExternalPurchaseCustomLinkNoticeTypeI
179
187
  #include "PendingPurchaseUpdateAndroid.hpp"
180
188
  #include "PurchaseState.hpp"
181
189
  #include "IapStore.hpp"
190
+ #include "AdvancedCommerceInfoIOS.hpp"
191
+ #include "AdvancedCommerceItemIOS.hpp"
192
+ #include "AdvancedCommerceItemDetailsIOS.hpp"
193
+ #include "AdvancedCommerceRefundIOS.hpp"
182
194
  #include "PurchaseOfferIOS.hpp"
183
195
  #include "RenewalInfoIOS.hpp"
184
196
  #include "NitroPurchaseRequest.hpp"
@@ -481,6 +493,14 @@ namespace margelo::nitro::iap {
481
493
  auto __value = std::move(__result.value());
482
494
  return __value;
483
495
  }
496
+ inline std::shared_ptr<Promise<std::vector<NitroPurchase>>> getAllTransactionsIOS() override {
497
+ auto __result = _swiftPart.getAllTransactionsIOS();
498
+ if (__result.hasError()) [[unlikely]] {
499
+ std::rethrow_exception(__result.error());
500
+ }
501
+ auto __value = std::move(__result.value());
502
+ return __value;
503
+ }
484
504
  inline std::shared_ptr<Promise<bool>> syncIOS() override {
485
505
  auto __result = _swiftPart.syncIOS();
486
506
  if (__result.hasError()) [[unlikely]] {