aix 0.0.15 → 0.1.0-alpha.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 (241) hide show
  1. package/Aix.podspec +32 -0
  2. package/LICENSE +2 -2
  3. package/README.md +165 -33
  4. package/android/CMakeLists.txt +32 -0
  5. package/android/build.gradle +148 -0
  6. package/android/fix-prefab.gradle +51 -0
  7. package/android/gradle.properties +5 -0
  8. package/android/src/main/AndroidManifest.xml +2 -0
  9. package/android/src/main/cpp/cpp-adapter.cpp +6 -0
  10. package/android/src/main/java/com/aix/AixPackage.kt +29 -0
  11. package/android/src/main/java/com/aix/HybridAix.kt +27 -0
  12. package/ios/Bridge.h +8 -0
  13. package/ios/HybridAix.swift +1072 -0
  14. package/ios/HybridAixCellView.swift +174 -0
  15. package/ios/HybridAixComposer.swift +119 -0
  16. package/lib/commonjs/aix.js +25 -0
  17. package/lib/commonjs/aix.js.map +1 -0
  18. package/lib/commonjs/fade-in/createUsePool.js +50 -0
  19. package/lib/commonjs/fade-in/createUsePool.js.map +1 -0
  20. package/lib/commonjs/fade-in/createUseStaggered.js +82 -0
  21. package/lib/commonjs/fade-in/createUseStaggered.js.map +1 -0
  22. package/lib/commonjs/fade-in/index.js +78 -0
  23. package/lib/commonjs/fade-in/index.js.map +1 -0
  24. package/lib/commonjs/footer.js +28 -0
  25. package/lib/commonjs/footer.js.map +1 -0
  26. package/lib/commonjs/index.js +48 -0
  27. package/lib/commonjs/index.js.map +1 -0
  28. package/lib/commonjs/package.json +1 -0
  29. package/lib/commonjs/views/aix.nitro.js +6 -0
  30. package/lib/commonjs/views/aix.nitro.js.map +1 -0
  31. package/lib/module/aix.js +20 -0
  32. package/lib/module/aix.js.map +1 -0
  33. package/lib/module/fade-in/createUsePool.js +46 -0
  34. package/lib/module/fade-in/createUsePool.js.map +1 -0
  35. package/lib/module/fade-in/createUseStaggered.js +79 -0
  36. package/lib/module/fade-in/createUseStaggered.js.map +1 -0
  37. package/lib/module/fade-in/index.js +74 -0
  38. package/lib/module/fade-in/index.js.map +1 -0
  39. package/lib/module/footer.js +23 -0
  40. package/lib/module/footer.js.map +1 -0
  41. package/lib/module/index.js +13 -0
  42. package/lib/module/index.js.map +1 -0
  43. package/lib/module/package.json +1 -0
  44. package/lib/module/views/aix.nitro.js +4 -0
  45. package/lib/module/views/aix.nitro.js.map +1 -0
  46. package/lib/typescript/src/aix.d.ts +14 -0
  47. package/lib/typescript/src/aix.d.ts.map +1 -0
  48. package/lib/typescript/src/fade-in/createUsePool.d.ts +5 -0
  49. package/lib/typescript/src/fade-in/createUsePool.d.ts.map +1 -0
  50. package/lib/typescript/src/fade-in/createUseStaggered.d.ts +2 -0
  51. package/lib/typescript/src/fade-in/createUseStaggered.d.ts.map +1 -0
  52. package/lib/typescript/src/fade-in/index.d.ts +5 -0
  53. package/lib/typescript/src/fade-in/index.d.ts.map +1 -0
  54. package/lib/typescript/src/footer.d.ts +5 -0
  55. package/lib/typescript/src/footer.d.ts.map +1 -0
  56. package/lib/typescript/src/index.d.ts +10 -0
  57. package/lib/typescript/src/index.d.ts.map +1 -0
  58. package/lib/typescript/src/views/aix.nitro.d.ts +101 -0
  59. package/lib/typescript/src/views/aix.nitro.d.ts.map +1 -0
  60. package/nitro.json +26 -0
  61. package/nitrogen/generated/.gitattributes +1 -0
  62. package/nitrogen/generated/android/Aix+autolinking.cmake +91 -0
  63. package/nitrogen/generated/android/Aix+autolinking.gradle +27 -0
  64. package/nitrogen/generated/android/AixOnLoad.cpp +70 -0
  65. package/nitrogen/generated/android/AixOnLoad.hpp +25 -0
  66. package/nitrogen/generated/android/c++/JAixAdditionalContentInsets.hpp +61 -0
  67. package/nitrogen/generated/android/c++/JAixAdditionalContentInsetsProp.hpp +63 -0
  68. package/nitrogen/generated/android/c++/JAixScrollIndicatorInsetValue.hpp +61 -0
  69. package/nitrogen/generated/android/c++/JAixScrollIndicatorInsets.hpp +63 -0
  70. package/nitrogen/generated/android/c++/JAixScrollOnFooterSizeUpdate.hpp +65 -0
  71. package/nitrogen/generated/android/c++/JHybridAixCellViewSpec.cpp +65 -0
  72. package/nitrogen/generated/android/c++/JHybridAixCellViewSpec.hpp +68 -0
  73. package/nitrogen/generated/android/c++/JHybridAixComposerSpec.cpp +48 -0
  74. package/nitrogen/generated/android/c++/JHybridAixComposerSpec.hpp +65 -0
  75. package/nitrogen/generated/android/c++/JHybridAixSpec.cpp +137 -0
  76. package/nitrogen/generated/android/c++/JHybridAixSpec.hpp +79 -0
  77. package/nitrogen/generated/android/c++/views/JHybridAixCellViewStateUpdater.cpp +60 -0
  78. package/nitrogen/generated/android/c++/views/JHybridAixCellViewStateUpdater.hpp +49 -0
  79. package/nitrogen/generated/android/c++/views/JHybridAixComposerStateUpdater.cpp +53 -0
  80. package/nitrogen/generated/android/c++/views/JHybridAixComposerStateUpdater.hpp +49 -0
  81. package/nitrogen/generated/android/c++/views/JHybridAixStateUpdater.cpp +80 -0
  82. package/nitrogen/generated/android/c++/views/JHybridAixStateUpdater.hpp +49 -0
  83. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/AixAdditionalContentInsets.kt +41 -0
  84. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/AixAdditionalContentInsetsProp.kt +41 -0
  85. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/AixOnLoad.kt +35 -0
  86. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/AixScrollIndicatorInsetValue.kt +41 -0
  87. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/AixScrollIndicatorInsets.kt +41 -0
  88. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/AixScrollOnFooterSizeUpdate.kt +44 -0
  89. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/HybridAixCellViewSpec.kt +65 -0
  90. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/HybridAixComposerSpec.kt +55 -0
  91. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/HybridAixSpec.kt +101 -0
  92. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/views/HybridAixCellViewManager.kt +50 -0
  93. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/views/HybridAixCellViewStateUpdater.kt +23 -0
  94. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/views/HybridAixComposerManager.kt +50 -0
  95. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/views/HybridAixComposerStateUpdater.kt +23 -0
  96. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/views/HybridAixManager.kt +50 -0
  97. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/views/HybridAixStateUpdater.kt +23 -0
  98. package/nitrogen/generated/ios/Aix+autolinking.rb +60 -0
  99. package/nitrogen/generated/ios/Aix-Swift-Cxx-Bridge.cpp +67 -0
  100. package/nitrogen/generated/ios/Aix-Swift-Cxx-Bridge.hpp +222 -0
  101. package/nitrogen/generated/ios/Aix-Swift-Cxx-Umbrella.hpp +70 -0
  102. package/nitrogen/generated/ios/AixAutolinking.mm +49 -0
  103. package/nitrogen/generated/ios/AixAutolinking.swift +55 -0
  104. package/nitrogen/generated/ios/c++/HybridAixCellViewSpecSwift.cpp +11 -0
  105. package/nitrogen/generated/ios/c++/HybridAixCellViewSpecSwift.hpp +80 -0
  106. package/nitrogen/generated/ios/c++/HybridAixComposerSpecSwift.cpp +11 -0
  107. package/nitrogen/generated/ios/c++/HybridAixComposerSpecSwift.hpp +69 -0
  108. package/nitrogen/generated/ios/c++/HybridAixSpecSwift.cpp +11 -0
  109. package/nitrogen/generated/ios/c++/HybridAixSpecSwift.hpp +142 -0
  110. package/nitrogen/generated/ios/c++/views/HybridAixCellViewComponent.mm +101 -0
  111. package/nitrogen/generated/ios/c++/views/HybridAixComponent.mm +126 -0
  112. package/nitrogen/generated/ios/c++/views/HybridAixComposerComponent.mm +92 -0
  113. package/nitrogen/generated/ios/swift/AixAdditionalContentInsets.swift +47 -0
  114. package/nitrogen/generated/ios/swift/AixAdditionalContentInsetsProp.swift +71 -0
  115. package/nitrogen/generated/ios/swift/AixScrollIndicatorInsetValue.swift +47 -0
  116. package/nitrogen/generated/ios/swift/AixScrollIndicatorInsets.swift +71 -0
  117. package/nitrogen/generated/ios/swift/AixScrollOnFooterSizeUpdate.swift +89 -0
  118. package/nitrogen/generated/ios/swift/HybridAixCellViewSpec.swift +57 -0
  119. package/nitrogen/generated/ios/swift/HybridAixCellViewSpec_cxx.swift +151 -0
  120. package/nitrogen/generated/ios/swift/HybridAixComposerSpec.swift +56 -0
  121. package/nitrogen/generated/ios/swift/HybridAixComposerSpec_cxx.swift +131 -0
  122. package/nitrogen/generated/ios/swift/HybridAixSpec.swift +63 -0
  123. package/nitrogen/generated/ios/swift/HybridAixSpec_cxx.swift +292 -0
  124. package/nitrogen/generated/shared/c++/AixAdditionalContentInsets.hpp +79 -0
  125. package/nitrogen/generated/shared/c++/AixAdditionalContentInsetsProp.hpp +81 -0
  126. package/nitrogen/generated/shared/c++/AixScrollIndicatorInsetValue.hpp +79 -0
  127. package/nitrogen/generated/shared/c++/AixScrollIndicatorInsets.hpp +81 -0
  128. package/nitrogen/generated/shared/c++/AixScrollOnFooterSizeUpdate.hpp +83 -0
  129. package/nitrogen/generated/shared/c++/HybridAixCellViewSpec.cpp +24 -0
  130. package/nitrogen/generated/shared/c++/HybridAixCellViewSpec.hpp +65 -0
  131. package/nitrogen/generated/shared/c++/HybridAixComposerSpec.cpp +21 -0
  132. package/nitrogen/generated/shared/c++/HybridAixComposerSpec.hpp +62 -0
  133. package/nitrogen/generated/shared/c++/HybridAixSpec.cpp +36 -0
  134. package/nitrogen/generated/shared/c++/HybridAixSpec.hpp +85 -0
  135. package/nitrogen/generated/shared/c++/views/HybridAixCellViewComponent.cpp +99 -0
  136. package/nitrogen/generated/shared/c++/views/HybridAixCellViewComponent.hpp +108 -0
  137. package/nitrogen/generated/shared/c++/views/HybridAixComponent.cpp +159 -0
  138. package/nitrogen/generated/shared/c++/views/HybridAixComponent.hpp +117 -0
  139. package/nitrogen/generated/shared/c++/views/HybridAixComposerComponent.cpp +75 -0
  140. package/nitrogen/generated/shared/c++/views/HybridAixComposerComponent.hpp +106 -0
  141. package/nitrogen/generated/shared/json/AixCellViewConfig.json +11 -0
  142. package/nitrogen/generated/shared/json/AixComposerConfig.json +9 -0
  143. package/nitrogen/generated/shared/json/AixConfig.json +16 -0
  144. package/package.json +113 -14
  145. package/src/aix.tsx +43 -0
  146. package/src/fade-in/createUsePool.ts +46 -0
  147. package/src/fade-in/createUseStaggered.ts +82 -0
  148. package/src/fade-in/index.tsx +97 -0
  149. package/src/footer.tsx +30 -0
  150. package/src/index.ts +20 -16
  151. package/src/views/aix.nitro.ts +148 -0
  152. package/docs/API.md +0 -288
  153. package/jest.config.js +0 -17
  154. package/lib/__tests__/deferredIterable.test.d.ts +0 -1
  155. package/lib/__tests__/deferredIterable.test.js +0 -108
  156. package/lib/__tests__/filter.test.d.ts +0 -1
  157. package/lib/__tests__/filter.test.js +0 -53
  158. package/lib/__tests__/flatMap.test.d.ts +0 -1
  159. package/lib/__tests__/flatMap.test.js +0 -77
  160. package/lib/__tests__/lookahead.test.d.ts +0 -1
  161. package/lib/__tests__/lookahead.test.js +0 -57
  162. package/lib/__tests__/map.test.d.ts +0 -1
  163. package/lib/__tests__/map.test.js +0 -53
  164. package/lib/__tests__/merge.test.d.ts +0 -1
  165. package/lib/__tests__/merge.test.js +0 -55
  166. package/lib/__tests__/reduce.test.d.ts +0 -1
  167. package/lib/__tests__/reduce.test.js +0 -52
  168. package/lib/__tests__/spanAll.test.d.ts +0 -1
  169. package/lib/__tests__/spanAll.test.js +0 -120
  170. package/lib/concat.d.ts +0 -4
  171. package/lib/concat.js +0 -126
  172. package/lib/deferred.d.ts +0 -9
  173. package/lib/deferred.js +0 -18
  174. package/lib/deferredIterable.d.ts +0 -22
  175. package/lib/deferredIterable.js +0 -111
  176. package/lib/filter.d.ts +0 -7
  177. package/lib/filter.js +0 -99
  178. package/lib/flatMap.d.ts +0 -1
  179. package/lib/flatMap.js +0 -119
  180. package/lib/fromEvent.d.ts +0 -5
  181. package/lib/fromEvent.js +0 -13
  182. package/lib/index.d.ts +0 -16
  183. package/lib/index.js +0 -34
  184. package/lib/insert.d.ts +0 -4
  185. package/lib/insert.js +0 -113
  186. package/lib/interval.d.ts +0 -4
  187. package/lib/interval.js +0 -64
  188. package/lib/iterableToArray.d.ts +0 -1
  189. package/lib/iterableToArray.js +0 -87
  190. package/lib/iteratorToIterable.d.ts +0 -6
  191. package/lib/iteratorToIterable.js +0 -70
  192. package/lib/lookahead.d.ts +0 -10
  193. package/lib/lookahead.js +0 -78
  194. package/lib/map.d.ts +0 -4
  195. package/lib/map.js +0 -98
  196. package/lib/merge.d.ts +0 -6
  197. package/lib/merge.js +0 -21
  198. package/lib/of.d.ts +0 -3
  199. package/lib/of.js +0 -5
  200. package/lib/reduce.d.ts +0 -4
  201. package/lib/reduce.js +0 -92
  202. package/lib/restToIterable.d.ts +0 -4
  203. package/lib/restToIterable.js +0 -73
  204. package/lib/spanAll.d.ts +0 -1
  205. package/lib/spanAll.js +0 -29
  206. package/lib/tap.d.ts +0 -4
  207. package/lib/tap.js +0 -96
  208. package/lib/toCallbacks.d.ts +0 -11
  209. package/lib/toCallbacks.js +0 -97
  210. package/lib/zip.d.ts +0 -4
  211. package/lib/zip.js +0 -75
  212. package/src/__tests__/deferredIterable.test.ts +0 -22
  213. package/src/__tests__/filter.test.ts +0 -10
  214. package/src/__tests__/flatMap.test.ts +0 -12
  215. package/src/__tests__/lookahead.test.ts +0 -9
  216. package/src/__tests__/map.test.ts +0 -10
  217. package/src/__tests__/merge.test.ts +0 -9
  218. package/src/__tests__/reduce.test.ts +0 -10
  219. package/src/__tests__/spanAll.test.ts +0 -17
  220. package/src/concat.ts +0 -13
  221. package/src/deferred.ts +0 -16
  222. package/src/deferredIterable.ts +0 -111
  223. package/src/filter.ts +0 -16
  224. package/src/flatMap.ts +0 -9
  225. package/src/fromEvent.ts +0 -16
  226. package/src/insert.ts +0 -13
  227. package/src/interval.ts +0 -20
  228. package/src/iterableToArray.ts +0 -7
  229. package/src/iteratorToIterable.ts +0 -12
  230. package/src/lookahead.ts +0 -27
  231. package/src/map.ts +0 -11
  232. package/src/merge.ts +0 -18
  233. package/src/of.ts +0 -4
  234. package/src/reduce.ts +0 -12
  235. package/src/restToIterable.ts +0 -8
  236. package/src/spanAll.ts +0 -26
  237. package/src/tap.ts +0 -11
  238. package/src/toCallbacks.ts +0 -27
  239. package/src/zip.ts +0 -19
  240. package/tsconfig.json +0 -63
  241. package/yarn.lock +0 -3514
@@ -0,0 +1,70 @@
1
+ ///
2
+ /// AixOnLoad.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #ifndef BUILDING_AIX_WITH_GENERATED_CMAKE_PROJECT
9
+ #error AixOnLoad.cpp is not being built with the autogenerated CMakeLists.txt project. Is a different CMakeLists.txt building this?
10
+ #endif
11
+
12
+ #include "AixOnLoad.hpp"
13
+
14
+ #include <jni.h>
15
+ #include <fbjni/fbjni.h>
16
+ #include <NitroModules/HybridObjectRegistry.hpp>
17
+
18
+ #include "JHybridAixSpec.hpp"
19
+ #include "views/JHybridAixStateUpdater.hpp"
20
+ #include "JHybridAixCellViewSpec.hpp"
21
+ #include "views/JHybridAixCellViewStateUpdater.hpp"
22
+ #include "JHybridAixComposerSpec.hpp"
23
+ #include "views/JHybridAixComposerStateUpdater.hpp"
24
+ #include <NitroModules/DefaultConstructableObject.hpp>
25
+
26
+ namespace margelo::nitro::aix {
27
+
28
+ int initialize(JavaVM* vm) {
29
+ using namespace margelo::nitro;
30
+ using namespace margelo::nitro::aix;
31
+ using namespace facebook;
32
+
33
+ return facebook::jni::initialize(vm, [] {
34
+ // Register native JNI methods
35
+ margelo::nitro::aix::JHybridAixSpec::registerNatives();
36
+ margelo::nitro::aix::views::JHybridAixStateUpdater::registerNatives();
37
+ margelo::nitro::aix::JHybridAixCellViewSpec::registerNatives();
38
+ margelo::nitro::aix::views::JHybridAixCellViewStateUpdater::registerNatives();
39
+ margelo::nitro::aix::JHybridAixComposerSpec::registerNatives();
40
+ margelo::nitro::aix::views::JHybridAixComposerStateUpdater::registerNatives();
41
+
42
+ // Register Nitro Hybrid Objects
43
+ HybridObjectRegistry::registerHybridObjectConstructor(
44
+ "Aix",
45
+ []() -> std::shared_ptr<HybridObject> {
46
+ static DefaultConstructableObject<JHybridAixSpec::javaobject> object("com/aix/HybridAix");
47
+ auto instance = object.create();
48
+ return instance->cthis()->shared();
49
+ }
50
+ );
51
+ HybridObjectRegistry::registerHybridObjectConstructor(
52
+ "AixCellView",
53
+ []() -> std::shared_ptr<HybridObject> {
54
+ static DefaultConstructableObject<JHybridAixCellViewSpec::javaobject> object("com/aix/HybridAixCellView");
55
+ auto instance = object.create();
56
+ return instance->cthis()->shared();
57
+ }
58
+ );
59
+ HybridObjectRegistry::registerHybridObjectConstructor(
60
+ "AixComposer",
61
+ []() -> std::shared_ptr<HybridObject> {
62
+ static DefaultConstructableObject<JHybridAixComposerSpec::javaobject> object("com/aix/HybridAixComposer");
63
+ auto instance = object.create();
64
+ return instance->cthis()->shared();
65
+ }
66
+ );
67
+ });
68
+ }
69
+
70
+ } // namespace margelo::nitro::aix
@@ -0,0 +1,25 @@
1
+ ///
2
+ /// AixOnLoad.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include <jni.h>
9
+ #include <NitroModules/NitroDefines.hpp>
10
+
11
+ namespace margelo::nitro::aix {
12
+
13
+ /**
14
+ * Initializes the native (C++) part of Aix, and autolinks all Hybrid Objects.
15
+ * Call this in your `JNI_OnLoad` function (probably inside `cpp-adapter.cpp`).
16
+ * Example:
17
+ * ```cpp (cpp-adapter.cpp)
18
+ * JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void*) {
19
+ * return margelo::nitro::aix::initialize(vm);
20
+ * }
21
+ * ```
22
+ */
23
+ int initialize(JavaVM* vm);
24
+
25
+ } // namespace margelo::nitro::aix
@@ -0,0 +1,61 @@
1
+ ///
2
+ /// JAixAdditionalContentInsets.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "AixAdditionalContentInsets.hpp"
12
+
13
+
14
+
15
+ namespace margelo::nitro::aix {
16
+
17
+ using namespace facebook;
18
+
19
+ /**
20
+ * The C++ JNI bridge between the C++ struct "AixAdditionalContentInsets" and the the Kotlin data class "AixAdditionalContentInsets".
21
+ */
22
+ struct JAixAdditionalContentInsets final: public jni::JavaClass<JAixAdditionalContentInsets> {
23
+ public:
24
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/aix/AixAdditionalContentInsets;";
25
+
26
+ public:
27
+ /**
28
+ * Convert this Java/Kotlin-based struct to the C++ struct AixAdditionalContentInsets by copying all values to C++.
29
+ */
30
+ [[maybe_unused]]
31
+ [[nodiscard]]
32
+ AixAdditionalContentInsets toCpp() const {
33
+ static const auto clazz = javaClassStatic();
34
+ static const auto fieldWhenKeyboardOpen = clazz->getField<double>("whenKeyboardOpen");
35
+ double whenKeyboardOpen = this->getFieldValue(fieldWhenKeyboardOpen);
36
+ static const auto fieldWhenKeyboardClosed = clazz->getField<double>("whenKeyboardClosed");
37
+ double whenKeyboardClosed = this->getFieldValue(fieldWhenKeyboardClosed);
38
+ return AixAdditionalContentInsets(
39
+ whenKeyboardOpen,
40
+ whenKeyboardClosed
41
+ );
42
+ }
43
+
44
+ public:
45
+ /**
46
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
47
+ */
48
+ [[maybe_unused]]
49
+ static jni::local_ref<JAixAdditionalContentInsets::javaobject> fromCpp(const AixAdditionalContentInsets& value) {
50
+ using JSignature = JAixAdditionalContentInsets(double, double);
51
+ static const auto clazz = javaClassStatic();
52
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
53
+ return create(
54
+ clazz,
55
+ value.whenKeyboardOpen,
56
+ value.whenKeyboardClosed
57
+ );
58
+ }
59
+ };
60
+
61
+ } // namespace margelo::nitro::aix
@@ -0,0 +1,63 @@
1
+ ///
2
+ /// JAixAdditionalContentInsetsProp.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "AixAdditionalContentInsetsProp.hpp"
12
+
13
+ #include "AixAdditionalContentInsets.hpp"
14
+ #include "JAixAdditionalContentInsets.hpp"
15
+ #include <optional>
16
+
17
+ namespace margelo::nitro::aix {
18
+
19
+ using namespace facebook;
20
+
21
+ /**
22
+ * The C++ JNI bridge between the C++ struct "AixAdditionalContentInsetsProp" and the the Kotlin data class "AixAdditionalContentInsetsProp".
23
+ */
24
+ struct JAixAdditionalContentInsetsProp final: public jni::JavaClass<JAixAdditionalContentInsetsProp> {
25
+ public:
26
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/aix/AixAdditionalContentInsetsProp;";
27
+
28
+ public:
29
+ /**
30
+ * Convert this Java/Kotlin-based struct to the C++ struct AixAdditionalContentInsetsProp by copying all values to C++.
31
+ */
32
+ [[maybe_unused]]
33
+ [[nodiscard]]
34
+ AixAdditionalContentInsetsProp toCpp() const {
35
+ static const auto clazz = javaClassStatic();
36
+ static const auto fieldTop = clazz->getField<JAixAdditionalContentInsets>("top");
37
+ jni::local_ref<JAixAdditionalContentInsets> top = this->getFieldValue(fieldTop);
38
+ static const auto fieldBottom = clazz->getField<JAixAdditionalContentInsets>("bottom");
39
+ jni::local_ref<JAixAdditionalContentInsets> bottom = this->getFieldValue(fieldBottom);
40
+ return AixAdditionalContentInsetsProp(
41
+ top != nullptr ? std::make_optional(top->toCpp()) : std::nullopt,
42
+ bottom != nullptr ? std::make_optional(bottom->toCpp()) : std::nullopt
43
+ );
44
+ }
45
+
46
+ public:
47
+ /**
48
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
49
+ */
50
+ [[maybe_unused]]
51
+ static jni::local_ref<JAixAdditionalContentInsetsProp::javaobject> fromCpp(const AixAdditionalContentInsetsProp& value) {
52
+ using JSignature = JAixAdditionalContentInsetsProp(jni::alias_ref<JAixAdditionalContentInsets>, jni::alias_ref<JAixAdditionalContentInsets>);
53
+ static const auto clazz = javaClassStatic();
54
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
55
+ return create(
56
+ clazz,
57
+ value.top.has_value() ? JAixAdditionalContentInsets::fromCpp(value.top.value()) : nullptr,
58
+ value.bottom.has_value() ? JAixAdditionalContentInsets::fromCpp(value.bottom.value()) : nullptr
59
+ );
60
+ }
61
+ };
62
+
63
+ } // namespace margelo::nitro::aix
@@ -0,0 +1,61 @@
1
+ ///
2
+ /// JAixScrollIndicatorInsetValue.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "AixScrollIndicatorInsetValue.hpp"
12
+
13
+
14
+
15
+ namespace margelo::nitro::aix {
16
+
17
+ using namespace facebook;
18
+
19
+ /**
20
+ * The C++ JNI bridge between the C++ struct "AixScrollIndicatorInsetValue" and the the Kotlin data class "AixScrollIndicatorInsetValue".
21
+ */
22
+ struct JAixScrollIndicatorInsetValue final: public jni::JavaClass<JAixScrollIndicatorInsetValue> {
23
+ public:
24
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/aix/AixScrollIndicatorInsetValue;";
25
+
26
+ public:
27
+ /**
28
+ * Convert this Java/Kotlin-based struct to the C++ struct AixScrollIndicatorInsetValue by copying all values to C++.
29
+ */
30
+ [[maybe_unused]]
31
+ [[nodiscard]]
32
+ AixScrollIndicatorInsetValue toCpp() const {
33
+ static const auto clazz = javaClassStatic();
34
+ static const auto fieldWhenKeyboardOpen = clazz->getField<double>("whenKeyboardOpen");
35
+ double whenKeyboardOpen = this->getFieldValue(fieldWhenKeyboardOpen);
36
+ static const auto fieldWhenKeyboardClosed = clazz->getField<double>("whenKeyboardClosed");
37
+ double whenKeyboardClosed = this->getFieldValue(fieldWhenKeyboardClosed);
38
+ return AixScrollIndicatorInsetValue(
39
+ whenKeyboardOpen,
40
+ whenKeyboardClosed
41
+ );
42
+ }
43
+
44
+ public:
45
+ /**
46
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
47
+ */
48
+ [[maybe_unused]]
49
+ static jni::local_ref<JAixScrollIndicatorInsetValue::javaobject> fromCpp(const AixScrollIndicatorInsetValue& value) {
50
+ using JSignature = JAixScrollIndicatorInsetValue(double, double);
51
+ static const auto clazz = javaClassStatic();
52
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
53
+ return create(
54
+ clazz,
55
+ value.whenKeyboardOpen,
56
+ value.whenKeyboardClosed
57
+ );
58
+ }
59
+ };
60
+
61
+ } // namespace margelo::nitro::aix
@@ -0,0 +1,63 @@
1
+ ///
2
+ /// JAixScrollIndicatorInsets.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "AixScrollIndicatorInsets.hpp"
12
+
13
+ #include "AixScrollIndicatorInsetValue.hpp"
14
+ #include "JAixScrollIndicatorInsetValue.hpp"
15
+ #include <optional>
16
+
17
+ namespace margelo::nitro::aix {
18
+
19
+ using namespace facebook;
20
+
21
+ /**
22
+ * The C++ JNI bridge between the C++ struct "AixScrollIndicatorInsets" and the the Kotlin data class "AixScrollIndicatorInsets".
23
+ */
24
+ struct JAixScrollIndicatorInsets final: public jni::JavaClass<JAixScrollIndicatorInsets> {
25
+ public:
26
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/aix/AixScrollIndicatorInsets;";
27
+
28
+ public:
29
+ /**
30
+ * Convert this Java/Kotlin-based struct to the C++ struct AixScrollIndicatorInsets by copying all values to C++.
31
+ */
32
+ [[maybe_unused]]
33
+ [[nodiscard]]
34
+ AixScrollIndicatorInsets toCpp() const {
35
+ static const auto clazz = javaClassStatic();
36
+ static const auto fieldTop = clazz->getField<JAixScrollIndicatorInsetValue>("top");
37
+ jni::local_ref<JAixScrollIndicatorInsetValue> top = this->getFieldValue(fieldTop);
38
+ static const auto fieldBottom = clazz->getField<JAixScrollIndicatorInsetValue>("bottom");
39
+ jni::local_ref<JAixScrollIndicatorInsetValue> bottom = this->getFieldValue(fieldBottom);
40
+ return AixScrollIndicatorInsets(
41
+ top != nullptr ? std::make_optional(top->toCpp()) : std::nullopt,
42
+ bottom != nullptr ? std::make_optional(bottom->toCpp()) : std::nullopt
43
+ );
44
+ }
45
+
46
+ public:
47
+ /**
48
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
49
+ */
50
+ [[maybe_unused]]
51
+ static jni::local_ref<JAixScrollIndicatorInsets::javaobject> fromCpp(const AixScrollIndicatorInsets& value) {
52
+ using JSignature = JAixScrollIndicatorInsets(jni::alias_ref<JAixScrollIndicatorInsetValue>, jni::alias_ref<JAixScrollIndicatorInsetValue>);
53
+ static const auto clazz = javaClassStatic();
54
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
55
+ return create(
56
+ clazz,
57
+ value.top.has_value() ? JAixScrollIndicatorInsetValue::fromCpp(value.top.value()) : nullptr,
58
+ value.bottom.has_value() ? JAixScrollIndicatorInsetValue::fromCpp(value.bottom.value()) : nullptr
59
+ );
60
+ }
61
+ };
62
+
63
+ } // namespace margelo::nitro::aix
@@ -0,0 +1,65 @@
1
+ ///
2
+ /// JAixScrollOnFooterSizeUpdate.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "AixScrollOnFooterSizeUpdate.hpp"
12
+
13
+ #include <optional>
14
+
15
+ namespace margelo::nitro::aix {
16
+
17
+ using namespace facebook;
18
+
19
+ /**
20
+ * The C++ JNI bridge between the C++ struct "AixScrollOnFooterSizeUpdate" and the the Kotlin data class "AixScrollOnFooterSizeUpdate".
21
+ */
22
+ struct JAixScrollOnFooterSizeUpdate final: public jni::JavaClass<JAixScrollOnFooterSizeUpdate> {
23
+ public:
24
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/aix/AixScrollOnFooterSizeUpdate;";
25
+
26
+ public:
27
+ /**
28
+ * Convert this Java/Kotlin-based struct to the C++ struct AixScrollOnFooterSizeUpdate by copying all values to C++.
29
+ */
30
+ [[maybe_unused]]
31
+ [[nodiscard]]
32
+ AixScrollOnFooterSizeUpdate toCpp() const {
33
+ static const auto clazz = javaClassStatic();
34
+ static const auto fieldEnabled = clazz->getField<jboolean>("enabled");
35
+ jboolean enabled = this->getFieldValue(fieldEnabled);
36
+ static const auto fieldScrolledToEndThreshold = clazz->getField<jni::JDouble>("scrolledToEndThreshold");
37
+ jni::local_ref<jni::JDouble> scrolledToEndThreshold = this->getFieldValue(fieldScrolledToEndThreshold);
38
+ static const auto fieldAnimated = clazz->getField<jni::JBoolean>("animated");
39
+ jni::local_ref<jni::JBoolean> animated = this->getFieldValue(fieldAnimated);
40
+ return AixScrollOnFooterSizeUpdate(
41
+ static_cast<bool>(enabled),
42
+ scrolledToEndThreshold != nullptr ? std::make_optional(scrolledToEndThreshold->value()) : std::nullopt,
43
+ animated != nullptr ? std::make_optional(static_cast<bool>(animated->value())) : std::nullopt
44
+ );
45
+ }
46
+
47
+ public:
48
+ /**
49
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
50
+ */
51
+ [[maybe_unused]]
52
+ static jni::local_ref<JAixScrollOnFooterSizeUpdate::javaobject> fromCpp(const AixScrollOnFooterSizeUpdate& value) {
53
+ using JSignature = JAixScrollOnFooterSizeUpdate(jboolean, jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JBoolean>);
54
+ static const auto clazz = javaClassStatic();
55
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
56
+ return create(
57
+ clazz,
58
+ value.enabled,
59
+ value.scrolledToEndThreshold.has_value() ? jni::JDouble::valueOf(value.scrolledToEndThreshold.value()) : nullptr,
60
+ value.animated.has_value() ? jni::JBoolean::valueOf(value.animated.value()) : nullptr
61
+ );
62
+ }
63
+ };
64
+
65
+ } // namespace margelo::nitro::aix
@@ -0,0 +1,65 @@
1
+ ///
2
+ /// JHybridAixCellViewSpec.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include "JHybridAixCellViewSpec.hpp"
9
+
10
+
11
+
12
+
13
+
14
+ namespace margelo::nitro::aix {
15
+
16
+ jni::local_ref<JHybridAixCellViewSpec::jhybriddata> JHybridAixCellViewSpec::initHybrid(jni::alias_ref<jhybridobject> jThis) {
17
+ return makeCxxInstance(jThis);
18
+ }
19
+
20
+ void JHybridAixCellViewSpec::registerNatives() {
21
+ registerHybrid({
22
+ makeNativeMethod("initHybrid", JHybridAixCellViewSpec::initHybrid),
23
+ });
24
+ }
25
+
26
+ size_t JHybridAixCellViewSpec::getExternalMemorySize() noexcept {
27
+ static const auto method = javaClassStatic()->getMethod<jlong()>("getMemorySize");
28
+ return method(_javaPart);
29
+ }
30
+
31
+ void JHybridAixCellViewSpec::dispose() noexcept {
32
+ static const auto method = javaClassStatic()->getMethod<void()>("dispose");
33
+ method(_javaPart);
34
+ }
35
+
36
+ std::string JHybridAixCellViewSpec::toString() {
37
+ static const auto method = javaClassStatic()->getMethod<jni::JString()>("toString");
38
+ auto javaString = method(_javaPart);
39
+ return javaString->toStdString();
40
+ }
41
+
42
+ // Properties
43
+ bool JHybridAixCellViewSpec::getIsLast() {
44
+ static const auto method = javaClassStatic()->getMethod<jboolean()>("isLast");
45
+ auto __result = method(_javaPart);
46
+ return static_cast<bool>(__result);
47
+ }
48
+ void JHybridAixCellViewSpec::setIsLast(bool isLast) {
49
+ static const auto method = javaClassStatic()->getMethod<void(jboolean /* isLast */)>("setLast");
50
+ method(_javaPart, isLast);
51
+ }
52
+ double JHybridAixCellViewSpec::getIndex() {
53
+ static const auto method = javaClassStatic()->getMethod<double()>("getIndex");
54
+ auto __result = method(_javaPart);
55
+ return __result;
56
+ }
57
+ void JHybridAixCellViewSpec::setIndex(double index) {
58
+ static const auto method = javaClassStatic()->getMethod<void(double /* index */)>("setIndex");
59
+ method(_javaPart, index);
60
+ }
61
+
62
+ // Methods
63
+
64
+
65
+ } // namespace margelo::nitro::aix
@@ -0,0 +1,68 @@
1
+ ///
2
+ /// HybridAixCellViewSpec.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <NitroModules/JHybridObject.hpp>
11
+ #include <fbjni/fbjni.h>
12
+ #include "HybridAixCellViewSpec.hpp"
13
+
14
+
15
+
16
+
17
+ namespace margelo::nitro::aix {
18
+
19
+ using namespace facebook;
20
+
21
+ class JHybridAixCellViewSpec: public jni::HybridClass<JHybridAixCellViewSpec, JHybridObject>,
22
+ public virtual HybridAixCellViewSpec {
23
+ public:
24
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/aix/HybridAixCellViewSpec;";
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 JHybridAixCellViewSpec(jni::alias_ref<jhybridobject> jThis) :
31
+ HybridObject(HybridAixCellViewSpec::TAG),
32
+ HybridBase(jThis),
33
+ _javaPart(jni::make_global(jThis)) {}
34
+
35
+ public:
36
+ ~JHybridAixCellViewSpec() override {
37
+ // Hermes GC can destroy JS objects on a non-JNI Thread.
38
+ jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
39
+ }
40
+
41
+ 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<JHybridAixCellViewSpec::javaobject>& getJavaPart() const noexcept {
48
+ return _javaPart;
49
+ }
50
+
51
+ public:
52
+ // Properties
53
+ bool getIsLast() override;
54
+ void setIsLast(bool isLast) override;
55
+ double getIndex() override;
56
+ void setIndex(double index) override;
57
+
58
+ public:
59
+ // Methods
60
+
61
+
62
+ private:
63
+ friend HybridBase;
64
+ using HybridBase::HybridBase;
65
+ jni::global_ref<JHybridAixCellViewSpec::javaobject> _javaPart;
66
+ };
67
+
68
+ } // namespace margelo::nitro::aix
@@ -0,0 +1,48 @@
1
+ ///
2
+ /// JHybridAixComposerSpec.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include "JHybridAixComposerSpec.hpp"
9
+
10
+
11
+
12
+
13
+
14
+ namespace margelo::nitro::aix {
15
+
16
+ jni::local_ref<JHybridAixComposerSpec::jhybriddata> JHybridAixComposerSpec::initHybrid(jni::alias_ref<jhybridobject> jThis) {
17
+ return makeCxxInstance(jThis);
18
+ }
19
+
20
+ void JHybridAixComposerSpec::registerNatives() {
21
+ registerHybrid({
22
+ makeNativeMethod("initHybrid", JHybridAixComposerSpec::initHybrid),
23
+ });
24
+ }
25
+
26
+ size_t JHybridAixComposerSpec::getExternalMemorySize() noexcept {
27
+ static const auto method = javaClassStatic()->getMethod<jlong()>("getMemorySize");
28
+ return method(_javaPart);
29
+ }
30
+
31
+ void JHybridAixComposerSpec::dispose() noexcept {
32
+ static const auto method = javaClassStatic()->getMethod<void()>("dispose");
33
+ method(_javaPart);
34
+ }
35
+
36
+ std::string JHybridAixComposerSpec::toString() {
37
+ static const auto method = javaClassStatic()->getMethod<jni::JString()>("toString");
38
+ auto javaString = method(_javaPart);
39
+ return javaString->toStdString();
40
+ }
41
+
42
+ // Properties
43
+
44
+
45
+ // Methods
46
+
47
+
48
+ } // namespace margelo::nitro::aix
@@ -0,0 +1,65 @@
1
+ ///
2
+ /// HybridAixComposerSpec.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <NitroModules/JHybridObject.hpp>
11
+ #include <fbjni/fbjni.h>
12
+ #include "HybridAixComposerSpec.hpp"
13
+
14
+
15
+
16
+
17
+ namespace margelo::nitro::aix {
18
+
19
+ using namespace facebook;
20
+
21
+ class JHybridAixComposerSpec: public jni::HybridClass<JHybridAixComposerSpec, JHybridObject>,
22
+ public virtual HybridAixComposerSpec {
23
+ public:
24
+ static auto constexpr kJavaDescriptor = "Lcom/margelo/nitro/aix/HybridAixComposerSpec;";
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 JHybridAixComposerSpec(jni::alias_ref<jhybridobject> jThis) :
31
+ HybridObject(HybridAixComposerSpec::TAG),
32
+ HybridBase(jThis),
33
+ _javaPart(jni::make_global(jThis)) {}
34
+
35
+ public:
36
+ ~JHybridAixComposerSpec() override {
37
+ // Hermes GC can destroy JS objects on a non-JNI Thread.
38
+ jni::ThreadScope::WithClassLoader([&] { _javaPart.reset(); });
39
+ }
40
+
41
+ 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<JHybridAixComposerSpec::javaobject>& getJavaPart() const noexcept {
48
+ return _javaPart;
49
+ }
50
+
51
+ public:
52
+ // Properties
53
+
54
+
55
+ public:
56
+ // Methods
57
+
58
+
59
+ private:
60
+ friend HybridBase;
61
+ using HybridBase::HybridBase;
62
+ jni::global_ref<JHybridAixComposerSpec::javaobject> _javaPart;
63
+ };
64
+
65
+ } // namespace margelo::nitro::aix