react-nitro-renderer 0.0.0-stage → 0.0.1-alpha.7

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 (247) hide show
  1. package/LICENSE +21 -0
  2. package/Package.swift +104 -0
  3. package/README.md +111 -2
  4. package/Sources/ReactNitroRenderer/Animations/AnimationCurve+toUIAnimationCurve.swift +31 -0
  5. package/Sources/ReactNitroRenderer/Animations/HybridAnimator.swift +36 -0
  6. package/Sources/ReactNitroRenderer/Animations/View+Animations.swift +39 -0
  7. package/Sources/ReactNitroRenderer/Components/HybridLabel.swift +89 -0
  8. package/Sources/ReactNitroRenderer/Components/HybridScrollView.swift +21 -0
  9. package/Sources/ReactNitroRenderer/Components/HybridScrollViewContent.swift +36 -0
  10. package/Sources/ReactNitroRenderer/Components/HybridView.swift +22 -0
  11. package/Sources/ReactNitroRenderer/Components/View.swift +267 -0
  12. package/Sources/ReactNitroRenderer/CustomViewController.swift +36 -0
  13. package/Sources/ReactNitroRenderer/Extensions/Corner+toCACornerMask.swift +16 -0
  14. package/Sources/ReactNitroRenderer/Extensions/CornerCurve+toUICornerCurve.swift +23 -0
  15. package/Sources/ReactNitroRenderer/Extensions/EdgeInsets+UIEdgeInsets.swift +7 -0
  16. package/Sources/ReactNitroRenderer/Extensions/ModifierKey+toUIKeyModifierFlags.swift +31 -0
  17. package/Sources/ReactNitroRenderer/Extensions/Point+CGPoint.swift +15 -0
  18. package/Sources/ReactNitroRenderer/Extensions/UIGestureRecognizerState+toUIGestureRecognizerState.swift +39 -0
  19. package/Sources/ReactNitroRenderer/Gestures/HybridGestureRecognizer.swift +40 -0
  20. package/Sources/ReactNitroRenderer/Gestures/HybridLongPressGestureRecognizer.swift +53 -0
  21. package/Sources/ReactNitroRenderer/Gestures/HybridPanGestureRecognizer.swift +52 -0
  22. package/Sources/ReactNitroRenderer/Gestures/HybridTapGestureRecognizer.swift +42 -0
  23. package/Sources/ReactNitroRenderer/HybridApplication.swift +19 -0
  24. package/Sources/ReactNitroRenderer/HybridScreen.swift +22 -0
  25. package/Sources/ReactNitroRenderer/HybridViewController.swift +66 -0
  26. package/Sources/ReactNitroRenderer/HybridWindow.swift +25 -0
  27. package/Sources/ReactNitroRenderer/HybridWindowScene.swift +16 -0
  28. package/Sources/ReactNitroRenderer/RegisterRootCallback.swift +28 -0
  29. package/Sources/ReactNitroRenderer/RuntimeReloadableAppDelegate.swift +14 -0
  30. package/Sources/ReactNitroRenderer/SafeAreaInsetsListeners.swift +22 -0
  31. package/Sources/ReactNitroRenderer/UIColor+initRGBA.swift +10 -0
  32. package/Sources/ReactNitroRenderer/UIColor+rgba.swift +20 -0
  33. package/Sources/ReactNitroRenderer/ViewController.swift +13 -0
  34. package/Sources/ReactNitroRenderer/Window.swift +12 -0
  35. package/Sources/ReactNitroRenderer/WindowScene.swift +12 -0
  36. package/Sources/ReactNitroRenderer/YGNode.swift +46 -0
  37. package/nitrogen/generated/.gitattributes +1 -0
  38. package/nitrogen/generated/apple/ReactNitroRenderer-Swift-Cxx-Bridge.cpp +376 -0
  39. package/nitrogen/generated/apple/ReactNitroRendererAppleCxx/ReactNitroRendererAppleCxx.cpp +9 -0
  40. package/nitrogen/generated/apple/ReactNitroRendererAppleCxx/include/ReactNitroRendererAppleCxx/ReactNitroRendererAppleCxx.h +245 -0
  41. package/nitrogen/generated/apple/ReactNitroRendererAutolinking.cpp +46 -0
  42. package/nitrogen/generated/apple/ReactNitroRendererAutolinking.mm +24 -0
  43. package/nitrogen/generated/apple/c++/AnimationCurve-Swift.cpp +42 -0
  44. package/nitrogen/generated/apple/c++/Corner-Swift.cpp +52 -0
  45. package/nitrogen/generated/apple/c++/CornerCurve-Swift.cpp +46 -0
  46. package/nitrogen/generated/apple/c++/EdgeInsets-Swift.cpp +35 -0
  47. package/nitrogen/generated/apple/c++/Frame-Swift.cpp +35 -0
  48. package/nitrogen/generated/apple/c++/GestureRecognizerState-Swift.cpp +44 -0
  49. package/nitrogen/generated/apple/c++/HybridAnimatorSpecSwift.cpp +53 -0
  50. package/nitrogen/generated/apple/c++/HybridAnimatorSpec_cxx-Swift.cpp +28 -0
  51. package/nitrogen/generated/apple/c++/HybridApplicationSpecSwift.cpp +58 -0
  52. package/nitrogen/generated/apple/c++/HybridApplicationSpec_cxx-Swift.cpp +28 -0
  53. package/nitrogen/generated/apple/c++/HybridGestureRecognizerSpecSwift.cpp +48 -0
  54. package/nitrogen/generated/apple/c++/HybridGestureRecognizerSpec_cxx-Swift.cpp +28 -0
  55. package/nitrogen/generated/apple/c++/HybridLabelSpecSwift.cpp +49 -0
  56. package/nitrogen/generated/apple/c++/HybridLabelSpec_cxx-Swift.cpp +28 -0
  57. package/nitrogen/generated/apple/c++/HybridLongPressGestureRecognizerSpecSwift.cpp +85 -0
  58. package/nitrogen/generated/apple/c++/HybridLongPressGestureRecognizerSpec_cxx-Swift.cpp +28 -0
  59. package/nitrogen/generated/apple/c++/HybridPanGestureRecognizerSpecSwift.cpp +89 -0
  60. package/nitrogen/generated/apple/c++/HybridPanGestureRecognizerSpec_cxx-Swift.cpp +28 -0
  61. package/nitrogen/generated/apple/c++/HybridScreenSpecSwift.cpp +44 -0
  62. package/nitrogen/generated/apple/c++/HybridScreenSpec_cxx-Swift.cpp +28 -0
  63. package/nitrogen/generated/apple/c++/HybridScrollViewContentSpecSwift.cpp +40 -0
  64. package/nitrogen/generated/apple/c++/HybridScrollViewContentSpec_cxx-Swift.cpp +28 -0
  65. package/nitrogen/generated/apple/c++/HybridScrollViewSpecSwift.cpp +40 -0
  66. package/nitrogen/generated/apple/c++/HybridScrollViewSpec_cxx-Swift.cpp +28 -0
  67. package/nitrogen/generated/apple/c++/HybridTapGestureRecognizerSpecSwift.cpp +67 -0
  68. package/nitrogen/generated/apple/c++/HybridTapGestureRecognizerSpec_cxx-Swift.cpp +28 -0
  69. package/nitrogen/generated/apple/c++/HybridViewControllerSpecSwift.cpp +91 -0
  70. package/nitrogen/generated/apple/c++/HybridViewControllerSpec_cxx-Swift.cpp +28 -0
  71. package/nitrogen/generated/apple/c++/HybridViewSpecSwift.cpp +231 -0
  72. package/nitrogen/generated/apple/c++/HybridViewSpec_cxx-Swift.cpp +28 -0
  73. package/nitrogen/generated/apple/c++/HybridWindowSceneSpecSwift.cpp +34 -0
  74. package/nitrogen/generated/apple/c++/HybridWindowSceneSpec_cxx-Swift.cpp +28 -0
  75. package/nitrogen/generated/apple/c++/HybridWindowSpecSwift.cpp +53 -0
  76. package/nitrogen/generated/apple/c++/HybridWindowSpec_cxx-Swift.cpp +28 -0
  77. package/nitrogen/generated/apple/c++/ListenerSubscription-Swift.cpp +37 -0
  78. package/nitrogen/generated/apple/c++/ModifierKey-Swift.cpp +52 -0
  79. package/nitrogen/generated/apple/c++/Point-Swift.cpp +33 -0
  80. package/nitrogen/generated/apple/c++/Point3D-Swift.cpp +34 -0
  81. package/nitrogen/generated/apple/c++/Size-Swift.cpp +33 -0
  82. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/ReactNitroRendererAutolinking.hpp +13 -0
  83. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/AnimationCurve-Swift.hpp +23 -0
  84. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/Corner-Swift.hpp +23 -0
  85. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/CornerCurve-Swift.hpp +23 -0
  86. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/EdgeInsets-Swift.hpp +23 -0
  87. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/Frame-Swift.hpp +23 -0
  88. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/GestureRecognizerState-Swift.hpp +23 -0
  89. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridAnimatorSpecSwift.hpp +73 -0
  90. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridAnimatorSpec_cxx-Swift.hpp +23 -0
  91. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridApplicationSpecSwift.hpp +74 -0
  92. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridApplicationSpec_cxx-Swift.hpp +23 -0
  93. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridGestureRecognizerSpecSwift.hpp +74 -0
  94. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridGestureRecognizerSpec_cxx-Swift.hpp +23 -0
  95. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridLabelSpecSwift.hpp +74 -0
  96. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridLabelSpec_cxx-Swift.hpp +23 -0
  97. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridLongPressGestureRecognizerSpecSwift.hpp +82 -0
  98. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridLongPressGestureRecognizerSpec_cxx-Swift.hpp +23 -0
  99. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridPanGestureRecognizerSpecSwift.hpp +80 -0
  100. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridPanGestureRecognizerSpec_cxx-Swift.hpp +23 -0
  101. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridScreenSpecSwift.hpp +73 -0
  102. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridScreenSpec_cxx-Swift.hpp +23 -0
  103. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridScrollViewContentSpecSwift.hpp +72 -0
  104. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridScrollViewContentSpec_cxx-Swift.hpp +23 -0
  105. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridScrollViewSpecSwift.hpp +72 -0
  106. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridScrollViewSpec_cxx-Swift.hpp +23 -0
  107. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridTapGestureRecognizerSpecSwift.hpp +78 -0
  108. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridTapGestureRecognizerSpec_cxx-Swift.hpp +23 -0
  109. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridViewControllerSpecSwift.hpp +77 -0
  110. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridViewControllerSpec_cxx-Swift.hpp +23 -0
  111. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridViewSpecSwift.hpp +102 -0
  112. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridViewSpec_cxx-Swift.hpp +23 -0
  113. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridWindowSceneSpecSwift.hpp +71 -0
  114. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridWindowSceneSpec_cxx-Swift.hpp +23 -0
  115. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridWindowSpecSwift.hpp +74 -0
  116. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/HybridWindowSpec_cxx-Swift.hpp +23 -0
  117. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/ListenerSubscription-Swift.hpp +23 -0
  118. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/ModifierKey-Swift.hpp +23 -0
  119. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/Point-Swift.hpp +23 -0
  120. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/Point3D-Swift.hpp +23 -0
  121. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/ReactNitroRenderer-Swift-Cxx-Umbrella.hpp +69 -0
  122. package/nitrogen/generated/apple/c++/include/ReactNitroRenderer/private/Size-Swift.hpp +23 -0
  123. package/nitrogen/generated/apple/c++/include/module.modulemap +12 -0
  124. package/nitrogen/generated/apple/swift/AnimationCurve.swift +64 -0
  125. package/nitrogen/generated/apple/swift/Callback___ReactNitroRenderer__HybridWindowSpec_cxx___ReactNitroRenderer__HybridWindowSceneSpec_cxx.swift +71 -0
  126. package/nitrogen/generated/apple/swift/Callback_void.swift +60 -0
  127. package/nitrogen/generated/apple/swift/Callback_void___ReactNitroRenderer__EdgeInsets.swift +66 -0
  128. package/nitrogen/generated/apple/swift/Callback_void___ReactNitroRenderer__HybridLongPressGestureRecognizerSpec_cxx.swift +66 -0
  129. package/nitrogen/generated/apple/swift/Callback_void___ReactNitroRenderer__HybridPanGestureRecognizerSpec_cxx.swift +66 -0
  130. package/nitrogen/generated/apple/swift/Callback_void___ReactNitroRenderer__HybridTapGestureRecognizerSpec_cxx.swift +66 -0
  131. package/nitrogen/generated/apple/swift/Corner.swift +64 -0
  132. package/nitrogen/generated/apple/swift/CornerCurve.swift +54 -0
  133. package/nitrogen/generated/apple/swift/EdgeInsets.swift +49 -0
  134. package/nitrogen/generated/apple/swift/Frame.swift +49 -0
  135. package/nitrogen/generated/apple/swift/GestureRecognizerState.swift +74 -0
  136. package/nitrogen/generated/apple/swift/HybridAnimatorSpec.swift +67 -0
  137. package/nitrogen/generated/apple/swift/HybridAnimatorSpec_cxx.swift +158 -0
  138. package/nitrogen/generated/apple/swift/HybridApplicationSpec.swift +67 -0
  139. package/nitrogen/generated/apple/swift/HybridApplicationSpec_cxx.swift +160 -0
  140. package/nitrogen/generated/apple/swift/HybridGestureRecognizerSpec.swift +67 -0
  141. package/nitrogen/generated/apple/swift/HybridGestureRecognizerSpec_cxx.swift +147 -0
  142. package/nitrogen/generated/apple/swift/HybridLabelSpec.swift +66 -0
  143. package/nitrogen/generated/apple/swift/HybridLabelSpec_cxx.swift +157 -0
  144. package/nitrogen/generated/apple/swift/HybridLongPressGestureRecognizerSpec.swift +70 -0
  145. package/nitrogen/generated/apple/swift/HybridLongPressGestureRecognizerSpec_cxx.swift +193 -0
  146. package/nitrogen/generated/apple/swift/HybridPanGestureRecognizerSpec.swift +69 -0
  147. package/nitrogen/generated/apple/swift/HybridPanGestureRecognizerSpec_cxx.swift +195 -0
  148. package/nitrogen/generated/apple/swift/HybridScreenSpec.swift +67 -0
  149. package/nitrogen/generated/apple/swift/HybridScreenSpec_cxx.swift +146 -0
  150. package/nitrogen/generated/apple/swift/HybridScrollViewContentSpec.swift +66 -0
  151. package/nitrogen/generated/apple/swift/HybridScrollViewContentSpec_cxx.swift +148 -0
  152. package/nitrogen/generated/apple/swift/HybridScrollViewSpec.swift +66 -0
  153. package/nitrogen/generated/apple/swift/HybridScrollViewSpec_cxx.swift +148 -0
  154. package/nitrogen/generated/apple/swift/HybridTapGestureRecognizerSpec.swift +68 -0
  155. package/nitrogen/generated/apple/swift/HybridTapGestureRecognizerSpec_cxx.swift +175 -0
  156. package/nitrogen/generated/apple/swift/HybridViewControllerSpec.swift +68 -0
  157. package/nitrogen/generated/apple/swift/HybridViewControllerSpec_cxx.swift +185 -0
  158. package/nitrogen/generated/apple/swift/HybridViewSpec.swift +89 -0
  159. package/nitrogen/generated/apple/swift/HybridViewSpec_cxx.swift +335 -0
  160. package/nitrogen/generated/apple/swift/HybridWindowSceneSpec.swift +65 -0
  161. package/nitrogen/generated/apple/swift/HybridWindowSceneSpec_cxx.swift +136 -0
  162. package/nitrogen/generated/apple/swift/HybridWindowSpec.swift +65 -0
  163. package/nitrogen/generated/apple/swift/HybridWindowSpec_cxx.swift +156 -0
  164. package/nitrogen/generated/apple/swift/ListenerSubscription.swift +29 -0
  165. package/nitrogen/generated/apple/swift/ModifierKey.swift +64 -0
  166. package/nitrogen/generated/apple/swift/Point.swift +35 -0
  167. package/nitrogen/generated/apple/swift/Point3D.swift +42 -0
  168. package/nitrogen/generated/apple/swift/Promise___ReactNitroRenderer__HybridWindowSpec_cxx.swift +102 -0
  169. package/nitrogen/generated/apple/swift/Promise_void.swift +100 -0
  170. package/nitrogen/generated/apple/swift/ReactNitroRenderer+ForeignTypeMetadata.swift +34 -0
  171. package/nitrogen/generated/apple/swift/Size.swift +35 -0
  172. package/nitrogen/generated/hybrid-classes.json +144 -0
  173. package/nitrogen/generated/shared/c++/ReactNitroRendererCxxModule.cpp +2 -0
  174. package/nitrogen/generated/shared/c++/include/ReactNitroRenderer/ReactNitroRendererCxxModule.hpp +2 -0
  175. package/nitrogen/generated/shared/javascript/Animator.cjs +19 -0
  176. package/nitrogen/generated/shared/javascript/Animator.d.cts +9 -0
  177. package/nitrogen/generated/shared/javascript/Application.cjs +19 -0
  178. package/nitrogen/generated/shared/javascript/Application.d.cts +9 -0
  179. package/nitrogen/generated/shared/javascript/GestureRecognizer.cjs +19 -0
  180. package/nitrogen/generated/shared/javascript/GestureRecognizer.d.cts +9 -0
  181. package/nitrogen/generated/shared/javascript/Label.cjs +19 -0
  182. package/nitrogen/generated/shared/javascript/Label.d.cts +9 -0
  183. package/nitrogen/generated/shared/javascript/LongPressGestureRecognizer.cjs +19 -0
  184. package/nitrogen/generated/shared/javascript/LongPressGestureRecognizer.d.cts +9 -0
  185. package/nitrogen/generated/shared/javascript/PanGestureRecognizer.cjs +19 -0
  186. package/nitrogen/generated/shared/javascript/PanGestureRecognizer.d.cts +9 -0
  187. package/nitrogen/generated/shared/javascript/Screen.cjs +19 -0
  188. package/nitrogen/generated/shared/javascript/Screen.d.cts +9 -0
  189. package/nitrogen/generated/shared/javascript/ScrollView.cjs +19 -0
  190. package/nitrogen/generated/shared/javascript/ScrollView.d.cts +9 -0
  191. package/nitrogen/generated/shared/javascript/ScrollViewContent.cjs +19 -0
  192. package/nitrogen/generated/shared/javascript/ScrollViewContent.d.cts +9 -0
  193. package/nitrogen/generated/shared/javascript/TapGestureRecognizer.cjs +19 -0
  194. package/nitrogen/generated/shared/javascript/TapGestureRecognizer.d.cts +9 -0
  195. package/nitrogen/generated/shared/javascript/View.cjs +19 -0
  196. package/nitrogen/generated/shared/javascript/View.d.cts +9 -0
  197. package/nitrogen/generated/shared/javascript/ViewController.cjs +19 -0
  198. package/nitrogen/generated/shared/javascript/ViewController.d.cts +9 -0
  199. package/nitrogen/generated/shared/javascript/Window.cjs +19 -0
  200. package/nitrogen/generated/shared/javascript/Window.d.cts +9 -0
  201. package/nitrogen/generated/shared/javascript/WindowScene.cjs +19 -0
  202. package/nitrogen/generated/shared/javascript/WindowScene.d.cts +9 -0
  203. package/package.json +42 -4
  204. package/src/NitroRendererHostConfig.ts +396 -0
  205. package/src/PropSetter.ts +29 -0
  206. package/src/StylePropSetters.ts +145 -0
  207. package/src/ViewPropSetters.ts +33 -0
  208. package/src/ViewRegistry.ts +47 -0
  209. package/src/YogaPropSetters.ts +347 -0
  210. package/src/components/ScrollView.tsx +30 -0
  211. package/src/components/ScrollViewContent.tsx +12 -0
  212. package/src/components/Text.tsx +34 -0
  213. package/src/components/View.ts +33 -0
  214. package/src/contexts/RootContext.ts +5 -0
  215. package/src/getViewYogaNode.ts +9 -0
  216. package/src/hooks/useRootContext.ts +11 -0
  217. package/src/hooks/useSafeAreaInsets.ts +36 -0
  218. package/src/hybrids.ts +9 -0
  219. package/src/index.ts +30 -0
  220. package/src/registerApp.ts +22 -0
  221. package/src/renderRoot.ts +44 -0
  222. package/src/specs/Animations/AnimationCurve.ts +6 -0
  223. package/src/specs/Animations/Animator.nitro.ts +16 -0
  224. package/src/specs/Application.nitro.ts +20 -0
  225. package/src/specs/Corner.ts +1 -0
  226. package/src/specs/EdgeInsets.ts +13 -0
  227. package/src/specs/Frame.ts +6 -0
  228. package/src/specs/Gestures/GestureRecognizer.nitro.ts +26 -0
  229. package/src/specs/Gestures/LongPressGestureRecognizer.nitro.ts +26 -0
  230. package/src/specs/Gestures/PanGestureRecognizer.nitro.ts +33 -0
  231. package/src/specs/Gestures/TapGestureRecognizer.nitro.ts +20 -0
  232. package/src/specs/Label.nitro.ts +16 -0
  233. package/src/specs/ListenerSubscription.ts +3 -0
  234. package/src/specs/Screen.nitro.ts +16 -0
  235. package/src/specs/ScrollView.nitro.ts +14 -0
  236. package/src/specs/ScrollViewContent.nitro.ts +14 -0
  237. package/src/specs/Size.ts +4 -0
  238. package/src/specs/View.nitro.ts +112 -0
  239. package/src/specs/ViewController.nitro.ts +29 -0
  240. package/src/specs/Window.nitro.ts +20 -0
  241. package/src/specs/WindowScene.nitro.ts +15 -0
  242. package/src/types/ReactNitroReconcilerHostConfig.ts +44 -0
  243. package/src/types/ReactRoot.ts +5 -0
  244. package/src/types/StrictMap.ts +6 -0
  245. package/src/types/ViewPropsUpdater.ts +30 -0
  246. package/src/types/YogaStyleProps.ts +47 -0
  247. package/src/utils/arePropArraysEqual.ts +18 -0
@@ -0,0 +1,64 @@
1
+ ///
2
+ /// Corner.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/margelo/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+
9
+
10
+ /**
11
+ * Represents the JS union `Corner`.
12
+ */
13
+ @_expose(Cxx)
14
+ public enum Corner: Int32, CaseIterable, Sendable, CustomStringConvertible {
15
+ case `topleft` = 0
16
+ case `topright` = 1
17
+ case `bottomleft` = 2
18
+ case `bottomright` = 3
19
+
20
+ public static func fromRawValue(_ value: Int32) -> Self {
21
+ return Self(rawValue: value)!
22
+ }
23
+ }
24
+
25
+ public extension Corner {
26
+ /**
27
+ * Get a Corner for the given String value, or
28
+ * return `nil` if the given value was invalid/unknown.
29
+ */
30
+ init?(fromString string: String) {
31
+ switch string {
32
+ case "topLeft":
33
+ self = .topleft
34
+ case "topRight":
35
+ self = .topright
36
+ case "bottomLeft":
37
+ self = .bottomleft
38
+ case "bottomRight":
39
+ self = .bottomright
40
+ default:
41
+ return nil
42
+ }
43
+ }
44
+
45
+ /**
46
+ * Get the String value this Corner represents.
47
+ */
48
+ var stringValue: String {
49
+ switch self {
50
+ case .topleft:
51
+ return "topLeft"
52
+ case .topright:
53
+ return "topRight"
54
+ case .bottomleft:
55
+ return "bottomLeft"
56
+ case .bottomright:
57
+ return "bottomRight"
58
+ }
59
+ }
60
+
61
+ var description: String {
62
+ return stringValue
63
+ }
64
+ }
@@ -0,0 +1,54 @@
1
+ ///
2
+ /// CornerCurve.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/margelo/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+
9
+
10
+ /**
11
+ * Represents the JS union `CornerCurve`.
12
+ */
13
+ @_expose(Cxx)
14
+ public enum CornerCurve: Int32, CaseIterable, Sendable, CustomStringConvertible {
15
+ case `circular` = 0
16
+ case `continuous` = 1
17
+
18
+ public static func fromRawValue(_ value: Int32) -> Self {
19
+ return Self(rawValue: value)!
20
+ }
21
+ }
22
+
23
+ public extension CornerCurve {
24
+ /**
25
+ * Get a CornerCurve for the given String value, or
26
+ * return `nil` if the given value was invalid/unknown.
27
+ */
28
+ init?(fromString string: String) {
29
+ switch string {
30
+ case "circular":
31
+ self = .circular
32
+ case "continuous":
33
+ self = .continuous
34
+ default:
35
+ return nil
36
+ }
37
+ }
38
+
39
+ /**
40
+ * Get the String value this CornerCurve represents.
41
+ */
42
+ var stringValue: String {
43
+ switch self {
44
+ case .circular:
45
+ return "circular"
46
+ case .continuous:
47
+ return "continuous"
48
+ }
49
+ }
50
+
51
+ var description: String {
52
+ return stringValue
53
+ }
54
+ }
@@ -0,0 +1,49 @@
1
+ ///
2
+ /// EdgeInsets.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/margelo/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ internal import NitroModules
9
+ internal import CxxStdlib
10
+
11
+ @_expose(Cxx)
12
+ public struct EdgeInsets: Equatable, Hashable, Sendable {
13
+ public let top: Double
14
+ public let right: Double
15
+ public let bottom: Double
16
+ public let left: Double
17
+
18
+ public init(top: Double, right: Double, bottom: Double, left: Double) {
19
+ self.top = top
20
+ self.right = right
21
+ self.bottom = bottom
22
+ self.left = left
23
+ }
24
+
25
+ @_spi(NitroCxx)
26
+ public static func init_cxx(_ top: Double, _ right: Double, _ bottom: Double, _ left: Double) -> Self {
27
+ return Self(top: top, right: right, bottom: bottom, left: left)
28
+ }
29
+
30
+ @_spi(NitroCxx)
31
+ public borrowing func getTop_cxx() -> Double {
32
+ return self.top
33
+ }
34
+
35
+ @_spi(NitroCxx)
36
+ public borrowing func getRight_cxx() -> Double {
37
+ return self.right
38
+ }
39
+
40
+ @_spi(NitroCxx)
41
+ public borrowing func getBottom_cxx() -> Double {
42
+ return self.bottom
43
+ }
44
+
45
+ @_spi(NitroCxx)
46
+ public borrowing func getLeft_cxx() -> Double {
47
+ return self.left
48
+ }
49
+ }
@@ -0,0 +1,49 @@
1
+ ///
2
+ /// Frame.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/margelo/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ internal import NitroModules
9
+ internal import CxxStdlib
10
+
11
+ @_expose(Cxx)
12
+ public struct Frame: Equatable, Hashable, Sendable {
13
+ public let x: Double
14
+ public let y: Double
15
+ public let width: Double
16
+ public let height: Double
17
+
18
+ public init(x: Double, y: Double, width: Double, height: Double) {
19
+ self.x = x
20
+ self.y = y
21
+ self.width = width
22
+ self.height = height
23
+ }
24
+
25
+ @_spi(NitroCxx)
26
+ public static func init_cxx(_ x: Double, _ y: Double, _ width: Double, _ height: Double) -> Self {
27
+ return Self(x: x, y: y, width: width, height: height)
28
+ }
29
+
30
+ @_spi(NitroCxx)
31
+ public borrowing func getX_cxx() -> Double {
32
+ return self.x
33
+ }
34
+
35
+ @_spi(NitroCxx)
36
+ public borrowing func getY_cxx() -> Double {
37
+ return self.y
38
+ }
39
+
40
+ @_spi(NitroCxx)
41
+ public borrowing func getWidth_cxx() -> Double {
42
+ return self.width
43
+ }
44
+
45
+ @_spi(NitroCxx)
46
+ public borrowing func getHeight_cxx() -> Double {
47
+ return self.height
48
+ }
49
+ }
@@ -0,0 +1,74 @@
1
+ ///
2
+ /// GestureRecognizerState.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/margelo/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+
9
+
10
+ /**
11
+ * Represents the JS enum `GestureRecognizerState`.
12
+ */
13
+ @_expose(Cxx)
14
+ public enum GestureRecognizerState: Int32, CaseIterable, Sendable, CustomStringConvertible {
15
+ case `possible` = 0
16
+ case `began` = 1
17
+ case `changed` = 2
18
+ case `ended` = 3
19
+ case `cancelled` = 4
20
+ case `failed` = 5
21
+
22
+ public static func fromRawValue(_ value: Int32) -> Self {
23
+ return Self(rawValue: value)!
24
+ }
25
+ }
26
+
27
+ public extension GestureRecognizerState {
28
+ /**
29
+ * Get a GestureRecognizerState for the given String value, or
30
+ * return `nil` if the given value was invalid/unknown.
31
+ */
32
+ init?(fromString string: String) {
33
+ switch string {
34
+ case "Possible":
35
+ self = .possible
36
+ case "Began":
37
+ self = .began
38
+ case "Changed":
39
+ self = .changed
40
+ case "Ended":
41
+ self = .ended
42
+ case "Cancelled":
43
+ self = .cancelled
44
+ case "Failed":
45
+ self = .failed
46
+ default:
47
+ return nil
48
+ }
49
+ }
50
+
51
+ /**
52
+ * Get the String value this GestureRecognizerState represents.
53
+ */
54
+ var stringValue: String {
55
+ switch self {
56
+ case .possible:
57
+ return "Possible"
58
+ case .began:
59
+ return "Began"
60
+ case .changed:
61
+ return "Changed"
62
+ case .ended:
63
+ return "Ended"
64
+ case .cancelled:
65
+ return "Cancelled"
66
+ case .failed:
67
+ return "Failed"
68
+ }
69
+ }
70
+
71
+ var description: String {
72
+ return stringValue
73
+ }
74
+ }
@@ -0,0 +1,67 @@
1
+ ///
2
+ /// HybridAnimatorSpec.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/margelo/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ public import NitroModules
9
+
10
+ /// See ``HybridAnimatorSpec``
11
+ public protocol HybridAnimatorSpec_protocol: HybridAnimatorSpec_base, HybridObject {
12
+ // Constructor
13
+
14
+
15
+ // Properties
16
+
17
+
18
+ // Methods
19
+ func startAnimation(afterDelay: Double?) throws -> Void
20
+ func pauseAnimation() throws -> Void
21
+ func stopAnimation(withoutFinishing: Bool?) throws -> Void
22
+
23
+ // Static Properties
24
+
25
+
26
+ // Static Methods
27
+
28
+ }
29
+
30
+ public extension HybridAnimatorSpec_protocol {
31
+ /// Default implementation of ``HybridObject.toString``
32
+ func toString() -> String {
33
+ return "[HybridObject Animator]"
34
+ }
35
+ }
36
+
37
+ /// See ``HybridAnimatorSpec``
38
+ open class HybridAnimatorSpec_base {
39
+ private weak var cxxWrapper: HybridAnimatorSpec_cxx? = nil
40
+ public init() throws {
41
+ }
42
+ public final func getCxxWrapper() -> HybridAnimatorSpec_cxx {
43
+ #if DEBUG
44
+ guard self is any HybridAnimatorSpec else {
45
+ fatalError("`self` is not a `HybridAnimatorSpec`! Did you accidentally inherit from `HybridAnimatorSpec_base` instead of `HybridAnimatorSpec`?")
46
+ }
47
+ #endif
48
+ if let cxxWrapper = self.cxxWrapper {
49
+ return cxxWrapper
50
+ } else {
51
+ let cxxWrapper = HybridAnimatorSpec_cxx(self as! any HybridAnimatorSpec)
52
+ self.cxxWrapper = cxxWrapper
53
+ return cxxWrapper
54
+ }
55
+ }
56
+ }
57
+
58
+ /**
59
+ * A Swift base-protocol representing the Animator HybridObject.
60
+ * Implement this protocol to create Swift-based instances of Animator.
61
+ * ```swift
62
+ * class HybridAnimator : HybridAnimatorSpec {
63
+ * // ...
64
+ * }
65
+ * ```
66
+ */
67
+ public typealias HybridAnimatorSpec = HybridAnimatorSpec_protocol & HybridAnimatorSpec_base
@@ -0,0 +1,158 @@
1
+ ///
2
+ /// HybridAnimatorSpec_cxx.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/margelo/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+ internal import NitroModules
8
+ internal import CxxStdlib
9
+ internal import ReactNitroRendererAppleCxx
10
+
11
+ /**
12
+ * A class implementation that bridges HybridAnimatorSpec over to C++.
13
+ * In C++, we cannot use Swift protocols - so we need to wrap it in a class to make it strongly defined.
14
+ */
15
+ @_expose(Cxx)
16
+ public final class HybridAnimatorSpec_cxx {
17
+ /**
18
+ * The Swift <> C++ bridge's namespace (`margelo::nitro::renderer::swift_bridge`)
19
+ * from `ReactNitroRendererAppleCxx/ReactNitroRendererAppleCxx.h`.
20
+ * This contains specialized C++ templates, and C++ helper functions that can be accessed from Swift.
21
+ */
22
+ public typealias bridge = margelo.nitro.renderer.swift_bridge
23
+
24
+ /**
25
+ * Holds the Swift implementation of `HybridAnimatorSpec`.
26
+ */
27
+ private let __implementation: HybridAnimator
28
+
29
+ /**
30
+ * Holds a weak pointer to the C++ class that wraps the Swift class.
31
+ */
32
+ private var __cxxPart: bridge.std__weak_ptr_margelo__nitro__renderer__HybridAnimatorSpec_ = .init()
33
+
34
+ /**
35
+ * Create a new `HybridAnimatorSpec_cxx` that wraps the given `HybridAnimatorSpec`.
36
+ */
37
+ public init(_ implementation: any HybridAnimatorSpec) {
38
+ guard let implementation = implementation as? HybridAnimator else {
39
+ preconditionFailure("Animator selects HybridAnimator as its Swift implementation. Every instance must inherit HybridAnimator.")
40
+ }
41
+ self.__implementation = implementation
42
+
43
+ }
44
+
45
+ /**
46
+ * Get the actual `HybridAnimatorSpec` instance this class wraps.
47
+ */
48
+ @inline(__always)
49
+ public func getHybridAnimatorSpec() -> any HybridAnimatorSpec {
50
+ return __implementation
51
+ }
52
+
53
+ /**
54
+ * Casts this instance to a retained unsafe raw pointer.
55
+ * This acquires one additional strong reference on the object!
56
+ */
57
+ public func toUnsafe() -> UnsafeMutableRawPointer {
58
+ return Unmanaged.passRetained(self).toOpaque()
59
+ }
60
+
61
+ /**
62
+ * Casts an unsafe pointer to a `HybridAnimatorSpec_cxx`.
63
+ * The pointer has to be a retained opaque `Unmanaged<HybridAnimatorSpec_cxx>`.
64
+ * This removes one strong reference from the object!
65
+ */
66
+ public class func fromUnsafe(pointer: UnsafeMutableRawPointer) -> HybridAnimatorSpec_cxx {
67
+ return Unmanaged<HybridAnimatorSpec_cxx>.fromOpaque(pointer).takeRetainedValue()
68
+ }
69
+
70
+ /**
71
+ * Gets (or creates) the C++ part of this Hybrid Object.
72
+ * This handle keeps the original native object alive.
73
+ */
74
+ public func getCxxPart() -> bridge.std__shared_ptr_margelo__nitro__renderer__HybridAnimatorSpec_ {
75
+ let cached = __cxxPart.lock()
76
+ if cached.use_count() > 0 {
77
+ return cached
78
+ }
79
+ let value = bridge.create_std__shared_ptr_margelo__nitro__renderer__HybridAnimatorSpec_(self.toUnsafe())
80
+ __cxxPart = bridge.weakify_std__shared_ptr_margelo__nitro__renderer__HybridAnimatorSpec_(value)
81
+ return value
82
+ }
83
+
84
+
85
+
86
+ // A static borrowing accessor lets C++ pass a const reference without copying it.
87
+ // TODO: Remove this adapter and call the instance method directly once
88
+ // https://github.com/swiftlang/swift/pull/92862 is merged and supported by our Swift toolchain.
89
+ @_spi(NitroCxx)
90
+ public static func getCxxPart(_ value: borrowing HybridAnimatorSpec_cxx) -> bridge.std__shared_ptr_margelo__nitro__renderer__HybridAnimatorSpec_ {
91
+ return value.getCxxPart()
92
+ }
93
+
94
+ /**
95
+ * Get the memory size of the Swift class (plus size of any other allocations)
96
+ * so the JS VM can properly track it and garbage-collect the JS object if needed.
97
+ */
98
+ @inline(__always)
99
+ public var memorySize: Int {
100
+ return MemoryHelper.getSizeOf(__implementation) + __implementation.memorySize
101
+ }
102
+
103
+ /**
104
+ * Compares this object with the given [other] object for reference equality.
105
+ */
106
+ @inline(__always)
107
+ public func equals(other: HybridAnimatorSpec_cxx) -> Bool {
108
+ return __implementation === other.__implementation
109
+ }
110
+
111
+ /**
112
+ * Call dispose() on the Swift class.
113
+ * This _may_ be called manually from JS.
114
+ */
115
+ @inline(__always)
116
+ public func dispose() {
117
+ __implementation.dispose()
118
+ }
119
+
120
+ /**
121
+ * Call toString() on the Swift class.
122
+ */
123
+ @inline(__always)
124
+ public func toString() -> String {
125
+ return __implementation.toString()
126
+ }
127
+
128
+ // Properties
129
+
130
+ // Methods
131
+
132
+ public final func startAnimation(afterDelay: Double?) -> bridge.Result_void {
133
+ do {
134
+ try __implementation.startAnimation(afterDelay: afterDelay)
135
+ return bridge.Result_void.withValue()
136
+ } catch {
137
+ return bridge.Result_void.withError(error.toCpp())
138
+ }
139
+ }
140
+
141
+ public final func pauseAnimation() -> bridge.Result_void {
142
+ do {
143
+ try __implementation.pauseAnimation()
144
+ return bridge.Result_void.withValue()
145
+ } catch {
146
+ return bridge.Result_void.withError(error.toCpp())
147
+ }
148
+ }
149
+
150
+ public final func stopAnimation(withoutFinishing: Bool?) -> bridge.Result_void {
151
+ do {
152
+ try __implementation.stopAnimation(withoutFinishing: withoutFinishing)
153
+ return bridge.Result_void.withValue()
154
+ } catch {
155
+ return bridge.Result_void.withError(error.toCpp())
156
+ }
157
+ }
158
+ }
@@ -0,0 +1,67 @@
1
+ ///
2
+ /// HybridApplicationSpec.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/margelo/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ public import NitroModules
9
+
10
+ /// See ``HybridApplicationSpec``
11
+ public protocol HybridApplicationSpec_protocol: HybridApplicationSpec_base, HybridObject {
12
+ // Constructor
13
+
14
+
15
+ // Properties
16
+
17
+
18
+ // Methods
19
+
20
+
21
+ // Static Properties
22
+
23
+
24
+ // Static Methods
25
+ static func createView() throws -> (any HybridViewSpec)
26
+ static func registerRoot(onSceneCreated: any Callback<(/* scene */ (any HybridWindowSceneSpec)), (any HybridWindowSpec)>) throws -> Void
27
+ static func reloadRuntime() throws -> Void
28
+ }
29
+
30
+ public extension HybridApplicationSpec_protocol {
31
+ /// Default implementation of ``HybridObject.toString``
32
+ func toString() -> String {
33
+ return "[HybridObject Application]"
34
+ }
35
+ }
36
+
37
+ /// See ``HybridApplicationSpec``
38
+ open class HybridApplicationSpec_base {
39
+ private weak var cxxWrapper: HybridApplicationSpec_cxx? = nil
40
+ public init() throws {
41
+ }
42
+ public final func getCxxWrapper() -> HybridApplicationSpec_cxx {
43
+ #if DEBUG
44
+ guard self is any HybridApplicationSpec else {
45
+ fatalError("`self` is not a `HybridApplicationSpec`! Did you accidentally inherit from `HybridApplicationSpec_base` instead of `HybridApplicationSpec`?")
46
+ }
47
+ #endif
48
+ if let cxxWrapper = self.cxxWrapper {
49
+ return cxxWrapper
50
+ } else {
51
+ let cxxWrapper = HybridApplicationSpec_cxx(self as! any HybridApplicationSpec)
52
+ self.cxxWrapper = cxxWrapper
53
+ return cxxWrapper
54
+ }
55
+ }
56
+ }
57
+
58
+ /**
59
+ * A Swift base-protocol representing the Application HybridObject.
60
+ * Implement this protocol to create Swift-based instances of Application.
61
+ * ```swift
62
+ * class HybridApplication : HybridApplicationSpec {
63
+ * // ...
64
+ * }
65
+ * ```
66
+ */
67
+ public typealias HybridApplicationSpec = HybridApplicationSpec_protocol & HybridApplicationSpec_base