react-native-iap 16.3.0 → 16.3.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 (55) hide show
  1. package/README.md +2 -2
  2. package/android/src/main/java/com/margelo/nitro/iap/HybridRnIap.kt +111 -15
  3. package/ios/HybridRnIap.swift +1 -1
  4. package/lib/module/index.js +51 -6
  5. package/lib/module/index.js.map +1 -1
  6. package/lib/module/index.kepler.js +9 -0
  7. package/lib/module/index.kepler.js.map +1 -1
  8. package/lib/module/kit-api.js +3 -1
  9. package/lib/module/kit-api.js.map +1 -1
  10. package/lib/module/types.js +2 -0
  11. package/lib/module/types.js.map +1 -1
  12. package/lib/module/vega-adapter.js +3 -4
  13. package/lib/module/vega-adapter.js.map +1 -1
  14. package/lib/typescript/src/index.d.ts.map +1 -1
  15. package/lib/typescript/src/index.kepler.d.ts.map +1 -1
  16. package/lib/typescript/src/kit-api.d.ts +119 -2
  17. package/lib/typescript/src/kit-api.d.ts.map +1 -1
  18. package/lib/typescript/src/specs/RnIap.nitro.d.ts +9 -3
  19. package/lib/typescript/src/specs/RnIap.nitro.d.ts.map +1 -1
  20. package/lib/typescript/src/types.d.ts +33 -9
  21. package/lib/typescript/src/types.d.ts.map +1 -1
  22. package/lib/typescript/src/vega-adapter.d.ts.map +1 -1
  23. package/nitrogen/generated/android/NitroIap+autolinking.cmake +1 -1
  24. package/nitrogen/generated/android/c++/JHybridRnIapSpec.cpp +8 -4
  25. package/nitrogen/generated/android/c++/JHybridRnIapSpec.hpp +1 -1
  26. package/nitrogen/generated/android/c++/JNitroPurchaseVerificationResultAndroid.hpp +5 -1
  27. package/nitrogen/generated/android/c++/JNitroPurchaseVerificationResultHorizon.hpp +69 -0
  28. package/nitrogen/generated/android/c++/JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon.cpp +30 -0
  29. package/nitrogen/generated/android/c++/{JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid.hpp → JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon.hpp} +33 -16
  30. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/HybridRnIapSpec.kt +1 -1
  31. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchaseVerificationResultAndroid.kt +8 -3
  32. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/NitroPurchaseVerificationResultHorizon.kt +61 -0
  33. package/nitrogen/generated/android/kotlin/com/margelo/nitro/iap/{Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid.kt → Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon.kt} +21 -8
  34. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.cpp +4 -4
  35. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Bridge.hpp +43 -34
  36. package/nitrogen/generated/ios/NitroIap-Swift-Cxx-Umbrella.hpp +3 -0
  37. package/nitrogen/generated/ios/c++/HybridRnIapSpecSwift.hpp +4 -1
  38. package/nitrogen/generated/ios/swift/{Func_void_std__variant_NitroPurchaseVerificationResultIOS__NitroPurchaseVerificationResultAndroid_.swift → Func_void_std__variant_NitroPurchaseVerificationResultIOS__NitroPurchaseVerificationResultAndroid__NitroPurchaseVerificationResultHorizon_.swift} +14 -11
  39. package/nitrogen/generated/ios/swift/HybridRnIapSpec.swift +1 -1
  40. package/nitrogen/generated/ios/swift/HybridRnIapSpec_cxx.swift +11 -9
  41. package/nitrogen/generated/ios/swift/NitroPurchaseVerificationResultAndroid.swift +7 -2
  42. package/nitrogen/generated/ios/swift/NitroPurchaseVerificationResultHorizon.swift +71 -0
  43. package/nitrogen/generated/ios/swift/{Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid.swift → Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon.swift} +6 -4
  44. package/nitrogen/generated/shared/c++/HybridRnIapSpec.hpp +4 -1
  45. package/nitrogen/generated/shared/c++/NitroPurchaseVerificationResultAndroid.hpp +5 -1
  46. package/nitrogen/generated/shared/c++/NitroPurchaseVerificationResultHorizon.hpp +93 -0
  47. package/openiap-versions.json +3 -3
  48. package/package.json +1 -1
  49. package/src/index.kepler.ts +10 -2
  50. package/src/index.ts +88 -18
  51. package/src/kit-api.ts +125 -4
  52. package/src/specs/RnIap.nitro.ts +12 -2
  53. package/src/types.ts +34 -9
  54. package/src/vega-adapter.ts +6 -11
  55. package/nitrogen/generated/android/c++/JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid.cpp +0 -26
@@ -61,6 +61,8 @@ namespace margelo::nitro::iap { struct NitroSubscriptionStatus; }
61
61
  namespace margelo::nitro::iap { struct NitroPurchaseVerificationResultIOS; }
62
62
  // Forward declaration of `NitroPurchaseVerificationResultAndroid` to properly resolve imports.
63
63
  namespace margelo::nitro::iap { struct NitroPurchaseVerificationResultAndroid; }
64
+ // Forward declaration of `NitroPurchaseVerificationResultHorizon` to properly resolve imports.
65
+ namespace margelo::nitro::iap { struct NitroPurchaseVerificationResultHorizon; }
64
66
  // Forward declaration of `NitroVerifyPurchaseWithProviderResult` to properly resolve imports.
65
67
  namespace margelo::nitro::iap { struct NitroVerifyPurchaseWithProviderResult; }
66
68
  // Forward declaration of `NitroVerifyPurchaseWithIapkitResult` to properly resolve imports.
@@ -271,9 +273,11 @@ namespace margelo::nitro::iap { enum class ExternalPurchaseCustomLinkNoticeTypeI
271
273
  #include "JNitroSubscriptionStatus.hpp"
272
274
  #include "NitroPurchaseVerificationResultIOS.hpp"
273
275
  #include "NitroPurchaseVerificationResultAndroid.hpp"
274
- #include "JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid.hpp"
276
+ #include "NitroPurchaseVerificationResultHorizon.hpp"
277
+ #include "JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon.hpp"
275
278
  #include "JNitroPurchaseVerificationResultIOS.hpp"
276
279
  #include "JNitroPurchaseVerificationResultAndroid.hpp"
280
+ #include "JNitroPurchaseVerificationResultHorizon.hpp"
277
281
  #include "NitroVerifyPurchaseWithProviderResult.hpp"
278
282
  #include "JNitroVerifyPurchaseWithProviderResult.hpp"
279
283
  #include "NitroVerifyPurchaseWithIapkitResult.hpp"
@@ -991,13 +995,13 @@ namespace margelo::nitro::iap {
991
995
  return __promise;
992
996
  }();
993
997
  }
994
- std::shared_ptr<Promise<std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid>>> JHybridRnIapSpec::verifyPurchase(const NitroPurchaseVerificationParams& params) {
998
+ std::shared_ptr<Promise<std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid, NitroPurchaseVerificationResultHorizon>>> JHybridRnIapSpec::verifyPurchase(const NitroPurchaseVerificationParams& params) {
995
999
  static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>(jni::alias_ref<JNitroPurchaseVerificationParams> /* params */)>("verifyPurchase");
996
1000
  auto __result = method(_javaPart, JNitroPurchaseVerificationParams::fromCpp(params));
997
1001
  return [&]() {
998
- auto __promise = Promise<std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid>>::create();
1002
+ auto __promise = Promise<std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid, NitroPurchaseVerificationResultHorizon>>::create();
999
1003
  __result->cthis()->addOnResolvedListener([=](const jni::alias_ref<jni::JObject>& __boxedResult) {
1000
- auto __result = jni::static_ref_cast<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid>(__boxedResult);
1004
+ auto __result = jni::static_ref_cast<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon>(__boxedResult);
1001
1005
  __promise->resolve(__result->toCpp());
1002
1006
  });
1003
1007
  __result->cthis()->addOnRejectedListener([=](const jni::alias_ref<jni::JThrowable>& __throwable) {
@@ -86,7 +86,7 @@ namespace margelo::nitro::iap {
86
86
  std::shared_ptr<Promise<std::string>> requestReceiptRefreshIOS() override;
87
87
  std::shared_ptr<Promise<bool>> isTransactionVerifiedIOS(const std::string& sku) override;
88
88
  std::shared_ptr<Promise<std::variant<nitro::NullType, std::string>>> getTransactionJwsIOS(const std::string& sku) override;
89
- std::shared_ptr<Promise<std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid>>> verifyPurchase(const NitroPurchaseVerificationParams& params) override;
89
+ std::shared_ptr<Promise<std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid, NitroPurchaseVerificationResultHorizon>>> verifyPurchase(const NitroPurchaseVerificationParams& params) override;
90
90
  std::shared_ptr<Promise<NitroVerifyPurchaseWithProviderResult>> verifyPurchaseWithProvider(const NitroVerifyPurchaseWithProviderProps& params) override;
91
91
  std::shared_ptr<Promise<std::string>> getStorefront() override;
92
92
  std::shared_ptr<Promise<void>> deepLinkToSubscriptionsAndroid(const NitroDeepLinkOptionsAndroid& options) override;
@@ -37,6 +37,8 @@ namespace margelo::nitro::iap {
37
37
  [[nodiscard]]
38
38
  NitroPurchaseVerificationResultAndroid toCpp() const {
39
39
  static const auto clazz = javaClassStatic();
40
+ static const auto fieldIsValid = clazz->getField<jboolean>("isValid");
41
+ jboolean isValid = this->getFieldValue(fieldIsValid);
40
42
  static const auto fieldAutoRenewing = clazz->getField<jboolean>("autoRenewing");
41
43
  jboolean autoRenewing = this->getFieldValue(fieldAutoRenewing);
42
44
  static const auto fieldBetaProduct = clazz->getField<jboolean>("betaProduct");
@@ -74,6 +76,7 @@ namespace margelo::nitro::iap {
74
76
  static const auto fieldTestTransaction = clazz->getField<jboolean>("testTransaction");
75
77
  jboolean testTransaction = this->getFieldValue(fieldTestTransaction);
76
78
  return NitroPurchaseVerificationResultAndroid(
79
+ static_cast<bool>(isValid),
77
80
  static_cast<bool>(autoRenewing),
78
81
  static_cast<bool>(betaProduct),
79
82
  cancelDate != nullptr ? std::make_optional(cancelDate->toCpp()) : std::nullopt,
@@ -101,11 +104,12 @@ namespace margelo::nitro::iap {
101
104
  */
102
105
  [[maybe_unused]]
103
106
  static jni::local_ref<JNitroPurchaseVerificationResultAndroid::javaobject> fromCpp(const NitroPurchaseVerificationResultAndroid& value) {
104
- using JSignature = JNitroPurchaseVerificationResultAndroid(jboolean, jboolean, jni::alias_ref<JVariant_NullType_Double>, jni::alias_ref<JVariant_NullType_String>, jni::alias_ref<JVariant_NullType_Double>, jni::alias_ref<JVariant_NullType_String>, double, double, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, double, double, jni::alias_ref<jni::JString>, double, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jboolean);
107
+ using JSignature = JNitroPurchaseVerificationResultAndroid(jboolean, jboolean, jboolean, jni::alias_ref<JVariant_NullType_Double>, jni::alias_ref<JVariant_NullType_String>, jni::alias_ref<JVariant_NullType_Double>, jni::alias_ref<JVariant_NullType_String>, double, double, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, double, double, jni::alias_ref<jni::JString>, double, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jboolean);
105
108
  static const auto clazz = javaClassStatic();
106
109
  static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
107
110
  return create(
108
111
  clazz,
112
+ value.isValid,
109
113
  value.autoRenewing,
110
114
  value.betaProduct,
111
115
  value.cancelDate.has_value() ? JVariant_NullType_Double::fromCpp(value.cancelDate.value()) : nullptr,
@@ -0,0 +1,69 @@
1
+ ///
2
+ /// JNitroPurchaseVerificationResultHorizon.hpp
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
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "NitroPurchaseVerificationResultHorizon.hpp"
12
+
13
+ #include "JVariant_NullType_Double.hpp"
14
+ #include <NitroModules/JNull.hpp>
15
+ #include <NitroModules/Null.hpp>
16
+ #include <optional>
17
+ #include <variant>
18
+
19
+ namespace margelo::nitro::iap {
20
+
21
+ using namespace facebook;
22
+
23
+ /**
24
+ * The C++ JNI bridge between the C++ struct "NitroPurchaseVerificationResultHorizon" and the Kotlin data class "NitroPurchaseVerificationResultHorizon".
25
+ */
26
+ struct JNitroPurchaseVerificationResultHorizon final: public jni::JavaClass<JNitroPurchaseVerificationResultHorizon> {
27
+ public:
28
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/iap/NitroPurchaseVerificationResultHorizon;";
29
+
30
+ public:
31
+ /**
32
+ * Convert this Java/Kotlin-based struct to the C++ struct NitroPurchaseVerificationResultHorizon by copying all values to C++.
33
+ */
34
+ [[maybe_unused]]
35
+ [[nodiscard]]
36
+ NitroPurchaseVerificationResultHorizon toCpp() const {
37
+ static const auto clazz = javaClassStatic();
38
+ static const auto fieldIsValid = clazz->getField<jboolean>("isValid");
39
+ jboolean isValid = this->getFieldValue(fieldIsValid);
40
+ static const auto fieldGrantTime = clazz->getField<JVariant_NullType_Double>("grantTime");
41
+ jni::local_ref<JVariant_NullType_Double> grantTime = this->getFieldValue(fieldGrantTime);
42
+ static const auto fieldSuccess = clazz->getField<jboolean>("success");
43
+ jboolean success = this->getFieldValue(fieldSuccess);
44
+ return NitroPurchaseVerificationResultHorizon(
45
+ static_cast<bool>(isValid),
46
+ grantTime != nullptr ? std::make_optional(grantTime->toCpp()) : std::nullopt,
47
+ static_cast<bool>(success)
48
+ );
49
+ }
50
+
51
+ public:
52
+ /**
53
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
54
+ */
55
+ [[maybe_unused]]
56
+ static jni::local_ref<JNitroPurchaseVerificationResultHorizon::javaobject> fromCpp(const NitroPurchaseVerificationResultHorizon& value) {
57
+ using JSignature = JNitroPurchaseVerificationResultHorizon(jboolean, jni::alias_ref<JVariant_NullType_Double>, jboolean);
58
+ static const auto clazz = javaClassStatic();
59
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
60
+ return create(
61
+ clazz,
62
+ value.isValid,
63
+ value.grantTime.has_value() ? JVariant_NullType_Double::fromCpp(value.grantTime.value()) : nullptr,
64
+ value.success
65
+ );
66
+ }
67
+ };
68
+
69
+ } // namespace margelo::nitro::iap
@@ -0,0 +1,30 @@
1
+ ///
2
+ /// JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon.cpp
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
+ #include "JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon.hpp"
9
+
10
+ namespace margelo::nitro::iap {
11
+ /**
12
+ * Converts JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon to std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid, NitroPurchaseVerificationResultHorizon>
13
+ */
14
+ std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid, NitroPurchaseVerificationResultHorizon> JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon::toCpp() const {
15
+ if (isInstanceOf(JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon_impl::First::javaClassStatic())) {
16
+ // It's a `NitroPurchaseVerificationResultIOS`
17
+ auto jniValue = static_cast<const JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon_impl::First*>(this)->getValue();
18
+ return jniValue->toCpp();
19
+ } else if (isInstanceOf(JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon_impl::Second::javaClassStatic())) {
20
+ // It's a `NitroPurchaseVerificationResultAndroid`
21
+ auto jniValue = static_cast<const JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon_impl::Second*>(this)->getValue();
22
+ return jniValue->toCpp();
23
+ } else if (isInstanceOf(JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon_impl::Third::javaClassStatic())) {
24
+ // It's a `NitroPurchaseVerificationResultHorizon`
25
+ auto jniValue = static_cast<const JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon_impl::Third*>(this)->getValue();
26
+ return jniValue->toCpp();
27
+ }
28
+ throw std::invalid_argument("Variant is unknown Kotlin instance!");
29
+ }
30
+ } // namespace margelo::nitro::iap
@@ -1,5 +1,5 @@
1
1
  ///
2
- /// JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid.hpp
2
+ /// JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © Marc Rousavy @ Margelo
@@ -12,6 +12,7 @@
12
12
 
13
13
  #include "NitroPurchaseVerificationResultIOS.hpp"
14
14
  #include "NitroPurchaseVerificationResultAndroid.hpp"
15
+ #include "NitroPurchaseVerificationResultHorizon.hpp"
15
16
  #include <variant>
16
17
  #include "JNitroPurchaseVerificationResultIOS.hpp"
17
18
  #include <string>
@@ -61,42 +62,48 @@
61
62
  #include "JVariant_NullType_PendingPurchaseUpdateAndroid.hpp"
62
63
  #include "JPendingPurchaseUpdateAndroid.hpp"
63
64
  #include "JNitroPurchaseVerificationResultAndroid.hpp"
65
+ #include "JNitroPurchaseVerificationResultHorizon.hpp"
64
66
 
65
67
  namespace margelo::nitro::iap {
66
68
 
67
69
  using namespace facebook;
68
70
 
69
71
  /**
70
- * The C++ JNI bridge between the C++ std::variant and the Java class "Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid".
72
+ * The C++ JNI bridge between the C++ std::variant and the Java class "Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon".
71
73
  */
72
- class JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid: public jni::JavaClass<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid> {
74
+ class JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon: public jni::JavaClass<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon> {
73
75
  public:
74
- static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/iap/Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid;";
76
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/iap/Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon;";
75
77
 
76
- static jni::local_ref<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid> create_0(jni::alias_ref<JNitroPurchaseVerificationResultIOS> value) {
77
- static const auto method = javaClassStatic()->getStaticMethod<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid(jni::alias_ref<JNitroPurchaseVerificationResultIOS>)>("create");
78
+ static jni::local_ref<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon> create_0(jni::alias_ref<JNitroPurchaseVerificationResultIOS> value) {
79
+ static const auto method = javaClassStatic()->getStaticMethod<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon(jni::alias_ref<JNitroPurchaseVerificationResultIOS>)>("create");
78
80
  return method(javaClassStatic(), value);
79
81
  }
80
- static jni::local_ref<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid> create_1(jni::alias_ref<JNitroPurchaseVerificationResultAndroid> value) {
81
- static const auto method = javaClassStatic()->getStaticMethod<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid(jni::alias_ref<JNitroPurchaseVerificationResultAndroid>)>("create");
82
+ static jni::local_ref<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon> create_1(jni::alias_ref<JNitroPurchaseVerificationResultAndroid> value) {
83
+ static const auto method = javaClassStatic()->getStaticMethod<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon(jni::alias_ref<JNitroPurchaseVerificationResultAndroid>)>("create");
84
+ return method(javaClassStatic(), value);
85
+ }
86
+ static jni::local_ref<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon> create_2(jni::alias_ref<JNitroPurchaseVerificationResultHorizon> value) {
87
+ static const auto method = javaClassStatic()->getStaticMethod<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon(jni::alias_ref<JNitroPurchaseVerificationResultHorizon>)>("create");
82
88
  return method(javaClassStatic(), value);
83
89
  }
84
90
 
85
- static jni::local_ref<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid> fromCpp(const std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid>& variant) {
91
+ static jni::local_ref<JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon> fromCpp(const std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid, NitroPurchaseVerificationResultHorizon>& variant) {
86
92
  switch (variant.index()) {
87
93
  case 0: return create_0(JNitroPurchaseVerificationResultIOS::fromCpp(std::get<0>(variant)));
88
94
  case 1: return create_1(JNitroPurchaseVerificationResultAndroid::fromCpp(std::get<1>(variant)));
95
+ case 2: return create_2(JNitroPurchaseVerificationResultHorizon::fromCpp(std::get<2>(variant)));
89
96
  default: throw std::invalid_argument("Variant holds unknown index! (" + std::to_string(variant.index()) + ")");
90
97
  }
91
98
  }
92
99
 
93
- [[nodiscard]] std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid> toCpp() const;
100
+ [[nodiscard]] std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid, NitroPurchaseVerificationResultHorizon> toCpp() const;
94
101
  };
95
102
 
96
- namespace JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_impl {
97
- class First final: public jni::JavaClass<First, JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid> {
103
+ namespace JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon_impl {
104
+ class First final: public jni::JavaClass<First, JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon> {
98
105
  public:
99
- static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/iap/Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid$First;";
106
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/iap/Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon$First;";
100
107
 
101
108
  [[nodiscard]] jni::local_ref<JNitroPurchaseVerificationResultIOS> getValue() const {
102
109
  static const auto field = javaClassStatic()->getField<JNitroPurchaseVerificationResultIOS>("value");
@@ -104,14 +111,24 @@ namespace margelo::nitro::iap {
104
111
  }
105
112
  };
106
113
 
107
- class Second final: public jni::JavaClass<Second, JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid> {
114
+ class Second final: public jni::JavaClass<Second, JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon> {
108
115
  public:
109
- static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/iap/Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid$Second;";
116
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/iap/Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon$Second;";
110
117
 
111
118
  [[nodiscard]] jni::local_ref<JNitroPurchaseVerificationResultAndroid> getValue() const {
112
119
  static const auto field = javaClassStatic()->getField<JNitroPurchaseVerificationResultAndroid>("value");
113
120
  return getFieldValue(field);
114
121
  }
115
122
  };
116
- } // namespace JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_impl
123
+
124
+ class Third final: public jni::JavaClass<Third, JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon> {
125
+ public:
126
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/iap/Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon$Third;";
127
+
128
+ [[nodiscard]] jni::local_ref<JNitroPurchaseVerificationResultHorizon> getValue() const {
129
+ static const auto field = javaClassStatic()->getField<JNitroPurchaseVerificationResultHorizon>("value");
130
+ return getFieldValue(field);
131
+ }
132
+ };
133
+ } // namespace JVariant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon_impl
117
134
  } // namespace margelo::nitro::iap
@@ -186,7 +186,7 @@ abstract class HybridRnIapSpec: HybridObject() {
186
186
 
187
187
  @DoNotStrip
188
188
  @Keep
189
- abstract fun verifyPurchase(params: NitroPurchaseVerificationParams): Promise<Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid>
189
+ abstract fun verifyPurchase(params: NitroPurchaseVerificationParams): Promise<Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon>
190
190
 
191
191
  @DoNotStrip
192
192
  @Keep
@@ -18,6 +18,9 @@ import com.margelo.nitro.core.NullType
18
18
  @DoNotStrip
19
19
  @Keep
20
20
  data class NitroPurchaseVerificationResultAndroid(
21
+ @DoNotStrip
22
+ @Keep
23
+ val isValid: Boolean,
21
24
  @DoNotStrip
22
25
  @Keep
23
26
  val autoRenewing: Boolean,
@@ -78,7 +81,8 @@ data class NitroPurchaseVerificationResultAndroid(
78
81
  override fun equals(other: Any?): Boolean {
79
82
  if (this === other) return true
80
83
  if (other !is NitroPurchaseVerificationResultAndroid) return false
81
- return Objects.deepEquals(this.autoRenewing, other.autoRenewing)
84
+ return Objects.deepEquals(this.isValid, other.isValid)
85
+ && Objects.deepEquals(this.autoRenewing, other.autoRenewing)
82
86
  && Objects.deepEquals(this.betaProduct, other.betaProduct)
83
87
  && Objects.deepEquals(this.cancelDate, other.cancelDate)
84
88
  && Objects.deepEquals(this.cancelReason, other.cancelReason)
@@ -100,6 +104,7 @@ data class NitroPurchaseVerificationResultAndroid(
100
104
 
101
105
  override fun hashCode(): Int {
102
106
  return arrayOf<Any?>(
107
+ isValid,
103
108
  autoRenewing,
104
109
  betaProduct,
105
110
  cancelDate,
@@ -129,8 +134,8 @@ data class NitroPurchaseVerificationResultAndroid(
129
134
  @Keep
130
135
  @Suppress("unused")
131
136
  @JvmStatic
132
- private fun fromCpp(autoRenewing: Boolean, betaProduct: Boolean, cancelDate: Variant_NullType_Double?, cancelReason: Variant_NullType_String?, deferredDate: Variant_NullType_Double?, deferredSku: Variant_NullType_String?, freeTrialEndDate: Double, gracePeriodEndDate: Double, parentProductId: String, productId: String, productType: String, purchaseDate: Double, quantity: Double, receiptId: String, renewalDate: Double, term: String, termSku: String, testTransaction: Boolean): NitroPurchaseVerificationResultAndroid {
133
- return NitroPurchaseVerificationResultAndroid(autoRenewing, betaProduct, cancelDate, cancelReason, deferredDate, deferredSku, freeTrialEndDate, gracePeriodEndDate, parentProductId, productId, productType, purchaseDate, quantity, receiptId, renewalDate, term, termSku, testTransaction)
137
+ private fun fromCpp(isValid: Boolean, autoRenewing: Boolean, betaProduct: Boolean, cancelDate: Variant_NullType_Double?, cancelReason: Variant_NullType_String?, deferredDate: Variant_NullType_Double?, deferredSku: Variant_NullType_String?, freeTrialEndDate: Double, gracePeriodEndDate: Double, parentProductId: String, productId: String, productType: String, purchaseDate: Double, quantity: Double, receiptId: String, renewalDate: Double, term: String, termSku: String, testTransaction: Boolean): NitroPurchaseVerificationResultAndroid {
138
+ return NitroPurchaseVerificationResultAndroid(isValid, autoRenewing, betaProduct, cancelDate, cancelReason, deferredDate, deferredSku, freeTrialEndDate, gracePeriodEndDate, parentProductId, productId, productType, purchaseDate, quantity, receiptId, renewalDate, term, termSku, testTransaction)
134
139
  }
135
140
  }
136
141
  }
@@ -0,0 +1,61 @@
1
+ ///
2
+ /// NitroPurchaseVerificationResultHorizon.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 java.util.Objects
13
+ import com.margelo.nitro.core.NullType
14
+
15
+ /**
16
+ * Represents the JavaScript object/struct "NitroPurchaseVerificationResultHorizon".
17
+ */
18
+ @DoNotStrip
19
+ @Keep
20
+ data class NitroPurchaseVerificationResultHorizon(
21
+ @DoNotStrip
22
+ @Keep
23
+ val isValid: Boolean,
24
+ @DoNotStrip
25
+ @Keep
26
+ val grantTime: Variant_NullType_Double?,
27
+ @DoNotStrip
28
+ @Keep
29
+ val success: Boolean
30
+ ) {
31
+ /* primary constructor */
32
+
33
+ override fun equals(other: Any?): Boolean {
34
+ if (this === other) return true
35
+ if (other !is NitroPurchaseVerificationResultHorizon) return false
36
+ return Objects.deepEquals(this.isValid, other.isValid)
37
+ && Objects.deepEquals(this.grantTime, other.grantTime)
38
+ && Objects.deepEquals(this.success, other.success)
39
+ }
40
+
41
+ override fun hashCode(): Int {
42
+ return arrayOf<Any?>(
43
+ isValid,
44
+ grantTime,
45
+ success
46
+ ).contentDeepHashCode()
47
+ }
48
+
49
+ companion object {
50
+ /**
51
+ * Constructor called from C++
52
+ */
53
+ @DoNotStrip
54
+ @Keep
55
+ @Suppress("unused")
56
+ @JvmStatic
57
+ private fun fromCpp(isValid: Boolean, grantTime: Variant_NullType_Double?, success: Boolean): NitroPurchaseVerificationResultHorizon {
58
+ return NitroPurchaseVerificationResultHorizon(isValid, grantTime, success)
59
+ }
60
+ }
61
+ }
@@ -1,5 +1,5 @@
1
1
  ///
2
- /// Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid.kt
2
+ /// Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon.kt
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © Marc Rousavy @ Margelo
@@ -11,29 +11,33 @@ import com.facebook.proguard.annotations.DoNotStrip
11
11
 
12
12
 
13
13
  /**
14
- * Represents the TypeScript variant "NitroPurchaseVerificationResultIOS | NitroPurchaseVerificationResultAndroid".
14
+ * Represents the TypeScript variant "NitroPurchaseVerificationResultIOS | NitroPurchaseVerificationResultAndroid | NitroPurchaseVerificationResultHorizon".
15
15
  */
16
16
  @Suppress("ClassName")
17
17
  @DoNotStrip
18
- sealed class Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid {
18
+ sealed class Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon {
19
19
  @DoNotStrip
20
- data class First(@DoNotStrip val value: NitroPurchaseVerificationResultIOS): Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid()
20
+ data class First(@DoNotStrip val value: NitroPurchaseVerificationResultIOS): Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon()
21
21
  @DoNotStrip
22
- data class Second(@DoNotStrip val value: NitroPurchaseVerificationResultAndroid): Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid()
22
+ data class Second(@DoNotStrip val value: NitroPurchaseVerificationResultAndroid): Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon()
23
+ @DoNotStrip
24
+ data class Third(@DoNotStrip val value: NitroPurchaseVerificationResultHorizon): Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon()
23
25
 
24
26
  inline fun <reified T> asType(): T? {
25
27
  return when (this) {
26
28
  is First -> (value) as? T
27
29
  is Second -> (value) as? T
30
+ is Third -> (value) as? T
28
31
  }
29
32
  }
30
33
  inline fun <reified T> isType(): Boolean {
31
34
  return asType<T>() != null
32
35
  }
33
- inline fun <R> match(first: (NitroPurchaseVerificationResultIOS) -> R, second: (NitroPurchaseVerificationResultAndroid) -> R): R {
36
+ inline fun <R> match(first: (NitroPurchaseVerificationResultIOS) -> R, second: (NitroPurchaseVerificationResultAndroid) -> R, third: (NitroPurchaseVerificationResultHorizon) -> R): R {
34
37
  return when (this) {
35
38
  is First -> first(value)
36
39
  is Second -> second(value)
40
+ is Third -> third(value)
37
41
  }
38
42
  }
39
43
 
@@ -41,6 +45,8 @@ sealed class Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificatio
41
45
  get() = this is First
42
46
  val isSecond: Boolean
43
47
  get() = this is Second
48
+ val isThird: Boolean
49
+ get() = this is Third
44
50
 
45
51
  fun asFirstOrNull(): NitroPurchaseVerificationResultIOS? {
46
52
  val value = (this as? First)?.value ?: return null
@@ -50,13 +56,20 @@ sealed class Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificatio
50
56
  val value = (this as? Second)?.value ?: return null
51
57
  return value
52
58
  }
59
+ fun asThirdOrNull(): NitroPurchaseVerificationResultHorizon? {
60
+ val value = (this as? Third)?.value ?: return null
61
+ return value
62
+ }
53
63
 
54
64
  companion object {
55
65
  @JvmStatic
56
66
  @DoNotStrip
57
- fun create(value: NitroPurchaseVerificationResultIOS): Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid = First(value)
67
+ fun create(value: NitroPurchaseVerificationResultIOS): Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon = First(value)
68
+ @JvmStatic
69
+ @DoNotStrip
70
+ fun create(value: NitroPurchaseVerificationResultAndroid): Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon = Second(value)
58
71
  @JvmStatic
59
72
  @DoNotStrip
60
- fun create(value: NitroPurchaseVerificationResultAndroid): Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid = Second(value)
73
+ fun create(value: NitroPurchaseVerificationResultHorizon): Variant_NitroPurchaseVerificationResultIOS_NitroPurchaseVerificationResultAndroid_NitroPurchaseVerificationResultHorizon = Third(value)
61
74
  }
62
75
  }
@@ -142,10 +142,10 @@ namespace margelo::nitro::iap::bridge::swift {
142
142
  };
143
143
  }
144
144
 
145
- // pragma MARK: std::function<void(const std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid>& /* result */)>
146
- Func_void_std__variant_NitroPurchaseVerificationResultIOS__NitroPurchaseVerificationResultAndroid_ create_Func_void_std__variant_NitroPurchaseVerificationResultIOS__NitroPurchaseVerificationResultAndroid_(void* NON_NULL swiftClosureWrapper) noexcept {
147
- auto swiftClosure = NitroIap::Func_void_std__variant_NitroPurchaseVerificationResultIOS__NitroPurchaseVerificationResultAndroid_::fromUnsafe(swiftClosureWrapper);
148
- return [swiftClosure = std::move(swiftClosure)](const std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid>& result) mutable -> void {
145
+ // pragma MARK: std::function<void(const std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid, NitroPurchaseVerificationResultHorizon>& /* result */)>
146
+ Func_void_std__variant_NitroPurchaseVerificationResultIOS__NitroPurchaseVerificationResultAndroid__NitroPurchaseVerificationResultHorizon_ create_Func_void_std__variant_NitroPurchaseVerificationResultIOS__NitroPurchaseVerificationResultAndroid__NitroPurchaseVerificationResultHorizon_(void* NON_NULL swiftClosureWrapper) noexcept {
147
+ auto swiftClosure = NitroIap::Func_void_std__variant_NitroPurchaseVerificationResultIOS__NitroPurchaseVerificationResultAndroid__NitroPurchaseVerificationResultHorizon_::fromUnsafe(swiftClosureWrapper);
148
+ return [swiftClosure = std::move(swiftClosure)](const std::variant<NitroPurchaseVerificationResultIOS, NitroPurchaseVerificationResultAndroid, NitroPurchaseVerificationResultHorizon>& result) mutable -> void {
149
149
  swiftClosure.call(result);
150
150
  };
151
151
  }