@onekeyfe/react-native-perp-depth-bar 3.0.81 → 3.0.85

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 (139) hide show
  1. package/lib/nitrogen/generated/android/c++/JFunc_void_double.hpp +3 -3
  2. package/lib/nitrogen/generated/android/c++/JHybridPerpDepthBarsSpec.cpp +58 -58
  3. package/lib/nitrogen/generated/android/c++/JHybridPerpDepthBarsSpec.hpp +20 -22
  4. package/lib/nitrogen/generated/android/c++/JHybridPerpSideRatioSpec.cpp +37 -36
  5. package/lib/nitrogen/generated/android/c++/JHybridPerpSideRatioSpec.hpp +20 -22
  6. package/lib/nitrogen/generated/android/c++/views/JHybridPerpDepthBarsStateUpdater.cpp +68 -68
  7. package/lib/nitrogen/generated/android/c++/views/JHybridPerpDepthBarsStateUpdater.hpp +4 -4
  8. package/lib/nitrogen/generated/android/c++/views/JHybridPerpSideRatioStateUpdater.cpp +38 -38
  9. package/lib/nitrogen/generated/android/c++/views/JHybridPerpSideRatioStateUpdater.hpp +4 -4
  10. package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/Func_void_double.kt +1 -1
  11. package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/HybridPerpDepthBarsSpec.kt +17 -19
  12. package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/HybridPerpSideRatioSpec.kt +17 -19
  13. package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/perpdepthbarOnLoad.kt +1 -1
  14. package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/views/HybridPerpDepthBarsManager.kt +40 -10
  15. package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/views/HybridPerpDepthBarsStateUpdater.kt +1 -1
  16. package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/views/HybridPerpSideRatioManager.kt +40 -10
  17. package/lib/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/views/HybridPerpSideRatioStateUpdater.kt +1 -1
  18. package/lib/nitrogen/generated/android/perpdepthbar+autolinking.cmake +1 -1
  19. package/lib/nitrogen/generated/android/perpdepthbar+autolinking.gradle +1 -1
  20. package/lib/nitrogen/generated/android/perpdepthbarOnLoad.cpp +45 -29
  21. package/lib/nitrogen/generated/android/perpdepthbarOnLoad.hpp +14 -5
  22. package/lib/nitrogen/generated/ios/PerpDepthBar+autolinking.rb +2 -2
  23. package/lib/nitrogen/generated/ios/PerpDepthBar-Swift-Cxx-Bridge.cpp +1 -1
  24. package/lib/nitrogen/generated/ios/PerpDepthBar-Swift-Cxx-Bridge.hpp +2 -2
  25. package/lib/nitrogen/generated/ios/PerpDepthBar-Swift-Cxx-Umbrella.hpp +1 -1
  26. package/lib/nitrogen/generated/ios/PerpDepthBarAutolinking.mm +1 -1
  27. package/lib/nitrogen/generated/ios/PerpDepthBarAutolinking.swift +13 -15
  28. package/lib/nitrogen/generated/ios/c++/HybridPerpDepthBarsSpecSwift.cpp +1 -1
  29. package/lib/nitrogen/generated/ios/c++/HybridPerpDepthBarsSpecSwift.hpp +7 -1
  30. package/lib/nitrogen/generated/ios/c++/HybridPerpSideRatioSpecSwift.cpp +1 -1
  31. package/lib/nitrogen/generated/ios/c++/HybridPerpSideRatioSpecSwift.hpp +7 -1
  32. package/lib/nitrogen/generated/ios/c++/views/HybridPerpDepthBarsComponent.mm +27 -1
  33. package/lib/nitrogen/generated/ios/c++/views/HybridPerpSideRatioComponent.mm +27 -1
  34. package/lib/nitrogen/generated/ios/swift/Func_void_double.swift +1 -2
  35. package/lib/nitrogen/generated/ios/swift/HybridPerpDepthBarsSpec.swift +3 -4
  36. package/lib/nitrogen/generated/ios/swift/HybridPerpDepthBarsSpec_cxx.swift +18 -2
  37. package/lib/nitrogen/generated/ios/swift/HybridPerpSideRatioSpec.swift +3 -4
  38. package/lib/nitrogen/generated/ios/swift/HybridPerpSideRatioSpec_cxx.swift +18 -2
  39. package/lib/nitrogen/generated/shared/c++/HybridPerpDepthBarsSpec.cpp +1 -1
  40. package/lib/nitrogen/generated/shared/c++/HybridPerpDepthBarsSpec.hpp +1 -1
  41. package/lib/nitrogen/generated/shared/c++/HybridPerpSideRatioSpec.cpp +1 -1
  42. package/lib/nitrogen/generated/shared/c++/HybridPerpSideRatioSpec.hpp +1 -1
  43. package/lib/nitrogen/generated/shared/c++/views/HybridPerpDepthBarsComponent.cpp +8 -29
  44. package/lib/nitrogen/generated/shared/c++/views/HybridPerpDepthBarsComponent.hpp +9 -6
  45. package/lib/nitrogen/generated/shared/c++/views/HybridPerpSideRatioComponent.cpp +7 -18
  46. package/lib/nitrogen/generated/shared/c++/views/HybridPerpSideRatioComponent.hpp +9 -6
  47. package/lib/nitrogen/nitrogen/generated/android/c++/JFunc_void_double.hpp +3 -3
  48. package/lib/nitrogen/nitrogen/generated/android/c++/JHybridPerpDepthBarsSpec.cpp +58 -58
  49. package/lib/nitrogen/nitrogen/generated/android/c++/JHybridPerpDepthBarsSpec.hpp +20 -22
  50. package/lib/nitrogen/nitrogen/generated/android/c++/JHybridPerpSideRatioSpec.cpp +37 -36
  51. package/lib/nitrogen/nitrogen/generated/android/c++/JHybridPerpSideRatioSpec.hpp +20 -22
  52. package/lib/nitrogen/nitrogen/generated/android/c++/views/JHybridPerpDepthBarsStateUpdater.cpp +68 -68
  53. package/lib/nitrogen/nitrogen/generated/android/c++/views/JHybridPerpDepthBarsStateUpdater.hpp +4 -4
  54. package/lib/nitrogen/nitrogen/generated/android/c++/views/JHybridPerpSideRatioStateUpdater.cpp +38 -38
  55. package/lib/nitrogen/nitrogen/generated/android/c++/views/JHybridPerpSideRatioStateUpdater.hpp +4 -4
  56. package/lib/nitrogen/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/Func_void_double.kt +1 -1
  57. package/lib/nitrogen/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/HybridPerpDepthBarsSpec.kt +17 -19
  58. package/lib/nitrogen/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/HybridPerpSideRatioSpec.kt +17 -19
  59. package/lib/nitrogen/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/perpdepthbarOnLoad.kt +1 -1
  60. package/lib/nitrogen/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/views/HybridPerpDepthBarsManager.kt +40 -10
  61. package/lib/nitrogen/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/views/HybridPerpDepthBarsStateUpdater.kt +1 -1
  62. package/lib/nitrogen/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/views/HybridPerpSideRatioManager.kt +40 -10
  63. package/lib/nitrogen/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/views/HybridPerpSideRatioStateUpdater.kt +1 -1
  64. package/lib/nitrogen/nitrogen/generated/android/perpdepthbar+autolinking.cmake +1 -1
  65. package/lib/nitrogen/nitrogen/generated/android/perpdepthbar+autolinking.gradle +1 -1
  66. package/lib/nitrogen/nitrogen/generated/android/perpdepthbarOnLoad.cpp +45 -29
  67. package/lib/nitrogen/nitrogen/generated/android/perpdepthbarOnLoad.hpp +14 -5
  68. package/lib/nitrogen/nitrogen/generated/ios/PerpDepthBar+autolinking.rb +2 -2
  69. package/lib/nitrogen/nitrogen/generated/ios/PerpDepthBar-Swift-Cxx-Bridge.cpp +1 -1
  70. package/lib/nitrogen/nitrogen/generated/ios/PerpDepthBar-Swift-Cxx-Bridge.hpp +2 -2
  71. package/lib/nitrogen/nitrogen/generated/ios/PerpDepthBar-Swift-Cxx-Umbrella.hpp +1 -1
  72. package/lib/nitrogen/nitrogen/generated/ios/PerpDepthBarAutolinking.mm +1 -1
  73. package/lib/nitrogen/nitrogen/generated/ios/PerpDepthBarAutolinking.swift +13 -15
  74. package/lib/nitrogen/nitrogen/generated/ios/c++/HybridPerpDepthBarsSpecSwift.cpp +1 -1
  75. package/lib/nitrogen/nitrogen/generated/ios/c++/HybridPerpDepthBarsSpecSwift.hpp +7 -1
  76. package/lib/nitrogen/nitrogen/generated/ios/c++/HybridPerpSideRatioSpecSwift.cpp +1 -1
  77. package/lib/nitrogen/nitrogen/generated/ios/c++/HybridPerpSideRatioSpecSwift.hpp +7 -1
  78. package/lib/nitrogen/nitrogen/generated/ios/c++/views/HybridPerpDepthBarsComponent.mm +27 -1
  79. package/lib/nitrogen/nitrogen/generated/ios/c++/views/HybridPerpSideRatioComponent.mm +27 -1
  80. package/lib/nitrogen/nitrogen/generated/ios/swift/Func_void_double.swift +1 -2
  81. package/lib/nitrogen/nitrogen/generated/ios/swift/HybridPerpDepthBarsSpec.swift +3 -4
  82. package/lib/nitrogen/nitrogen/generated/ios/swift/HybridPerpDepthBarsSpec_cxx.swift +18 -2
  83. package/lib/nitrogen/nitrogen/generated/ios/swift/HybridPerpSideRatioSpec.swift +3 -4
  84. package/lib/nitrogen/nitrogen/generated/ios/swift/HybridPerpSideRatioSpec_cxx.swift +18 -2
  85. package/lib/nitrogen/nitrogen/generated/shared/c++/HybridPerpDepthBarsSpec.cpp +1 -1
  86. package/lib/nitrogen/nitrogen/generated/shared/c++/HybridPerpDepthBarsSpec.hpp +1 -1
  87. package/lib/nitrogen/nitrogen/generated/shared/c++/HybridPerpSideRatioSpec.cpp +1 -1
  88. package/lib/nitrogen/nitrogen/generated/shared/c++/HybridPerpSideRatioSpec.hpp +1 -1
  89. package/lib/nitrogen/nitrogen/generated/shared/c++/views/HybridPerpDepthBarsComponent.cpp +8 -29
  90. package/lib/nitrogen/nitrogen/generated/shared/c++/views/HybridPerpDepthBarsComponent.hpp +9 -6
  91. package/lib/nitrogen/nitrogen/generated/shared/c++/views/HybridPerpSideRatioComponent.cpp +7 -18
  92. package/lib/nitrogen/nitrogen/generated/shared/c++/views/HybridPerpSideRatioComponent.hpp +9 -6
  93. package/nitrogen/generated/android/c++/JFunc_void_double.hpp +3 -3
  94. package/nitrogen/generated/android/c++/JHybridPerpDepthBarsSpec.cpp +58 -58
  95. package/nitrogen/generated/android/c++/JHybridPerpDepthBarsSpec.hpp +20 -22
  96. package/nitrogen/generated/android/c++/JHybridPerpSideRatioSpec.cpp +37 -36
  97. package/nitrogen/generated/android/c++/JHybridPerpSideRatioSpec.hpp +20 -22
  98. package/nitrogen/generated/android/c++/views/JHybridPerpDepthBarsStateUpdater.cpp +68 -68
  99. package/nitrogen/generated/android/c++/views/JHybridPerpDepthBarsStateUpdater.hpp +4 -4
  100. package/nitrogen/generated/android/c++/views/JHybridPerpSideRatioStateUpdater.cpp +38 -38
  101. package/nitrogen/generated/android/c++/views/JHybridPerpSideRatioStateUpdater.hpp +4 -4
  102. package/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/Func_void_double.kt +1 -1
  103. package/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/HybridPerpDepthBarsSpec.kt +17 -19
  104. package/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/HybridPerpSideRatioSpec.kt +17 -19
  105. package/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/perpdepthbarOnLoad.kt +1 -1
  106. package/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/views/HybridPerpDepthBarsManager.kt +40 -10
  107. package/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/views/HybridPerpDepthBarsStateUpdater.kt +1 -1
  108. package/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/views/HybridPerpSideRatioManager.kt +40 -10
  109. package/nitrogen/generated/android/kotlin/com/margelo/nitro/perpdepthbar/views/HybridPerpSideRatioStateUpdater.kt +1 -1
  110. package/nitrogen/generated/android/perpdepthbar+autolinking.cmake +1 -1
  111. package/nitrogen/generated/android/perpdepthbar+autolinking.gradle +1 -1
  112. package/nitrogen/generated/android/perpdepthbarOnLoad.cpp +45 -29
  113. package/nitrogen/generated/android/perpdepthbarOnLoad.hpp +14 -5
  114. package/nitrogen/generated/ios/PerpDepthBar+autolinking.rb +2 -2
  115. package/nitrogen/generated/ios/PerpDepthBar-Swift-Cxx-Bridge.cpp +1 -1
  116. package/nitrogen/generated/ios/PerpDepthBar-Swift-Cxx-Bridge.hpp +2 -2
  117. package/nitrogen/generated/ios/PerpDepthBar-Swift-Cxx-Umbrella.hpp +1 -1
  118. package/nitrogen/generated/ios/PerpDepthBarAutolinking.mm +1 -1
  119. package/nitrogen/generated/ios/PerpDepthBarAutolinking.swift +13 -15
  120. package/nitrogen/generated/ios/c++/HybridPerpDepthBarsSpecSwift.cpp +1 -1
  121. package/nitrogen/generated/ios/c++/HybridPerpDepthBarsSpecSwift.hpp +7 -1
  122. package/nitrogen/generated/ios/c++/HybridPerpSideRatioSpecSwift.cpp +1 -1
  123. package/nitrogen/generated/ios/c++/HybridPerpSideRatioSpecSwift.hpp +7 -1
  124. package/nitrogen/generated/ios/c++/views/HybridPerpDepthBarsComponent.mm +27 -1
  125. package/nitrogen/generated/ios/c++/views/HybridPerpSideRatioComponent.mm +27 -1
  126. package/nitrogen/generated/ios/swift/Func_void_double.swift +1 -2
  127. package/nitrogen/generated/ios/swift/HybridPerpDepthBarsSpec.swift +3 -4
  128. package/nitrogen/generated/ios/swift/HybridPerpDepthBarsSpec_cxx.swift +18 -2
  129. package/nitrogen/generated/ios/swift/HybridPerpSideRatioSpec.swift +3 -4
  130. package/nitrogen/generated/ios/swift/HybridPerpSideRatioSpec_cxx.swift +18 -2
  131. package/nitrogen/generated/shared/c++/HybridPerpDepthBarsSpec.cpp +1 -1
  132. package/nitrogen/generated/shared/c++/HybridPerpDepthBarsSpec.hpp +1 -1
  133. package/nitrogen/generated/shared/c++/HybridPerpSideRatioSpec.cpp +1 -1
  134. package/nitrogen/generated/shared/c++/HybridPerpSideRatioSpec.hpp +1 -1
  135. package/nitrogen/generated/shared/c++/views/HybridPerpDepthBarsComponent.cpp +8 -29
  136. package/nitrogen/generated/shared/c++/views/HybridPerpDepthBarsComponent.hpp +9 -6
  137. package/nitrogen/generated/shared/c++/views/HybridPerpSideRatioComponent.cpp +7 -18
  138. package/nitrogen/generated/shared/c++/views/HybridPerpSideRatioComponent.hpp +9 -6
  139. package/package.json +4 -4
@@ -2,7 +2,7 @@
2
2
  /// HybridPerpDepthBarsSpec.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -18,33 +18,33 @@ namespace margelo::nitro::perpdepthbar {
18
18
 
19
19
  using namespace facebook;
20
20
 
21
- class JHybridPerpDepthBarsSpec: public jni::HybridClass<JHybridPerpDepthBarsSpec, JHybridObject>,
22
- public virtual HybridPerpDepthBarsSpec {
21
+ class JHybridPerpDepthBarsSpec: public virtual HybridPerpDepthBarsSpec, public virtual JHybridObject {
23
22
  public:
24
- static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/perpdepthbar/HybridPerpDepthBarsSpec;";
25
- static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
26
- static void registerNatives();
27
-
28
- protected:
29
- // C++ constructor (called from Java via `initHybrid()`)
30
- explicit JHybridPerpDepthBarsSpec(jni::alias_ref<jhybridobject> jThis) :
31
- HybridObject(HybridPerpDepthBarsSpec::TAG),
32
- HybridBase(jThis),
33
- _javaPart(jni::make_global(jThis)) {}
23
+ struct JavaPart: public jni::JavaClass<JavaPart, JHybridObject::JavaPart> {
24
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/perpdepthbar/HybridPerpDepthBarsSpec;";
25
+ std::shared_ptr<JHybridPerpDepthBarsSpec> getJHybridPerpDepthBarsSpec();
26
+ };
27
+ struct CxxPart: public jni::HybridClass<CxxPart, JHybridObject::CxxPart> {
28
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/perpdepthbar/HybridPerpDepthBarsSpec$CxxPart;";
29
+ static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
30
+ static void registerNatives();
31
+ using HybridBase::HybridBase;
32
+ protected:
33
+ std::shared_ptr<JHybridObject> createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) override;
34
+ };
34
35
 
35
36
  public:
37
+ explicit JHybridPerpDepthBarsSpec(const jni::local_ref<JHybridPerpDepthBarsSpec::JavaPart>& javaPart):
38
+ HybridObject(HybridPerpDepthBarsSpec::TAG),
39
+ JHybridObject(javaPart),
40
+ _javaPart(jni::make_global(javaPart)) {}
36
41
  ~JHybridPerpDepthBarsSpec() override {
37
42
  // Hermes GC can destroy JS objects on a non-JNI Thread.
38
43
  jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
39
44
  }
40
45
 
41
46
  public:
42
- size_t getExternalMemorySize() noexcept override;
43
- void dispose() noexcept override;
44
- std::string toString() override;
45
-
46
- public:
47
- inline const jni::global_ref<JHybridPerpDepthBarsSpec::javaobject>& getJavaPart() const noexcept {
47
+ inline const jni::global_ref<JHybridPerpDepthBarsSpec::JavaPart>& getJavaPart() const noexcept {
48
48
  return _javaPart;
49
49
  }
50
50
 
@@ -93,9 +93,7 @@ namespace margelo::nitro::perpdepthbar {
93
93
  void setText(const std::vector<std::string>& prices, const std::vector<std::string>& sizes) override;
94
94
 
95
95
  private:
96
- friend HybridBase;
97
- using HybridBase::HybridBase;
98
- jni::global_ref<JHybridPerpDepthBarsSpec::javaobject> _javaPart;
96
+ jni::global_ref<JHybridPerpDepthBarsSpec::JavaPart> _javaPart;
99
97
  };
100
98
 
101
99
  } // namespace margelo::nitro::perpdepthbar
@@ -2,7 +2,7 @@
2
2
  /// JHybridPerpSideRatioSpec.cpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #include "JHybridPerpSideRatioSpec.hpp"
@@ -13,109 +13,110 @@
13
13
 
14
14
  namespace margelo::nitro::perpdepthbar {
15
15
 
16
- jni::local_ref<JHybridPerpSideRatioSpec::jhybriddata> JHybridPerpSideRatioSpec::initHybrid(jni::alias_ref<jhybridobject> jThis) {
17
- return makeCxxInstance(jThis);
18
- }
19
-
20
- void JHybridPerpSideRatioSpec::registerNatives() {
21
- registerHybrid({
22
- makeNativeMethod("initHybrid", JHybridPerpSideRatioSpec::initHybrid),
23
- });
16
+ std::shared_ptr<JHybridPerpSideRatioSpec> JHybridPerpSideRatioSpec::JavaPart::getJHybridPerpSideRatioSpec() {
17
+ auto hybridObject = JHybridObject::JavaPart::getJHybridObject();
18
+ auto castHybridObject = std::dynamic_pointer_cast<JHybridPerpSideRatioSpec>(hybridObject);
19
+ if (castHybridObject == nullptr) [[unlikely]] {
20
+ throw std::runtime_error("Failed to downcast JHybridObject to JHybridPerpSideRatioSpec!");
21
+ }
22
+ return castHybridObject;
24
23
  }
25
24
 
26
- size_t JHybridPerpSideRatioSpec::getExternalMemorySize() noexcept {
27
- static const auto method = javaClassStatic()->getMethod<jlong()>("getMemorySize");
28
- return method(_javaPart);
25
+ jni::local_ref<JHybridPerpSideRatioSpec::CxxPart::jhybriddata> JHybridPerpSideRatioSpec::CxxPart::initHybrid(jni::alias_ref<jhybridobject> jThis) {
26
+ return makeCxxInstance(jThis);
29
27
  }
30
28
 
31
- void JHybridPerpSideRatioSpec::dispose() noexcept {
32
- static const auto method = javaClassStatic()->getMethod<void()>("dispose");
33
- method(_javaPart);
29
+ std::shared_ptr<JHybridObject> JHybridPerpSideRatioSpec::CxxPart::createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) {
30
+ auto castJavaPart = jni::dynamic_ref_cast<JHybridPerpSideRatioSpec::JavaPart>(javaPart);
31
+ if (castJavaPart == nullptr) [[unlikely]] {
32
+ throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridPerpSideRatioSpec::JavaPart!");
33
+ }
34
+ return std::make_shared<JHybridPerpSideRatioSpec>(castJavaPart);
34
35
  }
35
36
 
36
- std::string JHybridPerpSideRatioSpec::toString() {
37
- static const auto method = javaClassStatic()->getMethod<jni::JString()>("toString");
38
- auto javaString = method(_javaPart);
39
- return javaString->toStdString();
37
+ void JHybridPerpSideRatioSpec::CxxPart::registerNatives() {
38
+ registerHybrid({
39
+ makeNativeMethod("initHybrid", JHybridPerpSideRatioSpec::CxxPart::initHybrid),
40
+ });
40
41
  }
41
42
 
42
43
  // Properties
43
44
  double JHybridPerpSideRatioSpec::getBidPercentage() {
44
- static const auto method = javaClassStatic()->getMethod<double()>("getBidPercentage");
45
+ static const auto method = _javaPart->javaClassStatic()->getMethod<double()>("getBidPercentage");
45
46
  auto __result = method(_javaPart);
46
47
  return __result;
47
48
  }
48
49
  void JHybridPerpSideRatioSpec::setBidPercentage(double bidPercentage) {
49
- static const auto method = javaClassStatic()->getMethod<void(double /* bidPercentage */)>("setBidPercentage");
50
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* bidPercentage */)>("setBidPercentage");
50
51
  method(_javaPart, bidPercentage);
51
52
  }
52
53
  double JHybridPerpSideRatioSpec::getAskPercentage() {
53
- static const auto method = javaClassStatic()->getMethod<double()>("getAskPercentage");
54
+ static const auto method = _javaPart->javaClassStatic()->getMethod<double()>("getAskPercentage");
54
55
  auto __result = method(_javaPart);
55
56
  return __result;
56
57
  }
57
58
  void JHybridPerpSideRatioSpec::setAskPercentage(double askPercentage) {
58
- static const auto method = javaClassStatic()->getMethod<void(double /* askPercentage */)>("setAskPercentage");
59
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* askPercentage */)>("setAskPercentage");
59
60
  method(_javaPart, askPercentage);
60
61
  }
61
62
  std::string JHybridPerpSideRatioSpec::getLongColor() {
62
- static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JString>()>("getLongColor");
63
+ static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<jni::JString>()>("getLongColor");
63
64
  auto __result = method(_javaPart);
64
65
  return __result->toStdString();
65
66
  }
66
67
  void JHybridPerpSideRatioSpec::setLongColor(const std::string& longColor) {
67
- static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* longColor */)>("setLongColor");
68
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* longColor */)>("setLongColor");
68
69
  method(_javaPart, jni::make_jstring(longColor));
69
70
  }
70
71
  std::string JHybridPerpSideRatioSpec::getShortColor() {
71
- static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JString>()>("getShortColor");
72
+ static const auto method = _javaPart->javaClassStatic()->getMethod<jni::local_ref<jni::JString>()>("getShortColor");
72
73
  auto __result = method(_javaPart);
73
74
  return __result->toStdString();
74
75
  }
75
76
  void JHybridPerpSideRatioSpec::setShortColor(const std::string& shortColor) {
76
- static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* shortColor */)>("setShortColor");
77
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jni::alias_ref<jni::JString> /* shortColor */)>("setShortColor");
77
78
  method(_javaPart, jni::make_jstring(shortColor));
78
79
  }
79
80
  double JHybridPerpSideRatioSpec::getSegmentHeight() {
80
- static const auto method = javaClassStatic()->getMethod<double()>("getSegmentHeight");
81
+ static const auto method = _javaPart->javaClassStatic()->getMethod<double()>("getSegmentHeight");
81
82
  auto __result = method(_javaPart);
82
83
  return __result;
83
84
  }
84
85
  void JHybridPerpSideRatioSpec::setSegmentHeight(double segmentHeight) {
85
- static const auto method = javaClassStatic()->getMethod<void(double /* segmentHeight */)>("setSegmentHeight");
86
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* segmentHeight */)>("setSegmentHeight");
86
87
  method(_javaPart, segmentHeight);
87
88
  }
88
89
  double JHybridPerpSideRatioSpec::getCornerRadius() {
89
- static const auto method = javaClassStatic()->getMethod<double()>("getCornerRadius");
90
+ static const auto method = _javaPart->javaClassStatic()->getMethod<double()>("getCornerRadius");
90
91
  auto __result = method(_javaPart);
91
92
  return __result;
92
93
  }
93
94
  void JHybridPerpSideRatioSpec::setCornerRadius(double cornerRadius) {
94
- static const auto method = javaClassStatic()->getMethod<void(double /* cornerRadius */)>("setCornerRadius");
95
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* cornerRadius */)>("setCornerRadius");
95
96
  method(_javaPart, cornerRadius);
96
97
  }
97
98
  double JHybridPerpSideRatioSpec::getGap() {
98
- static const auto method = javaClassStatic()->getMethod<double()>("getGap");
99
+ static const auto method = _javaPart->javaClassStatic()->getMethod<double()>("getGap");
99
100
  auto __result = method(_javaPart);
100
101
  return __result;
101
102
  }
102
103
  void JHybridPerpSideRatioSpec::setGap(double gap) {
103
- static const auto method = javaClassStatic()->getMethod<void(double /* gap */)>("setGap");
104
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* gap */)>("setGap");
104
105
  method(_javaPart, gap);
105
106
  }
106
107
  bool JHybridPerpSideRatioSpec::getReducedMotion() {
107
- static const auto method = javaClassStatic()->getMethod<jboolean()>("getReducedMotion");
108
+ static const auto method = _javaPart->javaClassStatic()->getMethod<jboolean()>("getReducedMotion");
108
109
  auto __result = method(_javaPart);
109
110
  return static_cast<bool>(__result);
110
111
  }
111
112
  void JHybridPerpSideRatioSpec::setReducedMotion(bool reducedMotion) {
112
- static const auto method = javaClassStatic()->getMethod<void(jboolean /* reducedMotion */)>("setReducedMotion");
113
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(jboolean /* reducedMotion */)>("setReducedMotion");
113
114
  method(_javaPart, reducedMotion);
114
115
  }
115
116
 
116
117
  // Methods
117
118
  void JHybridPerpSideRatioSpec::setRatio(double bidPercentage, double askPercentage) {
118
- static const auto method = javaClassStatic()->getMethod<void(double /* bidPercentage */, double /* askPercentage */)>("setRatio");
119
+ static const auto method = _javaPart->javaClassStatic()->getMethod<void(double /* bidPercentage */, double /* askPercentage */)>("setRatio");
119
120
  method(_javaPart, bidPercentage, askPercentage);
120
121
  }
121
122
 
@@ -2,7 +2,7 @@
2
2
  /// HybridPerpSideRatioSpec.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -18,33 +18,33 @@ namespace margelo::nitro::perpdepthbar {
18
18
 
19
19
  using namespace facebook;
20
20
 
21
- class JHybridPerpSideRatioSpec: public jni::HybridClass<JHybridPerpSideRatioSpec, JHybridObject>,
22
- public virtual HybridPerpSideRatioSpec {
21
+ class JHybridPerpSideRatioSpec: public virtual HybridPerpSideRatioSpec, public virtual JHybridObject {
23
22
  public:
24
- static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/perpdepthbar/HybridPerpSideRatioSpec;";
25
- static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
26
- static void registerNatives();
27
-
28
- protected:
29
- // C++ constructor (called from Java via `initHybrid()`)
30
- explicit JHybridPerpSideRatioSpec(jni::alias_ref<jhybridobject> jThis) :
31
- HybridObject(HybridPerpSideRatioSpec::TAG),
32
- HybridBase(jThis),
33
- _javaPart(jni::make_global(jThis)) {}
23
+ struct JavaPart: public jni::JavaClass<JavaPart, JHybridObject::JavaPart> {
24
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/perpdepthbar/HybridPerpSideRatioSpec;";
25
+ std::shared_ptr<JHybridPerpSideRatioSpec> getJHybridPerpSideRatioSpec();
26
+ };
27
+ struct CxxPart: public jni::HybridClass<CxxPart, JHybridObject::CxxPart> {
28
+ static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/perpdepthbar/HybridPerpSideRatioSpec$CxxPart;";
29
+ static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject> jThis);
30
+ static void registerNatives();
31
+ using HybridBase::HybridBase;
32
+ protected:
33
+ std::shared_ptr<JHybridObject> createHybridObject(const jni::local_ref<JHybridObject::JavaPart>& javaPart) override;
34
+ };
34
35
 
35
36
  public:
37
+ explicit JHybridPerpSideRatioSpec(const jni::local_ref<JHybridPerpSideRatioSpec::JavaPart>& javaPart):
38
+ HybridObject(HybridPerpSideRatioSpec::TAG),
39
+ JHybridObject(javaPart),
40
+ _javaPart(jni::make_global(javaPart)) {}
36
41
  ~JHybridPerpSideRatioSpec() override {
37
42
  // Hermes GC can destroy JS objects on a non-JNI Thread.
38
43
  jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
39
44
  }
40
45
 
41
46
  public:
42
- size_t getExternalMemorySize() noexcept override;
43
- void dispose() noexcept override;
44
- std::string toString() override;
45
-
46
- public:
47
- inline const jni::global_ref<JHybridPerpSideRatioSpec::javaobject>& getJavaPart() const noexcept {
47
+ inline const jni::global_ref<JHybridPerpSideRatioSpec::JavaPart>& getJavaPart() const noexcept {
48
48
  return _javaPart;
49
49
  }
50
50
 
@@ -72,9 +72,7 @@ namespace margelo::nitro::perpdepthbar {
72
72
  void setRatio(double bidPercentage, double askPercentage) override;
73
73
 
74
74
  private:
75
- friend HybridBase;
76
- using HybridBase::HybridBase;
77
- jni::global_ref<JHybridPerpSideRatioSpec::javaobject> _javaPart;
75
+ jni::global_ref<JHybridPerpSideRatioSpec::JavaPart> _javaPart;
78
76
  };
79
77
 
80
78
  } // namespace margelo::nitro::perpdepthbar
@@ -2,12 +2,13 @@
2
2
  /// JHybridPerpDepthBarsStateUpdater.cpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #include "JHybridPerpDepthBarsStateUpdater.hpp"
9
9
  #include "views/HybridPerpDepthBarsComponent.hpp"
10
10
  #include <NitroModules/NitroDefines.hpp>
11
+ #include <react/fabric/StateWrapperImpl.h>
11
12
 
12
13
  namespace margelo::nitro::perpdepthbar::views {
13
14
 
@@ -15,109 +16,108 @@ using namespace facebook;
15
16
  using ConcreteStateData = react::ConcreteState<HybridPerpDepthBarsState>;
16
17
 
17
18
  void JHybridPerpDepthBarsStateUpdater::updateViewProps(jni::alias_ref<jni::JClass> /* class */,
18
- jni::alias_ref<JHybridPerpDepthBarsSpec::javaobject> javaView,
19
+ jni::alias_ref<JHybridPerpDepthBarsSpec::JavaPart> javaView,
19
20
  jni::alias_ref<JStateWrapper::javaobject> stateWrapperInterface) {
20
- JHybridPerpDepthBarsSpec* view = javaView->cthis();
21
+ std::shared_ptr<JHybridPerpDepthBarsSpec> hybridView = javaView->getJHybridPerpDepthBarsSpec();
21
22
 
22
23
  // Get concrete StateWrapperImpl from passed StateWrapper interface object
23
24
  jobject rawStateWrapper = stateWrapperInterface.get();
24
- if (!stateWrapperInterface->isInstanceOf(react::StateWrapperImpl::javaClassStatic())) {
25
+ if (!stateWrapperInterface->isInstanceOf(react::StateWrapperImpl::javaClassStatic())) [[unlikely]] {
25
26
  throw std::runtime_error("StateWrapper is not a StateWrapperImpl");
26
27
  }
27
28
  auto stateWrapper = jni::alias_ref<react::StateWrapperImpl::javaobject>{
28
29
  static_cast<react::StateWrapperImpl::javaobject>(rawStateWrapper)};
29
-
30
30
  std::shared_ptr<const react::State> state = stateWrapper->cthis()->getState();
31
- auto concreteState = std::dynamic_pointer_cast<const ConcreteStateData>(state);
31
+ auto concreteState = std::static_pointer_cast<const ConcreteStateData>(state);
32
32
  const HybridPerpDepthBarsState& data = concreteState->getData();
33
- const std::optional<HybridPerpDepthBarsProps>& maybeProps = data.getProps();
34
- if (!maybeProps.has_value()) {
33
+ const std::shared_ptr<HybridPerpDepthBarsProps>& props = data.getProps();
34
+ if (props == nullptr) [[unlikely]] {
35
35
  // Props aren't set yet!
36
36
  throw std::runtime_error("HybridPerpDepthBarsState's data doesn't contain any props!");
37
37
  }
38
- const HybridPerpDepthBarsProps& props = maybeProps.value();
39
- if (props.percents.isDirty) {
40
- view->setPercents(props.percents.value);
41
- // TODO: Set isDirty = false
38
+
39
+ // Update all props if they are dirty
40
+ if (props->percents.isDirty) {
41
+ hybridView->setPercents(props->percents.value);
42
+ props->percents.isDirty = false;
42
43
  }
43
- if (props.rowHeight.isDirty) {
44
- view->setRowHeight(props.rowHeight.value);
45
- // TODO: Set isDirty = false
44
+ if (props->rowHeight.isDirty) {
45
+ hybridView->setRowHeight(props->rowHeight.value);
46
+ props->rowHeight.isDirty = false;
46
47
  }
47
- if (props.rowMarginTop.isDirty) {
48
- view->setRowMarginTop(props.rowMarginTop.value);
49
- // TODO: Set isDirty = false
48
+ if (props->rowMarginTop.isDirty) {
49
+ hybridView->setRowMarginTop(props->rowMarginTop.value);
50
+ props->rowMarginTop.isDirty = false;
50
51
  }
51
- if (props.barInset.isDirty) {
52
- view->setBarInset(props.barInset.value);
53
- // TODO: Set isDirty = false
52
+ if (props->barInset.isDirty) {
53
+ hybridView->setBarInset(props->barInset.value);
54
+ props->barInset.isDirty = false;
54
55
  }
55
- if (props.color.isDirty) {
56
- view->setColor(props.color.value);
57
- // TODO: Set isDirty = false
56
+ if (props->color.isDirty) {
57
+ hybridView->setColor(props->color.value);
58
+ props->color.isDirty = false;
58
59
  }
59
- if (props.origin.isDirty) {
60
- view->setOrigin(props.origin.value);
61
- // TODO: Set isDirty = false
60
+ if (props->origin.isDirty) {
61
+ hybridView->setOrigin(props->origin.value);
62
+ props->origin.isDirty = false;
62
63
  }
63
- if (props.reducedMotion.isDirty) {
64
- view->setReducedMotion(props.reducedMotion.value);
65
- // TODO: Set isDirty = false
64
+ if (props->reducedMotion.isDirty) {
65
+ hybridView->setReducedMotion(props->reducedMotion.value);
66
+ props->reducedMotion.isDirty = false;
66
67
  }
67
- if (props.epoch.isDirty) {
68
- view->setEpoch(props.epoch.value);
69
- // TODO: Set isDirty = false
68
+ if (props->epoch.isDirty) {
69
+ hybridView->setEpoch(props->epoch.value);
70
+ props->epoch.isDirty = false;
70
71
  }
71
- if (props.prices.isDirty) {
72
- view->setPrices(props.prices.value);
73
- // TODO: Set isDirty = false
72
+ if (props->prices.isDirty) {
73
+ hybridView->setPrices(props->prices.value);
74
+ props->prices.isDirty = false;
74
75
  }
75
- if (props.sizes.isDirty) {
76
- view->setSizes(props.sizes.value);
77
- // TODO: Set isDirty = false
76
+ if (props->sizes.isDirty) {
77
+ hybridView->setSizes(props->sizes.value);
78
+ props->sizes.isDirty = false;
78
79
  }
79
- if (props.priceColor.isDirty) {
80
- view->setPriceColor(props.priceColor.value);
81
- // TODO: Set isDirty = false
80
+ if (props->priceColor.isDirty) {
81
+ hybridView->setPriceColor(props->priceColor.value);
82
+ props->priceColor.isDirty = false;
82
83
  }
83
- if (props.sizeColor.isDirty) {
84
- view->setSizeColor(props.sizeColor.value);
85
- // TODO: Set isDirty = false
84
+ if (props->sizeColor.isDirty) {
85
+ hybridView->setSizeColor(props->sizeColor.value);
86
+ props->sizeColor.isDirty = false;
86
87
  }
87
- if (props.priceFontSize.isDirty) {
88
- view->setPriceFontSize(props.priceFontSize.value);
89
- // TODO: Set isDirty = false
88
+ if (props->priceFontSize.isDirty) {
89
+ hybridView->setPriceFontSize(props->priceFontSize.value);
90
+ props->priceFontSize.isDirty = false;
90
91
  }
91
- if (props.sizeFontSize.isDirty) {
92
- view->setSizeFontSize(props.sizeFontSize.value);
93
- // TODO: Set isDirty = false
92
+ if (props->sizeFontSize.isDirty) {
93
+ hybridView->setSizeFontSize(props->sizeFontSize.value);
94
+ props->sizeFontSize.isDirty = false;
94
95
  }
95
- if (props.textInset.isDirty) {
96
- view->setTextInset(props.textInset.value);
97
- // TODO: Set isDirty = false
96
+ if (props->textInset.isDirty) {
97
+ hybridView->setTextInset(props->textInset.value);
98
+ props->textInset.isDirty = false;
98
99
  }
99
- if (props.placeholderText.isDirty) {
100
- view->setPlaceholderText(props.placeholderText.value);
101
- // TODO: Set isDirty = false
100
+ if (props->placeholderText.isDirty) {
101
+ hybridView->setPlaceholderText(props->placeholderText.value);
102
+ props->placeholderText.isDirty = false;
102
103
  }
103
- if (props.placeholderRows.isDirty) {
104
- view->setPlaceholderRows(props.placeholderRows.value);
105
- // TODO: Set isDirty = false
104
+ if (props->placeholderRows.isDirty) {
105
+ hybridView->setPlaceholderRows(props->placeholderRows.value);
106
+ props->placeholderRows.isDirty = false;
106
107
  }
107
- if (props.onRowPress.isDirty) {
108
- view->setOnRowPress(props.onRowPress.value);
109
- // TODO: Set isDirty = false
108
+ if (props->onRowPress.isDirty) {
109
+ hybridView->setOnRowPress(props->onRowPress.value);
110
+ props->onRowPress.isDirty = false;
110
111
  }
111
112
 
112
113
  // Update hybridRef if it changed
113
- if (props.hybridRef.isDirty) {
114
+ if (props->hybridRef.isDirty) {
114
115
  // hybridRef changed - call it with new this
115
- const auto& maybeFunc = props.hybridRef.value;
116
+ const auto& maybeFunc = props->hybridRef.value;
116
117
  if (maybeFunc.has_value()) {
117
- std::shared_ptr<JHybridPerpDepthBarsSpec> shared = javaView->cthis()->shared_cast<JHybridPerpDepthBarsSpec>();
118
- maybeFunc.value()(shared);
118
+ maybeFunc.value()(hybridView);
119
119
  }
120
- // TODO: Set isDirty = false
120
+ props->hybridRef.isDirty = false;
121
121
  }
122
122
  }
123
123
 
@@ -2,7 +2,7 @@
2
2
  /// JHybridPerpDepthBarsStateUpdater.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
- /// Copyright © 2026 Marc Rousavy @ Margelo
5
+ /// Copyright © Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  #pragma once
@@ -12,8 +12,8 @@
12
12
  #endif
13
13
 
14
14
  #include <fbjni/fbjni.h>
15
- #include <react/fabric/StateWrapperImpl.h>
16
15
  #include <react/fabric/CoreComponentsRegistry.h>
16
+ #include <react/fabric/StateWrapperImpl.h>
17
17
  #include <react/renderer/core/ConcreteComponentDescriptor.h>
18
18
  #include <NitroModules/NitroDefines.hpp>
19
19
  #include <NitroModules/JStateWrapper.hpp>
@@ -24,13 +24,13 @@ namespace margelo::nitro::perpdepthbar::views {
24
24
 
25
25
  using namespace facebook;
26
26
 
27
- class JHybridPerpDepthBarsStateUpdater: public jni::JavaClass<JHybridPerpDepthBarsStateUpdater> {
27
+ class JHybridPerpDepthBarsStateUpdater final: public jni::JavaClass<JHybridPerpDepthBarsStateUpdater> {
28
28
  public:
29
29
  static constexpr auto kJavaDescriptor = "Lcom/margelo/nitro/perpdepthbar/views/HybridPerpDepthBarsStateUpdater;";
30
30
 
31
31
  public:
32
32
  static void updateViewProps(jni::alias_ref<jni::JClass> /* class */,
33
- jni::alias_ref<JHybridPerpDepthBarsSpec::javaobject> view,
33
+ jni::alias_ref<JHybridPerpDepthBarsSpec::JavaPart> view,
34
34
  jni::alias_ref<JStateWrapper::javaobject> stateWrapperInterface);
35
35
 
36
36
  public: