react-native-unistyles 3.0.0-alpha.9 → 3.0.0-beta.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 (596) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +30 -41
  3. package/Unistyles.podspec +1 -1
  4. package/android/CMakeLists.txt +22 -45
  5. package/android/build.gradle +16 -5
  6. package/android/src/main/cxx/NativeUnistylesModule.cpp +71 -0
  7. package/android/src/main/cxx/NativeUnistylesModule.h +42 -0
  8. package/android/src/main/cxx/cpp-adapter.cpp +8 -86
  9. package/android/src/main/java/com/unistyles/Equatable.kt +61 -0
  10. package/android/src/main/java/com/unistyles/NativePlatform+android.kt +294 -0
  11. package/android/src/main/java/com/unistyles/NativePlatform+insets.kt +152 -0
  12. package/android/src/main/java/com/unistyles/NativePlatform+listener.kt +59 -0
  13. package/android/src/main/java/com/unistyles/UnistylesModule.kt +51 -0
  14. package/android/src/main/java/com/unistyles/UnistylesPackage.kt +16 -14
  15. package/cxx/NativePlatform.h +11 -0
  16. package/cxx/common/Constants.h +3 -0
  17. package/cxx/common/Helpers.h +59 -6
  18. package/cxx/core/HostStyle.cpp +7 -2
  19. package/cxx/core/HostStyle.h +1 -1
  20. package/cxx/core/StyleSheet.h +0 -1
  21. package/cxx/core/Unistyle.h +8 -5
  22. package/cxx/core/UnistyleData.h +4 -3
  23. package/cxx/core/UnistyleWrapper.h +102 -7
  24. package/cxx/core/UnistylesCommitHook.cpp +14 -18
  25. package/cxx/core/UnistylesCommitHook.h +6 -11
  26. package/cxx/core/UnistylesCommitShadowNode.h +13 -0
  27. package/cxx/core/UnistylesMountHook.cpp +28 -0
  28. package/cxx/core/UnistylesMountHook.h +27 -0
  29. package/cxx/core/UnistylesRegistry.cpp +108 -48
  30. package/cxx/core/UnistylesRegistry.h +10 -10
  31. package/cxx/core/UnistylesState.cpp +29 -8
  32. package/cxx/core/UnistylesState.h +5 -2
  33. package/cxx/hybridObjects/HybridNavigationBar.cpp +0 -4
  34. package/cxx/hybridObjects/HybridNavigationBar.h +3 -4
  35. package/cxx/hybridObjects/HybridShadowRegistry.cpp +18 -13
  36. package/cxx/hybridObjects/HybridStatusBar.cpp +0 -4
  37. package/cxx/hybridObjects/HybridStatusBar.h +3 -4
  38. package/cxx/hybridObjects/HybridStyleSheet.cpp +145 -19
  39. package/cxx/hybridObjects/HybridStyleSheet.h +27 -5
  40. package/cxx/hybridObjects/HybridUnistylesRuntime.cpp +78 -11
  41. package/cxx/hybridObjects/HybridUnistylesRuntime.h +17 -3
  42. package/cxx/parser/Parser.cpp +200 -63
  43. package/cxx/parser/Parser.h +7 -5
  44. package/cxx/shadowTree/ShadowLeafUpdate.h +3 -1
  45. package/cxx/shadowTree/ShadowTrafficController.h +71 -0
  46. package/cxx/shadowTree/ShadowTreeManager.cpp +28 -19
  47. package/cxx/shadowTree/ShadowTreeManager.h +3 -2
  48. package/ios/Equatable.swift +2 -1
  49. package/ios/Extensions.swift +3 -1
  50. package/ios/NativePlatform+ios.swift +34 -9
  51. package/ios/NativePlatform+keyboard.swift +83 -0
  52. package/ios/NativePlatformListener+ios.swift +36 -24
  53. package/ios/Unistyles.h +1 -0
  54. package/ios/UnistylesModuleOnLoad.h +8 -2
  55. package/ios/UnistylesModuleOnLoad.mm +9 -1
  56. package/lib/commonjs/components/Display.js +18 -0
  57. package/lib/commonjs/components/Display.js.map +1 -0
  58. package/lib/commonjs/components/Hide.js +18 -0
  59. package/lib/commonjs/components/Hide.js.map +1 -0
  60. package/lib/commonjs/components/Pressable.js +74 -0
  61. package/lib/commonjs/components/Pressable.js.map +1 -0
  62. package/lib/commonjs/components/Pressable.web.js +115 -0
  63. package/lib/commonjs/components/Pressable.web.js.map +1 -0
  64. package/lib/commonjs/components/index.js +27 -0
  65. package/lib/commonjs/components/index.js.map +1 -0
  66. package/lib/commonjs/core/createUnistylesComponent.js +79 -0
  67. package/lib/commonjs/core/createUnistylesComponent.js.map +1 -0
  68. package/lib/commonjs/core/createUnistylesComponent.native.js +82 -0
  69. package/lib/commonjs/core/createUnistylesComponent.native.js.map +1 -0
  70. package/lib/commonjs/core/getBoundArgs.js +18 -0
  71. package/lib/commonjs/core/getBoundArgs.js.map +1 -0
  72. package/lib/commonjs/core/getId.js +9 -0
  73. package/lib/commonjs/core/getId.js.map +1 -0
  74. package/lib/commonjs/core/index.js +27 -0
  75. package/lib/commonjs/core/index.js.map +1 -0
  76. package/lib/commonjs/hooks/index.js +13 -0
  77. package/lib/commonjs/hooks/index.js.map +1 -0
  78. package/lib/commonjs/hooks/useMedia.js +59 -0
  79. package/lib/commonjs/hooks/useMedia.js.map +1 -0
  80. package/lib/commonjs/hooks/useMedia.web.js +43 -0
  81. package/lib/commonjs/hooks/useMedia.web.js.map +1 -0
  82. package/lib/commonjs/index.js +28 -11
  83. package/lib/commonjs/index.js.map +1 -1
  84. package/lib/commonjs/mq.js +31 -18
  85. package/lib/commonjs/mq.js.map +1 -1
  86. package/lib/commonjs/specs/NativePlatform/NativePlatform.nitro.js +1 -0
  87. package/lib/commonjs/specs/NativePlatform/NativePlatform.nitro.js.map +1 -1
  88. package/lib/commonjs/specs/NavigtionBar/index.js +0 -15
  89. package/lib/commonjs/specs/NavigtionBar/index.js.map +1 -1
  90. package/lib/commonjs/specs/ShadowRegistry/index.js +11 -8
  91. package/lib/commonjs/specs/ShadowRegistry/index.js.map +1 -1
  92. package/lib/commonjs/specs/StatusBar/index.js +0 -5
  93. package/lib/commonjs/specs/StatusBar/index.js.map +1 -1
  94. package/lib/commonjs/specs/StyleSheet/index.js +1 -0
  95. package/lib/commonjs/specs/StyleSheet/index.js.map +1 -1
  96. package/lib/commonjs/specs/TurboUnistyles/NativeTurboUnistyles.js +1 -2
  97. package/lib/commonjs/specs/TurboUnistyles/NativeTurboUnistyles.js.map +1 -1
  98. package/lib/commonjs/specs/UnistylesRuntime/index.js +0 -2
  99. package/lib/commonjs/specs/UnistylesRuntime/index.js.map +1 -1
  100. package/lib/commonjs/specs/index.js +7 -0
  101. package/lib/commonjs/specs/index.js.map +1 -1
  102. package/lib/commonjs/specs/index.web.js +0 -7
  103. package/lib/commonjs/specs/index.web.js.map +1 -1
  104. package/lib/commonjs/types/stylesheet.js.map +1 -1
  105. package/lib/commonjs/utils.js +26 -0
  106. package/lib/commonjs/utils.js.map +1 -0
  107. package/lib/commonjs/web/convert/index.js +27 -24
  108. package/lib/commonjs/web/convert/index.js.map +1 -1
  109. package/lib/commonjs/web/convert/object/boxShadow.js +59 -0
  110. package/lib/commonjs/web/convert/object/boxShadow.js.map +1 -0
  111. package/lib/commonjs/web/convert/object/filter.js +42 -0
  112. package/lib/commonjs/web/convert/object/filter.js.map +1 -0
  113. package/lib/commonjs/web/convert/object/index.js +39 -0
  114. package/lib/commonjs/web/convert/object/index.js.map +1 -0
  115. package/lib/commonjs/web/convert/object/objectStyle.js +56 -0
  116. package/lib/commonjs/web/convert/object/objectStyle.js.map +1 -0
  117. package/lib/commonjs/web/convert/object/transform.js +27 -0
  118. package/lib/commonjs/web/convert/object/transform.js.map +1 -0
  119. package/lib/commonjs/web/convert/pseudo.js +10 -0
  120. package/lib/commonjs/web/convert/pseudo.js.map +1 -0
  121. package/lib/commonjs/web/convert/{boxShadow.js → shadow/boxShadow.js} +22 -37
  122. package/lib/commonjs/web/convert/shadow/boxShadow.js.map +1 -0
  123. package/lib/commonjs/web/convert/shadow/getShadowBreakpoints.js +38 -0
  124. package/lib/commonjs/web/convert/shadow/getShadowBreakpoints.js.map +1 -0
  125. package/lib/commonjs/web/convert/shadow/index.js +28 -0
  126. package/lib/commonjs/web/convert/shadow/index.js.map +1 -0
  127. package/lib/commonjs/web/convert/{textShadow.js → shadow/textShadow.js} +21 -35
  128. package/lib/commonjs/web/convert/shadow/textShadow.js.map +1 -0
  129. package/lib/commonjs/web/convert/style.js +11 -7
  130. package/lib/commonjs/web/convert/style.js.map +1 -1
  131. package/lib/commonjs/web/convert/types.js.map +1 -1
  132. package/lib/commonjs/web/convert/utils.js +8 -4
  133. package/lib/commonjs/web/convert/utils.js.map +1 -1
  134. package/lib/commonjs/web/create.js +35 -67
  135. package/lib/commonjs/web/create.js.map +1 -1
  136. package/lib/commonjs/web/index.js +18 -7
  137. package/lib/commonjs/web/index.js.map +1 -1
  138. package/lib/commonjs/web/listener.js +61 -0
  139. package/lib/commonjs/web/listener.js.map +1 -0
  140. package/lib/commonjs/web/mock.js +2 -12
  141. package/lib/commonjs/web/mock.js.map +1 -1
  142. package/lib/commonjs/web/registry.js +154 -19
  143. package/lib/commonjs/web/registry.js.map +1 -1
  144. package/lib/commonjs/web/runtime.js +22 -13
  145. package/lib/commonjs/web/runtime.js.map +1 -1
  146. package/lib/commonjs/web/shadowRegistry.js +143 -0
  147. package/lib/commonjs/web/shadowRegistry.js.map +1 -0
  148. package/lib/commonjs/web/state.js +31 -72
  149. package/lib/commonjs/web/state.js.map +1 -1
  150. package/lib/commonjs/web/utils/common.js +39 -0
  151. package/lib/commonjs/web/utils/common.js.map +1 -0
  152. package/lib/commonjs/web/utils/index.js +28 -0
  153. package/lib/commonjs/web/utils/index.js.map +1 -0
  154. package/lib/commonjs/web/utils/unistyle.js +77 -0
  155. package/lib/commonjs/web/utils/unistyle.js.map +1 -0
  156. package/lib/commonjs/web/{variants/getVariants.js → variants.js} +2 -2
  157. package/lib/commonjs/web/variants.js.map +1 -0
  158. package/lib/module/components/Display.js +13 -0
  159. package/lib/module/components/Display.js.map +1 -0
  160. package/lib/module/components/Hide.js +13 -0
  161. package/lib/module/components/Hide.js.map +1 -0
  162. package/lib/module/components/Pressable.js +68 -0
  163. package/lib/module/components/Pressable.js.map +1 -0
  164. package/lib/module/components/Pressable.web.js +109 -0
  165. package/lib/module/components/Pressable.web.js.map +1 -0
  166. package/lib/module/components/index.js +6 -0
  167. package/lib/module/components/index.js.map +1 -0
  168. package/lib/module/core/createUnistylesComponent.js +72 -0
  169. package/lib/module/core/createUnistylesComponent.js.map +1 -0
  170. package/lib/module/core/createUnistylesComponent.native.js +75 -0
  171. package/lib/module/core/createUnistylesComponent.native.js.map +1 -0
  172. package/lib/module/core/getBoundArgs.js +13 -0
  173. package/lib/module/core/getBoundArgs.js.map +1 -0
  174. package/lib/module/core/getId.js +4 -0
  175. package/lib/module/core/getId.js.map +1 -0
  176. package/lib/module/core/index.js +6 -0
  177. package/lib/module/core/index.js.map +1 -0
  178. package/lib/module/hooks/index.js +4 -0
  179. package/lib/module/hooks/index.js.map +1 -0
  180. package/lib/module/hooks/useMedia.js +54 -0
  181. package/lib/module/hooks/useMedia.js.map +1 -0
  182. package/lib/module/hooks/useMedia.web.js +38 -0
  183. package/lib/module/hooks/useMedia.web.js.map +1 -0
  184. package/lib/module/index.js +2 -9
  185. package/lib/module/index.js.map +1 -1
  186. package/lib/module/mq.js +27 -17
  187. package/lib/module/mq.js.map +1 -1
  188. package/lib/module/specs/NativePlatform/NativePlatform.nitro.js +1 -0
  189. package/lib/module/specs/NativePlatform/NativePlatform.nitro.js.map +1 -1
  190. package/lib/module/specs/NavigtionBar/index.js +0 -10
  191. package/lib/module/specs/NavigtionBar/index.js.map +1 -1
  192. package/lib/module/specs/ShadowRegistry/index.js +11 -8
  193. package/lib/module/specs/ShadowRegistry/index.js.map +1 -1
  194. package/lib/module/specs/StatusBar/index.js +1 -6
  195. package/lib/module/specs/StatusBar/index.js.map +1 -1
  196. package/lib/module/specs/StyleSheet/index.js +1 -0
  197. package/lib/module/specs/StyleSheet/index.js.map +1 -1
  198. package/lib/module/specs/TurboUnistyles/NativeTurboUnistyles.js +1 -2
  199. package/lib/module/specs/TurboUnistyles/NativeTurboUnistyles.js.map +1 -1
  200. package/lib/module/specs/UnistylesRuntime/index.js +0 -2
  201. package/lib/module/specs/UnistylesRuntime/index.js.map +1 -1
  202. package/lib/module/specs/index.js +2 -1
  203. package/lib/module/specs/index.js.map +1 -1
  204. package/lib/module/specs/index.web.js +0 -1
  205. package/lib/module/specs/index.web.js.map +1 -1
  206. package/lib/module/types/stylesheet.js.map +1 -1
  207. package/lib/module/utils.js +21 -0
  208. package/lib/module/utils.js.map +1 -0
  209. package/lib/module/web/convert/index.js +23 -20
  210. package/lib/module/web/convert/index.js.map +1 -1
  211. package/lib/module/web/convert/object/boxShadow.js +54 -0
  212. package/lib/module/web/convert/object/boxShadow.js.map +1 -0
  213. package/lib/module/web/convert/object/filter.js +37 -0
  214. package/lib/module/web/convert/object/filter.js.map +1 -0
  215. package/lib/module/web/convert/object/index.js +6 -0
  216. package/lib/module/web/convert/object/index.js.map +1 -0
  217. package/lib/module/web/convert/object/objectStyle.js +51 -0
  218. package/lib/module/web/convert/object/objectStyle.js.map +1 -0
  219. package/lib/module/web/convert/object/transform.js +22 -0
  220. package/lib/module/web/convert/object/transform.js.map +1 -0
  221. package/lib/module/web/convert/pseudo.js +5 -0
  222. package/lib/module/web/convert/pseudo.js.map +1 -0
  223. package/lib/module/web/convert/shadow/boxShadow.js +57 -0
  224. package/lib/module/web/convert/shadow/boxShadow.js.map +1 -0
  225. package/lib/module/web/convert/shadow/getShadowBreakpoints.js +33 -0
  226. package/lib/module/web/convert/shadow/getShadowBreakpoints.js.map +1 -0
  227. package/lib/module/web/convert/shadow/index.js +5 -0
  228. package/lib/module/web/convert/shadow/index.js.map +1 -0
  229. package/lib/module/web/convert/shadow/textShadow.js +54 -0
  230. package/lib/module/web/convert/shadow/textShadow.js.map +1 -0
  231. package/lib/module/web/convert/style.js +11 -7
  232. package/lib/module/web/convert/style.js.map +1 -1
  233. package/lib/module/web/convert/types.js.map +1 -1
  234. package/lib/module/web/convert/utils.js +5 -3
  235. package/lib/module/web/convert/utils.js.map +1 -1
  236. package/lib/module/web/create.js +37 -69
  237. package/lib/module/web/create.js.map +1 -1
  238. package/lib/module/web/index.js +9 -3
  239. package/lib/module/web/index.js.map +1 -1
  240. package/lib/module/web/listener.js +57 -0
  241. package/lib/module/web/listener.js.map +1 -0
  242. package/lib/module/web/mock.js +1 -11
  243. package/lib/module/web/mock.js.map +1 -1
  244. package/lib/module/web/registry.js +155 -20
  245. package/lib/module/web/registry.js.map +1 -1
  246. package/lib/module/web/runtime.js +23 -14
  247. package/lib/module/web/runtime.js.map +1 -1
  248. package/lib/module/web/shadowRegistry.js +139 -0
  249. package/lib/module/web/shadowRegistry.js.map +1 -0
  250. package/lib/module/web/state.js +32 -73
  251. package/lib/module/web/state.js.map +1 -1
  252. package/lib/module/web/utils/common.js +28 -0
  253. package/lib/module/web/utils/common.js.map +1 -0
  254. package/lib/module/web/utils/index.js +5 -0
  255. package/lib/module/web/utils/index.js.map +1 -0
  256. package/lib/module/web/utils/unistyle.js +65 -0
  257. package/lib/module/web/utils/unistyle.js.map +1 -0
  258. package/lib/module/web/{variants/getVariants.js → variants.js} +2 -2
  259. package/lib/module/web/variants.js.map +1 -0
  260. package/lib/typescript/src/components/Display.d.ts +7 -0
  261. package/lib/typescript/src/components/Display.d.ts.map +1 -0
  262. package/lib/typescript/src/components/Hide.d.ts +7 -0
  263. package/lib/typescript/src/components/Hide.d.ts.map +1 -0
  264. package/lib/typescript/src/components/Pressable.d.ts +8 -0
  265. package/lib/typescript/src/components/Pressable.d.ts.map +1 -0
  266. package/lib/typescript/src/components/Pressable.web.d.ts +14 -0
  267. package/lib/typescript/src/components/Pressable.web.d.ts.map +1 -0
  268. package/lib/typescript/src/components/index.d.ts +4 -0
  269. package/lib/typescript/src/components/index.d.ts.map +1 -0
  270. package/lib/typescript/src/core/createUnistylesComponent.d.ts +8 -0
  271. package/lib/typescript/src/core/createUnistylesComponent.d.ts.map +1 -0
  272. package/lib/typescript/src/core/createUnistylesComponent.native.d.ts +8 -0
  273. package/lib/typescript/src/core/createUnistylesComponent.native.d.ts.map +1 -0
  274. package/lib/typescript/src/core/getBoundArgs.d.ts +2 -0
  275. package/lib/typescript/src/core/getBoundArgs.d.ts.map +1 -0
  276. package/lib/typescript/src/core/getId.d.ts +2 -0
  277. package/lib/typescript/src/core/getId.d.ts.map +1 -0
  278. package/lib/typescript/src/core/index.d.ts +4 -0
  279. package/lib/typescript/src/core/index.d.ts.map +1 -0
  280. package/lib/typescript/src/hooks/index.d.ts +2 -0
  281. package/lib/typescript/src/hooks/index.d.ts.map +1 -0
  282. package/lib/typescript/src/hooks/useMedia.d.ts +6 -0
  283. package/lib/typescript/src/hooks/useMedia.d.ts.map +1 -0
  284. package/lib/typescript/src/hooks/useMedia.web.d.ts +6 -0
  285. package/lib/typescript/src/hooks/useMedia.web.d.ts.map +1 -0
  286. package/lib/typescript/src/index.d.ts +3 -0
  287. package/lib/typescript/src/index.d.ts.map +1 -1
  288. package/lib/typescript/src/mq.d.ts +8 -0
  289. package/lib/typescript/src/mq.d.ts.map +1 -1
  290. package/lib/typescript/src/specs/NativePlatform/NativePlatform.nitro.d.ts +8 -6
  291. package/lib/typescript/src/specs/NativePlatform/NativePlatform.nitro.d.ts.map +1 -1
  292. package/lib/typescript/src/specs/NavigtionBar/UnistylesNavigationBar.nitro.d.ts +0 -1
  293. package/lib/typescript/src/specs/NavigtionBar/UnistylesNavigationBar.nitro.d.ts.map +1 -1
  294. package/lib/typescript/src/specs/NavigtionBar/index.d.ts +1 -10
  295. package/lib/typescript/src/specs/NavigtionBar/index.d.ts.map +1 -1
  296. package/lib/typescript/src/specs/ShadowRegistry/index.d.ts +4 -4
  297. package/lib/typescript/src/specs/ShadowRegistry/index.d.ts.map +1 -1
  298. package/lib/typescript/src/specs/ShadowRegistry/types.d.ts +4 -0
  299. package/lib/typescript/src/specs/ShadowRegistry/types.d.ts.map +1 -1
  300. package/lib/typescript/src/specs/StatusBar/UnistylesStatusBar.nitro.d.ts +0 -1
  301. package/lib/typescript/src/specs/StatusBar/UnistylesStatusBar.nitro.d.ts.map +1 -1
  302. package/lib/typescript/src/specs/StatusBar/index.d.ts +2 -4
  303. package/lib/typescript/src/specs/StatusBar/index.d.ts.map +1 -1
  304. package/lib/typescript/src/specs/StyleSheet/UnistylesStyleSheet.nitro.d.ts +3 -1
  305. package/lib/typescript/src/specs/StyleSheet/UnistylesStyleSheet.nitro.d.ts.map +1 -1
  306. package/lib/typescript/src/specs/StyleSheet/index.d.ts +5 -3
  307. package/lib/typescript/src/specs/StyleSheet/index.d.ts.map +1 -1
  308. package/lib/typescript/src/specs/UnistylesRuntime/UnistylesRuntime.nitro.d.ts +1 -1
  309. package/lib/typescript/src/specs/UnistylesRuntime/UnistylesRuntime.nitro.d.ts.map +1 -1
  310. package/lib/typescript/src/specs/UnistylesRuntime/index.d.ts +4 -2
  311. package/lib/typescript/src/specs/UnistylesRuntime/index.d.ts.map +1 -1
  312. package/lib/typescript/src/specs/index.d.ts +4 -2
  313. package/lib/typescript/src/specs/index.d.ts.map +1 -1
  314. package/lib/typescript/src/specs/index.web.d.ts +0 -2
  315. package/lib/typescript/src/specs/index.web.d.ts.map +1 -1
  316. package/lib/typescript/src/types/breakpoints.d.ts +11 -11
  317. package/lib/typescript/src/types/breakpoints.d.ts.map +1 -1
  318. package/lib/typescript/src/types/common.d.ts +2 -0
  319. package/lib/typescript/src/types/common.d.ts.map +1 -1
  320. package/lib/typescript/src/types/index.d.ts +2 -2
  321. package/lib/typescript/src/types/index.d.ts.map +1 -1
  322. package/lib/typescript/src/types/stylesheet.d.ts +6 -4
  323. package/lib/typescript/src/types/stylesheet.d.ts.map +1 -1
  324. package/lib/typescript/src/types/variants.d.ts +4 -1
  325. package/lib/typescript/src/types/variants.d.ts.map +1 -1
  326. package/lib/typescript/src/utils.d.ts +2 -0
  327. package/lib/typescript/src/utils.d.ts.map +1 -0
  328. package/lib/typescript/src/web/convert/index.d.ts +1 -2
  329. package/lib/typescript/src/web/convert/index.d.ts.map +1 -1
  330. package/lib/typescript/src/web/convert/object/boxShadow.d.ts +9 -0
  331. package/lib/typescript/src/web/convert/object/boxShadow.d.ts.map +1 -0
  332. package/lib/typescript/src/web/convert/object/filter.d.ts +3 -0
  333. package/lib/typescript/src/web/convert/object/filter.d.ts.map +1 -0
  334. package/lib/typescript/src/web/convert/object/index.d.ts +4 -0
  335. package/lib/typescript/src/web/convert/object/index.d.ts.map +1 -0
  336. package/lib/typescript/src/web/convert/object/objectStyle.d.ts +5 -0
  337. package/lib/typescript/src/web/convert/object/objectStyle.d.ts.map +1 -0
  338. package/lib/typescript/src/web/convert/object/transform.d.ts +3 -0
  339. package/lib/typescript/src/web/convert/object/transform.d.ts.map +1 -0
  340. package/lib/typescript/src/web/convert/pseudo.d.ts +6 -0
  341. package/lib/typescript/src/web/convert/pseudo.d.ts.map +1 -0
  342. package/lib/typescript/src/web/convert/shadow/boxShadow.d.ts +8 -0
  343. package/lib/typescript/src/web/convert/shadow/boxShadow.d.ts.map +1 -0
  344. package/lib/typescript/src/web/convert/shadow/getShadowBreakpoints.d.ts +2 -0
  345. package/lib/typescript/src/web/convert/shadow/getShadowBreakpoints.d.ts.map +1 -0
  346. package/lib/typescript/src/web/convert/shadow/index.d.ts +3 -0
  347. package/lib/typescript/src/web/convert/shadow/index.d.ts.map +1 -0
  348. package/lib/typescript/src/web/convert/shadow/textShadow.d.ts +8 -0
  349. package/lib/typescript/src/web/convert/shadow/textShadow.d.ts.map +1 -0
  350. package/lib/typescript/src/web/convert/style.d.ts +1 -2
  351. package/lib/typescript/src/web/convert/style.d.ts.map +1 -1
  352. package/lib/typescript/src/web/convert/types.d.ts +7 -1
  353. package/lib/typescript/src/web/convert/types.d.ts.map +1 -1
  354. package/lib/typescript/src/web/convert/utils.d.ts +8 -4
  355. package/lib/typescript/src/web/convert/utils.d.ts.map +1 -1
  356. package/lib/typescript/src/web/create.d.ts +215 -1221
  357. package/lib/typescript/src/web/create.d.ts.map +1 -1
  358. package/lib/typescript/src/web/index.d.ts +223 -1222
  359. package/lib/typescript/src/web/index.d.ts.map +1 -1
  360. package/lib/typescript/src/web/{listener/listener.d.ts → listener.d.ts} +5 -2
  361. package/lib/typescript/src/web/listener.d.ts.map +1 -0
  362. package/lib/typescript/src/web/mock.d.ts +0 -9
  363. package/lib/typescript/src/web/mock.d.ts.map +1 -1
  364. package/lib/typescript/src/web/registry.d.ts +18 -6
  365. package/lib/typescript/src/web/registry.d.ts.map +1 -1
  366. package/lib/typescript/src/web/runtime.d.ts +6 -5
  367. package/lib/typescript/src/web/runtime.d.ts.map +1 -1
  368. package/lib/typescript/src/web/shadowRegistry.d.ts +17 -0
  369. package/lib/typescript/src/web/shadowRegistry.d.ts.map +1 -0
  370. package/lib/typescript/src/web/state.d.ts +3 -9
  371. package/lib/typescript/src/web/state.d.ts.map +1 -1
  372. package/lib/typescript/src/web/utils/common.d.ts +8 -0
  373. package/lib/typescript/src/web/utils/common.d.ts.map +1 -0
  374. package/lib/typescript/src/web/utils/index.d.ts +3 -0
  375. package/lib/typescript/src/web/utils/index.d.ts.map +1 -0
  376. package/lib/typescript/src/web/utils/unistyle.d.ts +19 -0
  377. package/lib/typescript/src/web/utils/unistyle.d.ts.map +1 -0
  378. package/lib/typescript/src/web/{variants/getVariants.d.ts → variants.d.ts} +2 -2
  379. package/lib/typescript/src/web/variants.d.ts.map +1 -0
  380. package/nitrogen/generated/android/c++/JColorScheme.hpp +2 -2
  381. package/nitrogen/generated/android/c++/JFunc_void_UnistylesNativeMiniRuntime.hpp +57 -0
  382. package/nitrogen/generated/android/c++/JFunc_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime.hpp +69 -0
  383. package/nitrogen/generated/android/c++/JHybridNativePlatformSpec.cpp +35 -34
  384. package/nitrogen/generated/android/c++/JHybridNativePlatformSpec.hpp +15 -6
  385. package/nitrogen/generated/android/c++/JOrientation.hpp +2 -2
  386. package/nitrogen/generated/android/c++/JUnistyleDependency.hpp +5 -2
  387. package/nitrogen/generated/android/c++/JUnistylesNativeMiniRuntime.hpp +9 -7
  388. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/ColorScheme.kt +5 -1
  389. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Dimensions.kt +1 -0
  390. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/{Func_void_std__vector_UnistyleDependency_.kt → Func_void_UnistylesNativeMiniRuntime.kt} +6 -5
  391. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime.kt +46 -0
  392. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/HybridNativePlatformSpec.kt +25 -13
  393. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Insets.kt +1 -0
  394. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Orientation.kt +5 -1
  395. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/UnistyleDependency.kt +6 -1
  396. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/UnistylesNativeMiniRuntime.kt +3 -1
  397. package/nitrogen/generated/android/unistyles+autolinking.cmake +13 -1
  398. package/nitrogen/generated/android/unistyles+autolinking.gradle +2 -0
  399. package/nitrogen/generated/android/{UnistylesOnLoad.cpp → unistylesOnLoad.cpp} +6 -4
  400. package/nitrogen/generated/android/{UnistylesOnLoad.hpp → unistylesOnLoad.hpp} +1 -1
  401. package/nitrogen/generated/ios/Unistyles+autolinking.rb +6 -4
  402. package/nitrogen/generated/ios/Unistyles-Swift-Cxx-Bridge.cpp +25 -0
  403. package/nitrogen/generated/ios/Unistyles-Swift-Cxx-Bridge.hpp +73 -38
  404. package/nitrogen/generated/ios/Unistyles-Swift-Cxx-Umbrella.hpp +1 -30
  405. package/nitrogen/generated/ios/c++/HybridNativePlatformSpecSwift.hpp +8 -8
  406. package/nitrogen/generated/ios/swift/HybridNativePlatformSpec.swift +4 -16
  407. package/nitrogen/generated/ios/swift/HybridNativePlatformSpecCxx.swift +156 -115
  408. package/nitrogen/generated/ios/swift/UnistyleDependency.swift +4 -0
  409. package/nitrogen/generated/ios/swift/UnistylesNativeMiniRuntime.swift +16 -5
  410. package/nitrogen/generated/shared/c++/ColorScheme.hpp +2 -2
  411. package/nitrogen/generated/shared/c++/HybridNativePlatformSpec.cpp +2 -2
  412. package/nitrogen/generated/shared/c++/HybridNativePlatformSpec.hpp +6 -3
  413. package/nitrogen/generated/shared/c++/HybridUnistylesNavigationBarSpec.cpp +0 -1
  414. package/nitrogen/generated/shared/c++/HybridUnistylesNavigationBarSpec.hpp +3 -1
  415. package/nitrogen/generated/shared/c++/HybridUnistylesRuntimeSpec.cpp +1 -0
  416. package/nitrogen/generated/shared/c++/HybridUnistylesRuntimeSpec.hpp +5 -0
  417. package/nitrogen/generated/shared/c++/HybridUnistylesShadowRegistrySpec.hpp +3 -0
  418. package/nitrogen/generated/shared/c++/HybridUnistylesStatusBarSpec.cpp +0 -1
  419. package/nitrogen/generated/shared/c++/HybridUnistylesStatusBarSpec.hpp +3 -1
  420. package/nitrogen/generated/shared/c++/HybridUnistylesStyleSheetSpec.cpp +2 -1
  421. package/nitrogen/generated/shared/c++/HybridUnistylesStyleSheetSpec.hpp +10 -4
  422. package/nitrogen/generated/shared/c++/Orientation.hpp +2 -2
  423. package/nitrogen/generated/shared/c++/UnistyleDependency.hpp +2 -1
  424. package/nitrogen/generated/shared/c++/UnistylesCxxMiniRuntime.hpp +10 -9
  425. package/nitrogen/generated/shared/c++/UnistylesNativeMiniRuntime.hpp +9 -8
  426. package/package.json +24 -37
  427. package/plugin/common.js +27 -2
  428. package/plugin/import.js +29 -3
  429. package/plugin/index.js +104 -15
  430. package/plugin/ref.js +50 -16
  431. package/plugin/style.js +443 -9
  432. package/plugin/stylesheet.js +10 -3
  433. package/src/components/Display.tsx +12 -0
  434. package/src/components/Hide.tsx +12 -0
  435. package/src/components/Pressable.tsx +89 -0
  436. package/src/components/Pressable.web.tsx +129 -0
  437. package/src/components/index.ts +3 -0
  438. package/src/core/createUnistylesComponent.native.tsx +83 -0
  439. package/src/core/createUnistylesComponent.tsx +84 -0
  440. package/src/core/getBoundArgs.ts +15 -0
  441. package/src/core/getId.ts +1 -0
  442. package/src/core/index.ts +3 -0
  443. package/src/hooks/index.ts +1 -0
  444. package/src/hooks/useMedia.ts +64 -0
  445. package/src/hooks/useMedia.web.ts +47 -0
  446. package/src/index.ts +3 -12
  447. package/src/mq.ts +33 -15
  448. package/src/specs/NativePlatform/NativePlatform.nitro.ts +8 -6
  449. package/src/specs/NavigtionBar/UnistylesNavigationBar.nitro.ts +0 -1
  450. package/src/specs/NavigtionBar/index.ts +1 -25
  451. package/src/specs/ShadowRegistry/index.ts +17 -12
  452. package/src/specs/ShadowRegistry/types.ts +6 -2
  453. package/src/specs/StatusBar/UnistylesStatusBar.nitro.ts +0 -1
  454. package/src/specs/StatusBar/index.ts +2 -12
  455. package/src/specs/StyleSheet/UnistylesStyleSheet.nitro.ts +4 -1
  456. package/src/specs/StyleSheet/index.ts +7 -3
  457. package/src/specs/TurboUnistyles/NativeTurboUnistyles.ts +1 -2
  458. package/src/specs/UnistylesRuntime/UnistylesRuntime.nitro.ts +2 -2
  459. package/src/specs/UnistylesRuntime/index.ts +4 -3
  460. package/src/specs/index.ts +6 -2
  461. package/src/specs/index.web.ts +0 -4
  462. package/src/types/breakpoints.ts +25 -13
  463. package/src/types/common.ts +2 -0
  464. package/src/types/index.ts +2 -2
  465. package/src/types/stylesheet.ts +7 -5
  466. package/src/types/variants.ts +7 -1
  467. package/src/utils.ts +22 -0
  468. package/src/web/convert/index.ts +24 -24
  469. package/src/web/convert/object/boxShadow.ts +55 -0
  470. package/src/web/convert/object/filter.ts +39 -0
  471. package/src/web/convert/object/index.ts +3 -0
  472. package/src/web/convert/object/objectStyle.ts +69 -0
  473. package/src/web/convert/object/transform.ts +24 -0
  474. package/src/web/convert/pseudo.ts +137 -0
  475. package/src/web/convert/shadow/boxShadow.ts +50 -0
  476. package/src/web/convert/shadow/getShadowBreakpoints.ts +34 -0
  477. package/src/web/convert/shadow/index.ts +2 -0
  478. package/src/web/convert/shadow/textShadow.ts +48 -0
  479. package/src/web/convert/style.ts +61 -10
  480. package/src/web/convert/types.ts +8 -1
  481. package/src/web/convert/utils.ts +13 -7
  482. package/src/web/create.ts +35 -83
  483. package/src/web/index.ts +9 -4
  484. package/src/web/listener.ts +65 -0
  485. package/src/web/mock.ts +1 -12
  486. package/src/web/registry.ts +202 -28
  487. package/src/web/runtime.ts +29 -18
  488. package/src/web/shadowRegistry.ts +149 -0
  489. package/src/web/state.ts +52 -87
  490. package/src/web/utils/common.ts +45 -0
  491. package/src/web/utils/index.ts +2 -0
  492. package/src/web/utils/unistyle.ts +94 -0
  493. package/src/web/{variants/getVariants.ts → variants.ts} +2 -2
  494. package/android/src/main/cxx/helpers.cpp +0 -105
  495. package/android/src/main/cxx/helpers.h +0 -16
  496. package/android/src/main/cxx/platform.cpp +0 -170
  497. package/android/src/main/cxx/platform.h +0 -20
  498. package/lib/commonjs/web/convert/boxShadow.js.map +0 -1
  499. package/lib/commonjs/web/convert/breakpoint.js +0 -25
  500. package/lib/commonjs/web/convert/breakpoint.js.map +0 -1
  501. package/lib/commonjs/web/convert/shadow.js +0 -68
  502. package/lib/commonjs/web/convert/shadow.js.map +0 -1
  503. package/lib/commonjs/web/convert/textShadow.js.map +0 -1
  504. package/lib/commonjs/web/convert/transform.js +0 -72
  505. package/lib/commonjs/web/convert/transform.js.map +0 -1
  506. package/lib/commonjs/web/listener/index.js +0 -13
  507. package/lib/commonjs/web/listener/index.js.map +0 -1
  508. package/lib/commonjs/web/listener/listener.js +0 -36
  509. package/lib/commonjs/web/listener/listener.js.map +0 -1
  510. package/lib/commonjs/web/mq.js +0 -23
  511. package/lib/commonjs/web/mq.js.map +0 -1
  512. package/lib/commonjs/web/pseudo.js +0 -11
  513. package/lib/commonjs/web/pseudo.js.map +0 -1
  514. package/lib/commonjs/web/utils.js +0 -78
  515. package/lib/commonjs/web/utils.js.map +0 -1
  516. package/lib/commonjs/web/variants/getVariants.js.map +0 -1
  517. package/lib/commonjs/web/variants/index.js +0 -28
  518. package/lib/commonjs/web/variants/index.js.map +0 -1
  519. package/lib/commonjs/web/variants/useVariants.js +0 -75
  520. package/lib/commonjs/web/variants/useVariants.js.map +0 -1
  521. package/lib/module/web/convert/boxShadow.js +0 -72
  522. package/lib/module/web/convert/boxShadow.js.map +0 -1
  523. package/lib/module/web/convert/breakpoint.js +0 -20
  524. package/lib/module/web/convert/breakpoint.js.map +0 -1
  525. package/lib/module/web/convert/shadow.js +0 -63
  526. package/lib/module/web/convert/shadow.js.map +0 -1
  527. package/lib/module/web/convert/textShadow.js +0 -68
  528. package/lib/module/web/convert/textShadow.js.map +0 -1
  529. package/lib/module/web/convert/transform.js +0 -67
  530. package/lib/module/web/convert/transform.js.map +0 -1
  531. package/lib/module/web/listener/index.js +0 -4
  532. package/lib/module/web/listener/index.js.map +0 -1
  533. package/lib/module/web/listener/listener.js +0 -31
  534. package/lib/module/web/listener/listener.js.map +0 -1
  535. package/lib/module/web/mq.js +0 -17
  536. package/lib/module/web/mq.js.map +0 -1
  537. package/lib/module/web/pseudo.js +0 -6
  538. package/lib/module/web/pseudo.js.map +0 -1
  539. package/lib/module/web/utils.js +0 -65
  540. package/lib/module/web/utils.js.map +0 -1
  541. package/lib/module/web/variants/getVariants.js.map +0 -1
  542. package/lib/module/web/variants/index.js +0 -5
  543. package/lib/module/web/variants/index.js.map +0 -1
  544. package/lib/module/web/variants/useVariants.js +0 -70
  545. package/lib/module/web/variants/useVariants.js.map +0 -1
  546. package/lib/typescript/example/App.d.ts +0 -4
  547. package/lib/typescript/example/App.d.ts.map +0 -1
  548. package/lib/typescript/example/Typography.d.ts +0 -11
  549. package/lib/typescript/example/Typography.d.ts.map +0 -1
  550. package/lib/typescript/example/unistyles.d.ts +0 -63
  551. package/lib/typescript/example/unistyles.d.ts.map +0 -1
  552. package/lib/typescript/expo-example/App.d.ts +0 -4
  553. package/lib/typescript/expo-example/App.d.ts.map +0 -1
  554. package/lib/typescript/expo-example/unistyles.d.ts +0 -63
  555. package/lib/typescript/expo-example/unistyles.d.ts.map +0 -1
  556. package/lib/typescript/src/web/convert/boxShadow.d.ts +0 -3
  557. package/lib/typescript/src/web/convert/boxShadow.d.ts.map +0 -1
  558. package/lib/typescript/src/web/convert/breakpoint.d.ts +0 -3
  559. package/lib/typescript/src/web/convert/breakpoint.d.ts.map +0 -1
  560. package/lib/typescript/src/web/convert/shadow.d.ts +0 -2
  561. package/lib/typescript/src/web/convert/shadow.d.ts.map +0 -1
  562. package/lib/typescript/src/web/convert/textShadow.d.ts +0 -3
  563. package/lib/typescript/src/web/convert/textShadow.d.ts.map +0 -1
  564. package/lib/typescript/src/web/convert/transform.d.ts +0 -5
  565. package/lib/typescript/src/web/convert/transform.d.ts.map +0 -1
  566. package/lib/typescript/src/web/listener/index.d.ts +0 -2
  567. package/lib/typescript/src/web/listener/index.d.ts.map +0 -1
  568. package/lib/typescript/src/web/listener/listener.d.ts.map +0 -1
  569. package/lib/typescript/src/web/mq.d.ts +0 -4
  570. package/lib/typescript/src/web/mq.d.ts.map +0 -1
  571. package/lib/typescript/src/web/pseudo.d.ts +0 -4
  572. package/lib/typescript/src/web/pseudo.d.ts.map +0 -1
  573. package/lib/typescript/src/web/utils.d.ts +0 -20
  574. package/lib/typescript/src/web/utils.d.ts.map +0 -1
  575. package/lib/typescript/src/web/variants/getVariants.d.ts.map +0 -1
  576. package/lib/typescript/src/web/variants/index.d.ts +0 -3
  577. package/lib/typescript/src/web/variants/index.d.ts.map +0 -1
  578. package/lib/typescript/src/web/variants/useVariants.d.ts +0 -3
  579. package/lib/typescript/src/web/variants/useVariants.d.ts.map +0 -1
  580. package/nitrogen/generated/android/c++/JFunc_void_std__vector_UnistyleDependency_.hpp +0 -60
  581. package/plugin/__tests__/dependencies.spec.js +0 -438
  582. package/plugin/__tests__/ref.spec.js +0 -1170
  583. package/plugin/__tests__/stylesheet.spec.js +0 -489
  584. package/src/web/convert/boxShadow.ts +0 -72
  585. package/src/web/convert/breakpoint.ts +0 -21
  586. package/src/web/convert/shadow.ts +0 -68
  587. package/src/web/convert/textShadow.ts +0 -69
  588. package/src/web/convert/transform.ts +0 -89
  589. package/src/web/listener/index.ts +0 -1
  590. package/src/web/listener/listener.ts +0 -33
  591. package/src/web/mq.ts +0 -19
  592. package/src/web/pseudo.ts +0 -11
  593. package/src/web/utils.ts +0 -95
  594. package/src/web/variants/index.ts +0 -2
  595. package/src/web/variants/useVariants.ts +0 -79
  596. /package/nitrogen/generated/android/{UnistylesOnLoad.kt → unistylesOnLoad.kt} +0 -0
@@ -16,8 +16,6 @@
16
16
  #include "JColorScheme.hpp"
17
17
  #include "JDimensions.hpp"
18
18
  #include "JInsets.hpp"
19
- #include "JOrientation.hpp"
20
- #include "Orientation.hpp"
21
19
  #include <string>
22
20
 
23
21
  namespace margelo::nitro::unistyles {
@@ -56,8 +54,10 @@ namespace margelo::nitro::unistyles {
56
54
  jni::local_ref<JDimensions> statusBar = this->getFieldValue(fieldStatusBar);
57
55
  static const auto fieldNavigationBar = clazz->getField<JDimensions>("navigationBar");
58
56
  jni::local_ref<JDimensions> navigationBar = this->getFieldValue(fieldNavigationBar);
59
- static const auto fieldOrientation = clazz->getField<JOrientation>("orientation");
60
- jni::local_ref<JOrientation> orientation = this->getFieldValue(fieldOrientation);
57
+ static const auto fieldIsPortrait = clazz->getField<jboolean>("isPortrait");
58
+ jboolean isPortrait = this->getFieldValue(fieldIsPortrait);
59
+ static const auto fieldIsLandscape = clazz->getField<jboolean>("isLandscape");
60
+ jboolean isLandscape = this->getFieldValue(fieldIsLandscape);
61
61
  return UnistylesNativeMiniRuntime(
62
62
  colorScheme->toCpp(),
63
63
  screen->toCpp(),
@@ -65,10 +65,11 @@ namespace margelo::nitro::unistyles {
65
65
  insets->toCpp(),
66
66
  pixelRatio,
67
67
  fontScale,
68
- rtl,
68
+ static_cast<bool>(rtl),
69
69
  statusBar->toCpp(),
70
70
  navigationBar->toCpp(),
71
- orientation->toCpp()
71
+ static_cast<bool>(isPortrait),
72
+ static_cast<bool>(isLandscape)
72
73
  );
73
74
  }
74
75
 
@@ -88,7 +89,8 @@ namespace margelo::nitro::unistyles {
88
89
  value.rtl,
89
90
  JDimensions::fromCpp(value.statusBar),
90
91
  JDimensions::fromCpp(value.navigationBar),
91
- JOrientation::fromCpp(value.orientation)
92
+ value.isPortrait,
93
+ value.isLandscape
92
94
  );
93
95
  }
94
96
  };
@@ -18,5 +18,9 @@ import com.facebook.proguard.annotations.DoNotStrip
18
18
  enum class ColorScheme {
19
19
  DARK,
20
20
  LIGHT,
21
- UNSPECIFIED
21
+ UNSPECIFIED;
22
+
23
+ @DoNotStrip
24
+ @Keep
25
+ private val _ordinal = ordinal
22
26
  }
@@ -9,6 +9,7 @@ package com.margelo.nitro.unistyles
9
9
 
10
10
  import androidx.annotation.Keep
11
11
  import com.facebook.proguard.annotations.DoNotStrip
12
+ import com.margelo.nitro.core.*
12
13
 
13
14
  /**
14
15
  * Represents the JavaScript object/struct "Dimensions".
@@ -1,5 +1,5 @@
1
1
  ///
2
- /// Func_void_std__vector_UnistyleDependency_.kt
2
+ /// Func_void_UnistylesNativeMiniRuntime.kt
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © 2024 Marc Rousavy @ Margelo
@@ -10,16 +10,17 @@ package com.margelo.nitro.unistyles
10
10
  import androidx.annotation.Keep
11
11
  import com.facebook.jni.HybridData
12
12
  import com.facebook.proguard.annotations.DoNotStrip
13
+ import com.margelo.nitro.core.*
13
14
  import dalvik.annotation.optimization.FastNative
14
15
 
15
16
  /**
16
- * Represents the JavaScript callback `(dependencies: array) => void`.
17
+ * Represents the JavaScript callback `(miniRuntime: struct) => void`.
17
18
  * This is implemented in C++, via a `std::function<...>`.
18
19
  */
19
20
  @DoNotStrip
20
21
  @Keep
21
22
  @Suppress("RedundantSuppression", "ConvertSecondaryConstructorToPrimary", "RedundantUnitReturnType", "KotlinJniMissingFunction", "ClassName", "unused")
22
- class Func_void_std__vector_UnistyleDependency_ {
23
+ class Func_void_UnistylesNativeMiniRuntime {
23
24
  @DoNotStrip
24
25
  @Keep
25
26
  private val mHybridData: HybridData
@@ -34,12 +35,12 @@ class Func_void_std__vector_UnistyleDependency_ {
34
35
  * Converts this function to a Kotlin Lambda.
35
36
  * This exists purely as syntactic sugar, and has minimal runtime overhead.
36
37
  */
37
- fun toLambda(): (dependencies: Array<UnistyleDependency>) -> Unit = this::call
38
+ fun toLambda(): (miniRuntime: UnistylesNativeMiniRuntime) -> Unit = this::call
38
39
 
39
40
  /**
40
41
  * Call the given JS callback.
41
42
  * @throws Throwable if the JS function itself throws an error, or if the JS function/runtime has already been deleted.
42
43
  */
43
44
  @FastNative
44
- external fun call(dependencies: Array<UnistyleDependency>): Unit
45
+ external fun call(miniRuntime: UnistylesNativeMiniRuntime): Unit
45
46
  }
@@ -0,0 +1,46 @@
1
+ ///
2
+ /// Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2024 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.margelo.nitro.unistyles
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.jni.HybridData
12
+ import com.facebook.proguard.annotations.DoNotStrip
13
+ import com.margelo.nitro.core.*
14
+ import dalvik.annotation.optimization.FastNative
15
+
16
+ /**
17
+ * Represents the JavaScript callback `(dependencies: array, miniRuntime: struct) => void`.
18
+ * This is implemented in C++, via a `std::function<...>`.
19
+ */
20
+ @DoNotStrip
21
+ @Keep
22
+ @Suppress("RedundantSuppression", "ConvertSecondaryConstructorToPrimary", "RedundantUnitReturnType", "KotlinJniMissingFunction", "ClassName", "unused")
23
+ class Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime {
24
+ @DoNotStrip
25
+ @Keep
26
+ private val mHybridData: HybridData
27
+
28
+ @DoNotStrip
29
+ @Keep
30
+ private constructor(hybridData: HybridData) {
31
+ mHybridData = hybridData
32
+ }
33
+
34
+ /**
35
+ * Converts this function to a Kotlin Lambda.
36
+ * This exists purely as syntactic sugar, and has minimal runtime overhead.
37
+ */
38
+ fun toLambda(): (dependencies: Array<UnistyleDependency>, miniRuntime: UnistylesNativeMiniRuntime) -> Unit = this::call
39
+
40
+ /**
41
+ * Call the given JS callback.
42
+ * @throws Throwable if the JS function itself throws an error, or if the JS function/runtime has already been deleted.
43
+ */
44
+ @FastNative
45
+ external fun call(dependencies: Array<UnistyleDependency>, miniRuntime: UnistylesNativeMiniRuntime): Unit
46
+ }
@@ -21,10 +21,8 @@ import com.margelo.nitro.core.*
21
21
  @Keep
22
22
  @Suppress("RedundantSuppression", "KotlinJniMissingFunction", "PropertyName", "RedundantUnitReturnType", "unused")
23
23
  abstract class HybridNativePlatformSpec: HybridObject() {
24
- protected val TAG = "HybridNativePlatformSpec"
25
-
26
24
  @DoNotStrip
27
- val mHybridData: HybridData = initHybrid()
25
+ private var mHybridData: HybridData = initHybrid()
28
26
 
29
27
  init {
30
28
  // Pass this `HybridData` through to it's base class,
@@ -32,6 +30,13 @@ abstract class HybridNativePlatformSpec: HybridObject() {
32
30
  super.updateNative(mHybridData)
33
31
  }
34
32
 
33
+ /**
34
+ * Call from a child class to initialize HybridData with a child.
35
+ */
36
+ override fun updateNative(hybridData: HybridData) {
37
+ mHybridData = hybridData
38
+ }
39
+
35
40
  // Properties
36
41
 
37
42
 
@@ -82,38 +87,45 @@ abstract class HybridNativePlatformSpec: HybridObject() {
82
87
 
83
88
  @DoNotStrip
84
89
  @Keep
85
- abstract fun setNavigationBarBackgroundColor(color: Double): Unit
90
+ abstract fun setNavigationBarHidden(isHidden: Boolean): Unit
86
91
 
87
92
  @DoNotStrip
88
93
  @Keep
89
- abstract fun setNavigationBarHidden(isHidden: Boolean): Unit
94
+ abstract fun setStatusBarHidden(isHidden: Boolean): Unit
90
95
 
91
96
  @DoNotStrip
92
97
  @Keep
93
- abstract fun setStatusBarHidden(isHidden: Boolean): Unit
98
+ abstract fun setImmersiveMode(isEnabled: Boolean): Unit
94
99
 
95
100
  @DoNotStrip
96
101
  @Keep
97
- abstract fun setStatusBarBackgroundColor(color: Double): Unit
102
+ abstract fun getMiniRuntime(): UnistylesNativeMiniRuntime
98
103
 
99
104
  @DoNotStrip
100
105
  @Keep
101
- abstract fun setImmersiveMode(isEnabled: Boolean): Unit
106
+ abstract fun registerPlatformListener(callback: (dependencies: Array<UnistyleDependency>, miniRuntime: UnistylesNativeMiniRuntime) -> Unit): Unit
102
107
 
103
108
  @DoNotStrip
104
109
  @Keep
105
- abstract fun getMiniRuntime(): UnistylesNativeMiniRuntime
110
+ private fun registerPlatformListener(callback: Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime): Unit {
111
+ val __result = registerPlatformListener(callback.toLambda())
112
+ return __result
113
+ }
106
114
 
107
115
  @DoNotStrip
108
116
  @Keep
109
- abstract fun registerPlatformListener(callback: (dependencies: Array<UnistyleDependency>) -> Unit): Unit
117
+ abstract fun registerImeListener(callback: (miniRuntime: UnistylesNativeMiniRuntime) -> Unit): Unit
110
118
 
111
119
  @DoNotStrip
112
120
  @Keep
113
- private fun registerPlatformListener(callback: Func_void_std__vector_UnistyleDependency_): Unit {
114
- val result = registerPlatformListener(callback.toLambda())
115
- return result
121
+ private fun registerImeListener(callback: Func_void_UnistylesNativeMiniRuntime): Unit {
122
+ val __result = registerImeListener(callback.toLambda())
123
+ return __result
116
124
  }
125
+
126
+ @DoNotStrip
127
+ @Keep
128
+ abstract fun unregisterPlatformListeners(): Unit
117
129
 
118
130
  private external fun initHybrid(): HybridData
119
131
 
@@ -9,6 +9,7 @@ package com.margelo.nitro.unistyles
9
9
 
10
10
  import androidx.annotation.Keep
11
11
  import com.facebook.proguard.annotations.DoNotStrip
12
+ import com.margelo.nitro.core.*
12
13
 
13
14
  /**
14
15
  * Represents the JavaScript object/struct "Insets".
@@ -17,5 +17,9 @@ import com.facebook.proguard.annotations.DoNotStrip
17
17
  @Keep
18
18
  enum class Orientation {
19
19
  PORTRAIT,
20
- LANDSCAPE
20
+ LANDSCAPE;
21
+
22
+ @DoNotStrip
23
+ @Keep
24
+ private val _ordinal = ordinal
21
25
  }
@@ -29,5 +29,10 @@ enum class UnistyleDependency {
29
29
  PIXELRATIO,
30
30
  FONTSCALE,
31
31
  STATUSBAR,
32
- NAVIGATIONBAR
32
+ NAVIGATIONBAR,
33
+ IME;
34
+
35
+ @DoNotStrip
36
+ @Keep
37
+ private val _ordinal = ordinal
33
38
  }
@@ -9,6 +9,7 @@ package com.margelo.nitro.unistyles
9
9
 
10
10
  import androidx.annotation.Keep
11
11
  import com.facebook.proguard.annotations.DoNotStrip
12
+ import com.margelo.nitro.core.*
12
13
 
13
14
  /**
14
15
  * Represents the JavaScript object/struct "UnistylesNativeMiniRuntime".
@@ -25,5 +26,6 @@ data class UnistylesNativeMiniRuntime(
25
26
  val rtl: Boolean,
26
27
  val statusBar: Dimensions,
27
28
  val navigationBar: Dimensions,
28
- val orientation: Orientation
29
+ val isPortrait: Boolean,
30
+ val isLandscape: Boolean
29
31
  )
@@ -47,6 +47,18 @@ target_link_libraries(
47
47
  unistyles
48
48
  fbjni::fbjni # <-- Facebook C++ JNI helpers
49
49
  ReactAndroid::jsi # <-- RN: JSI
50
- ReactAndroid::react_nativemodule_core # <-- RN: TurboModules Core
51
50
  react-native-nitro-modules::NitroModules # <-- NitroModules Core :)
52
51
  )
52
+
53
+ # Link react-native (different prefab between RN 0.75 and RN 0.76)
54
+ if(ReactAndroid_VERSION_MINOR GREATER_EQUAL 76)
55
+ target_link_libraries(
56
+ unistyles
57
+ ReactAndroid::reactnative # <-- RN: Native Modules umbrella prefab
58
+ )
59
+ else()
60
+ target_link_libraries(
61
+ unistyles
62
+ ReactAndroid::react_nativemodule_core # <-- RN: TurboModules Core
63
+ )
64
+ endif()
@@ -13,6 +13,8 @@
13
13
  /// apply from: '../nitrogen/generated/android/unistyles+autolinking.gradle'
14
14
  /// ```
15
15
 
16
+ logger.warn("[NitroModules] 🔥 unistyles is boosted by nitro!")
17
+
16
18
  android {
17
19
  sourceSets {
18
20
  main {
@@ -1,18 +1,19 @@
1
1
  ///
2
- /// UnistylesOnLoad.cpp
2
+ /// unistylesOnLoad.cpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © 2024 Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
- #include "UnistylesOnLoad.hpp"
8
+ #include "unistylesOnLoad.hpp"
9
9
 
10
10
  #include <jni.h>
11
11
  #include <fbjni/fbjni.h>
12
12
  #include <NitroModules/HybridObjectRegistry.hpp>
13
13
 
14
14
  #include "JHybridNativePlatformSpec.hpp"
15
- #include "JFunc_void_std__vector_UnistyleDependency_.hpp"
15
+ #include "JFunc_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime.hpp"
16
+ #include "JFunc_void_UnistylesNativeMiniRuntime.hpp"
16
17
 
17
18
  namespace margelo::nitro::unistyles {
18
19
 
@@ -24,7 +25,8 @@ int initialize(JavaVM* vm) {
24
25
  return facebook::jni::initialize(vm, [] {
25
26
  // Register native JNI methods
26
27
  margelo::nitro::unistyles::JHybridNativePlatformSpec::registerNatives();
27
- margelo::nitro::unistyles::JFunc_void_std__vector_UnistyleDependency_::registerNatives();
28
+ margelo::nitro::unistyles::JFunc_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime::registerNatives();
29
+ margelo::nitro::unistyles::JFunc_void_UnistylesNativeMiniRuntime::registerNatives();
28
30
 
29
31
  // Register Nitro Hybrid Objects
30
32
 
@@ -1,5 +1,5 @@
1
1
  ///
2
- /// UnistylesOnLoad.hpp
2
+ /// unistylesOnLoad.hpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © 2024 Marc Rousavy @ Margelo
@@ -20,11 +20,11 @@
20
20
  # ```
21
21
 
22
22
  def add_nitrogen_files(spec)
23
- Pod::UI.puts "[NitroModules] Adding Unistyles specs..."
23
+ Pod::UI.puts "[NitroModules] 🔥 Unistyles is boosted by nitro!"
24
24
 
25
25
  spec.dependency "NitroModules"
26
26
 
27
- current_source_files = spec.attributes_hash['source_files'] || []
27
+ current_source_files = Array(spec.attributes_hash['source_files'])
28
28
  spec.source_files = current_source_files + [
29
29
  # Generated cross-platform specs
30
30
  "nitrogen/generated/shared/**/*.{h,hpp,c,cpp,swift}",
@@ -32,7 +32,7 @@ def add_nitrogen_files(spec)
32
32
  "nitrogen/generated/ios/**/*.{h,hpp,c,cpp,mm,swift}",
33
33
  ]
34
34
 
35
- current_public_header_files = spec.attributes_hash['public_header_files'] || []
35
+ current_public_header_files = Array(spec.attributes_hash['public_header_files'])
36
36
  spec.public_header_files = current_public_header_files + [
37
37
  # Generated specs
38
38
  "nitrogen/generated/shared/**/*.{h,hpp}",
@@ -40,7 +40,7 @@ def add_nitrogen_files(spec)
40
40
  "nitrogen/generated/ios/Unistyles-Swift-Cxx-Bridge.hpp"
41
41
  ]
42
42
 
43
- current_private_header_files = spec.attributes_hash['private_header_files'] || []
43
+ current_private_header_files = Array(spec.attributes_hash['private_header_files'])
44
44
  spec.private_header_files = current_private_header_files + [
45
45
  # iOS specific specs
46
46
  "nitrogen/generated/ios/c++/**/*.{h,hpp}",
@@ -52,5 +52,7 @@ def add_nitrogen_files(spec)
52
52
  "CLANG_CXX_LANGUAGE_STANDARD" => "c++20",
53
53
  # Enables C++ <-> Swift interop (by default it's only C)
54
54
  "SWIFT_OBJC_INTEROP_MODE" => "objcxx",
55
+ # Enables stricter modular headers
56
+ "DEFINES_MODULE" => "YES",
55
57
  })
56
58
  end
@@ -6,3 +6,28 @@
6
6
  ///
7
7
 
8
8
  #include "Unistyles-Swift-Cxx-Bridge.hpp"
9
+
10
+ // Include C++ implementation defined types
11
+ #include "HybridNativePlatformSpecSwift.hpp"
12
+ #include "Unistyles-Swift-Cxx-Umbrella.hpp"
13
+ #include <NitroModules/HybridContext.hpp>
14
+
15
+ namespace margelo::nitro::unistyles::bridge::swift {
16
+
17
+ // pragma MARK: std::shared_ptr<margelo::nitro::unistyles::HybridNativePlatformSpec>
18
+ std::shared_ptr<margelo::nitro::unistyles::HybridNativePlatformSpec> create_std__shared_ptr_margelo__nitro__unistyles__HybridNativePlatformSpec_(void* _Nonnull swiftUnsafePointer) {
19
+ Unistyles::HybridNativePlatformSpecCxx swiftPart = Unistyles::HybridNativePlatformSpecCxxUnsafe::fromUnsafe(swiftUnsafePointer);
20
+ return HybridContext::getOrCreate<margelo::nitro::unistyles::HybridNativePlatformSpecSwift>(swiftPart);
21
+ }
22
+ void* _Nonnull get_std__shared_ptr_margelo__nitro__unistyles__HybridNativePlatformSpec_(std__shared_ptr_margelo__nitro__unistyles__HybridNativePlatformSpec_ cppType) {
23
+ std::shared_ptr<margelo::nitro::unistyles::HybridNativePlatformSpecSwift> swiftWrapper = std::dynamic_pointer_cast<margelo::nitro::unistyles::HybridNativePlatformSpecSwift>(cppType);
24
+ #ifdef NITRO_DEBUG
25
+ if (swiftWrapper == nullptr) [[unlikely]] {
26
+ throw std::runtime_error("Class \"HybridNativePlatformSpec\" is not implemented in Swift!");
27
+ }
28
+ #endif
29
+ Unistyles::HybridNativePlatformSpecCxx swiftPart = swiftWrapper->getSwiftPart();
30
+ return Unistyles::HybridNativePlatformSpecCxxUnsafe::toUnsafe(swiftPart);
31
+ }
32
+
33
+ } // namespace margelo::nitro::unistyles::bridge::swift
@@ -8,28 +8,34 @@
8
8
  #pragma once
9
9
 
10
10
  // Forward declarations of C++ defined types
11
+ // Forward declaration of `ColorScheme` to properly resolve imports.
12
+ namespace margelo::nitro::unistyles { enum class ColorScheme; }
13
+ // Forward declaration of `Dimensions` to properly resolve imports.
14
+ namespace margelo::nitro::unistyles { struct Dimensions; }
15
+ // Forward declaration of `HybridNativePlatformSpec` to properly resolve imports.
16
+ namespace margelo::nitro::unistyles { class HybridNativePlatformSpec; }
17
+ // Forward declaration of `Insets` to properly resolve imports.
18
+ namespace margelo::nitro::unistyles { struct Insets; }
11
19
  // Forward declaration of `UnistyleDependency` to properly resolve imports.
12
20
  namespace margelo::nitro::unistyles { enum class UnistyleDependency; }
21
+ // Forward declaration of `UnistylesNativeMiniRuntime` to properly resolve imports.
22
+ namespace margelo::nitro::unistyles { struct UnistylesNativeMiniRuntime; }
23
+
24
+ // Forward declarations of Swift defined types
25
+ // Forward declaration of `HybridNativePlatformSpecCxx` to properly resolve imports.
26
+ namespace Unistyles { class HybridNativePlatformSpecCxx; }
13
27
 
14
28
  // Include C++ defined types
15
- #if __has_include("UnistyleDependency.hpp")
16
- #include "UnistyleDependency.hpp"
17
- #endif
18
- #if __has_include(<functional>)
19
- #include <functional>
20
- #endif
21
- #if __has_include(<memory>)
22
- #include <memory>
23
- #endif
24
- #if __has_include(<optional>)
25
- #include <optional>
26
- #endif
27
- #if __has_include(<string>)
28
- #include <string>
29
- #endif
30
- #if __has_include(<vector>)
31
- #include <vector>
32
- #endif
29
+ #include "ColorScheme.hpp"
30
+ #include "Dimensions.hpp"
31
+ #include "HybridNativePlatformSpec.hpp"
32
+ #include "Insets.hpp"
33
+ #include "UnistyleDependency.hpp"
34
+ #include "UnistylesNativeMiniRuntime.hpp"
35
+ #include <functional>
36
+ #include <memory>
37
+ #include <string>
38
+ #include <vector>
33
39
 
34
40
  /**
35
41
  * Contains specialized versions of C++ templated types so they can be accessed from Swift,
@@ -37,6 +43,7 @@ namespace margelo::nitro::unistyles { enum class UnistyleDependency; }
37
43
  */
38
44
  namespace margelo::nitro::unistyles::bridge::swift {
39
45
 
46
+ // pragma MARK: std::vector<UnistyleDependency>
40
47
  /**
41
48
  * Specialized version of `std::vector<UnistyleDependency>`.
42
49
  */
@@ -47,40 +54,68 @@ namespace margelo::nitro::unistyles::bridge::swift {
47
54
  return vector;
48
55
  }
49
56
 
57
+ // pragma MARK: std::function<void(const std::vector<UnistyleDependency>& /* dependencies */, const UnistylesNativeMiniRuntime& /* miniRuntime */)>
50
58
  /**
51
- * Specialized version of `std::function<void(const std::vector<UnistyleDependency>&)>`.
59
+ * Specialized version of `std::function<void(const std::vector<UnistyleDependency>&, const UnistylesNativeMiniRuntime&)>`.
52
60
  */
53
- using Func_void_std__vector_UnistyleDependency_ = std::function<void(const std::vector<UnistyleDependency>& /* dependencies */)>;
61
+ using Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime = std::function<void(const std::vector<UnistyleDependency>& /* dependencies */, const UnistylesNativeMiniRuntime& /* miniRuntime */)>;
54
62
  /**
55
- * Wrapper class for a `std::function<void(const std::vector<UnistyleDependency>& / * dependencies * /)>`, this can be used from Swift.
63
+ * Wrapper class for a `std::function<void(const std::vector<UnistyleDependency>& / * dependencies * /, const UnistylesNativeMiniRuntime& / * miniRuntime * /)>`, this can be used from Swift.
56
64
  */
57
- class Func_void_std__vector_UnistyleDependency__Wrapper {
65
+ class Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime_Wrapper final {
58
66
  public:
59
- explicit Func_void_std__vector_UnistyleDependency__Wrapper(const std::function<void(const std::vector<UnistyleDependency>& /* dependencies */)>& func): function(func) {}
60
- explicit Func_void_std__vector_UnistyleDependency__Wrapper(std::function<void(const std::vector<UnistyleDependency>& /* dependencies */)>&& func): function(std::move(func)) {}
61
-
62
- void call(std::vector<UnistyleDependency> dependencies) const {
63
- function(dependencies);
67
+ explicit Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime_Wrapper(const std::function<void(const std::vector<UnistyleDependency>& /* dependencies */, const UnistylesNativeMiniRuntime& /* miniRuntime */)>& func): _function(func) {}
68
+ explicit Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime_Wrapper(std::function<void(const std::vector<UnistyleDependency>& /* dependencies */, const UnistylesNativeMiniRuntime& /* miniRuntime */)>&& func): _function(std::move(func)) {}
69
+ inline void call(std::vector<UnistyleDependency> dependencies, UnistylesNativeMiniRuntime miniRuntime) const {
70
+ _function(dependencies, miniRuntime);
64
71
  }
65
-
66
- std::function<void(const std::vector<UnistyleDependency>& /* dependencies */)> function;
72
+ private:
73
+ std::function<void(const std::vector<UnistyleDependency>& /* dependencies */, const UnistylesNativeMiniRuntime& /* miniRuntime */)> _function;
67
74
  };
68
- inline Func_void_std__vector_UnistyleDependency_ create_Func_void_std__vector_UnistyleDependency_(void* closureHolder, void(*call)(void* /* closureHolder */, std::vector<UnistyleDependency>), void(*destroy)(void*)) {
75
+ inline Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime create_Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime(void* _Nonnull closureHolder, void(* _Nonnull call)(void* _Nonnull /* closureHolder */, std::vector<UnistyleDependency>, UnistylesNativeMiniRuntime), void(* _Nonnull destroy)(void* _Nonnull)) {
69
76
  std::shared_ptr<void> sharedClosureHolder(closureHolder, destroy);
70
- return Func_void_std__vector_UnistyleDependency_([sharedClosureHolder, call](const std::vector<UnistyleDependency>& dependencies) -> void {
71
- call(sharedClosureHolder.get(), dependencies);
77
+ return Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime([sharedClosureHolder, call](const std::vector<UnistyleDependency>& dependencies, const UnistylesNativeMiniRuntime& miniRuntime) -> void {
78
+ call(sharedClosureHolder.get(), dependencies, miniRuntime);
72
79
  });
73
80
  }
74
- inline std::shared_ptr<Func_void_std__vector_UnistyleDependency__Wrapper> share_Func_void_std__vector_UnistyleDependency_(const Func_void_std__vector_UnistyleDependency_& value) {
75
- return std::make_shared<Func_void_std__vector_UnistyleDependency__Wrapper>(value);
81
+ inline std::shared_ptr<Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime_Wrapper> share_Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime(const Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime& value) {
82
+ return std::make_shared<Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime_Wrapper>(value);
76
83
  }
77
84
 
85
+ // pragma MARK: std::function<void(const UnistylesNativeMiniRuntime& /* miniRuntime */)>
78
86
  /**
79
- * Specialized version of `std::optional<std::string>`.
87
+ * Specialized version of `std::function<void(const UnistylesNativeMiniRuntime&)>`.
80
88
  */
81
- using std__optional_std__string_ = std::optional<std::string>;
82
- inline std::optional<std::string> create_std__optional_std__string_(const std::string& value) {
83
- return std::optional<std::string>(value);
89
+ using Func_void_UnistylesNativeMiniRuntime = std::function<void(const UnistylesNativeMiniRuntime& /* miniRuntime */)>;
90
+ /**
91
+ * Wrapper class for a `std::function<void(const UnistylesNativeMiniRuntime& / * miniRuntime * /)>`, this can be used from Swift.
92
+ */
93
+ class Func_void_UnistylesNativeMiniRuntime_Wrapper final {
94
+ public:
95
+ explicit Func_void_UnistylesNativeMiniRuntime_Wrapper(const std::function<void(const UnistylesNativeMiniRuntime& /* miniRuntime */)>& func): _function(func) {}
96
+ explicit Func_void_UnistylesNativeMiniRuntime_Wrapper(std::function<void(const UnistylesNativeMiniRuntime& /* miniRuntime */)>&& func): _function(std::move(func)) {}
97
+ inline void call(UnistylesNativeMiniRuntime miniRuntime) const {
98
+ _function(miniRuntime);
99
+ }
100
+ private:
101
+ std::function<void(const UnistylesNativeMiniRuntime& /* miniRuntime */)> _function;
102
+ };
103
+ inline Func_void_UnistylesNativeMiniRuntime create_Func_void_UnistylesNativeMiniRuntime(void* _Nonnull closureHolder, void(* _Nonnull call)(void* _Nonnull /* closureHolder */, UnistylesNativeMiniRuntime), void(* _Nonnull destroy)(void* _Nonnull)) {
104
+ std::shared_ptr<void> sharedClosureHolder(closureHolder, destroy);
105
+ return Func_void_UnistylesNativeMiniRuntime([sharedClosureHolder, call](const UnistylesNativeMiniRuntime& miniRuntime) -> void {
106
+ call(sharedClosureHolder.get(), miniRuntime);
107
+ });
108
+ }
109
+ inline std::shared_ptr<Func_void_UnistylesNativeMiniRuntime_Wrapper> share_Func_void_UnistylesNativeMiniRuntime(const Func_void_UnistylesNativeMiniRuntime& value) {
110
+ return std::make_shared<Func_void_UnistylesNativeMiniRuntime_Wrapper>(value);
84
111
  }
112
+
113
+ // pragma MARK: std::shared_ptr<margelo::nitro::unistyles::HybridNativePlatformSpec>
114
+ /**
115
+ * Specialized version of `std::shared_ptr<margelo::nitro::unistyles::HybridNativePlatformSpec>`.
116
+ */
117
+ using std__shared_ptr_margelo__nitro__unistyles__HybridNativePlatformSpec_ = std::shared_ptr<margelo::nitro::unistyles::HybridNativePlatformSpec>;
118
+ std::shared_ptr<margelo::nitro::unistyles::HybridNativePlatformSpec> create_std__shared_ptr_margelo__nitro__unistyles__HybridNativePlatformSpec_(void* _Nonnull swiftUnsafePointer);
119
+ void* _Nonnull get_std__shared_ptr_margelo__nitro__unistyles__HybridNativePlatformSpec_(std__shared_ptr_margelo__nitro__unistyles__HybridNativePlatformSpec_ cppType);
85
120
 
86
121
  } // namespace margelo::nitro::unistyles::bridge::swift
@@ -14,24 +14,12 @@ namespace margelo::nitro::unistyles { enum class ColorScheme; }
14
14
  namespace margelo::nitro::unistyles { struct Dimensions; }
15
15
  // Forward declaration of `HybridNativePlatformSpec` to properly resolve imports.
16
16
  namespace margelo::nitro::unistyles { class HybridNativePlatformSpec; }
17
- // Forward declaration of `HybridUnistylesNavigationBarSpec` to properly resolve imports.
18
- namespace margelo::nitro::unistyles { class HybridUnistylesNavigationBarSpec; }
19
- // Forward declaration of `HybridUnistylesRuntimeSpec` to properly resolve imports.
20
- namespace margelo::nitro::unistyles { class HybridUnistylesRuntimeSpec; }
21
- // Forward declaration of `HybridUnistylesShadowRegistrySpec` to properly resolve imports.
22
- namespace margelo::nitro::unistyles { class HybridUnistylesShadowRegistrySpec; }
23
- // Forward declaration of `HybridUnistylesStatusBarSpec` to properly resolve imports.
24
- namespace margelo::nitro::unistyles { class HybridUnistylesStatusBarSpec; }
25
- // Forward declaration of `HybridUnistylesStyleSheetSpec` to properly resolve imports.
26
- namespace margelo::nitro::unistyles { class HybridUnistylesStyleSheetSpec; }
27
17
  // Forward declaration of `Insets` to properly resolve imports.
28
18
  namespace margelo::nitro::unistyles { struct Insets; }
29
19
  // Forward declaration of `Orientation` to properly resolve imports.
30
20
  namespace margelo::nitro::unistyles { enum class Orientation; }
31
21
  // Forward declaration of `UnistyleDependency` to properly resolve imports.
32
22
  namespace margelo::nitro::unistyles { enum class UnistyleDependency; }
33
- // Forward declaration of `UnistylesCxxMiniRuntime` to properly resolve imports.
34
- namespace margelo::nitro::unistyles { struct UnistylesCxxMiniRuntime; }
35
23
  // Forward declaration of `UnistylesNativeMiniRuntime` to properly resolve imports.
36
24
  namespace margelo::nitro::unistyles { struct UnistylesNativeMiniRuntime; }
37
25
 
@@ -39,19 +27,12 @@ namespace margelo::nitro::unistyles { struct UnistylesNativeMiniRuntime; }
39
27
  #include "ColorScheme.hpp"
40
28
  #include "Dimensions.hpp"
41
29
  #include "HybridNativePlatformSpec.hpp"
42
- #include "HybridUnistylesNavigationBarSpec.hpp"
43
- #include "HybridUnistylesRuntimeSpec.hpp"
44
- #include "HybridUnistylesShadowRegistrySpec.hpp"
45
- #include "HybridUnistylesStatusBarSpec.hpp"
46
- #include "HybridUnistylesStyleSheetSpec.hpp"
47
30
  #include "Insets.hpp"
48
31
  #include "Orientation.hpp"
49
32
  #include "UnistyleDependency.hpp"
50
- #include "UnistylesCxxMiniRuntime.hpp"
51
33
  #include "UnistylesNativeMiniRuntime.hpp"
52
34
  #include <functional>
53
35
  #include <memory>
54
- #include <optional>
55
36
  #include <string>
56
37
  #include <vector>
57
38
 
@@ -62,21 +43,11 @@ namespace margelo::nitro::unistyles { struct UnistylesNativeMiniRuntime; }
62
43
  #include <NitroModules/ArrayBufferHolder.hpp>
63
44
  #include <NitroModules/AnyMapHolder.hpp>
64
45
  #include <NitroModules/HybridContext.hpp>
65
- #include <NitroModules/PromiseHolder.hpp>
46
+ #include <NitroModules/RuntimeError.hpp>
66
47
 
67
48
  // Forward declarations of Swift defined types
68
49
  // Forward declaration of `HybridNativePlatformSpecCxx` to properly resolve imports.
69
50
  namespace Unistyles { class HybridNativePlatformSpecCxx; }
70
- // Forward declaration of `HybridUnistylesNavigationBarSpecCxx` to properly resolve imports.
71
- namespace Unistyles { class HybridUnistylesNavigationBarSpecCxx; }
72
- // Forward declaration of `HybridUnistylesRuntimeSpecCxx` to properly resolve imports.
73
- namespace Unistyles { class HybridUnistylesRuntimeSpecCxx; }
74
- // Forward declaration of `HybridUnistylesShadowRegistrySpecCxx` to properly resolve imports.
75
- namespace Unistyles { class HybridUnistylesShadowRegistrySpecCxx; }
76
- // Forward declaration of `HybridUnistylesStatusBarSpecCxx` to properly resolve imports.
77
- namespace Unistyles { class HybridUnistylesStatusBarSpecCxx; }
78
- // Forward declaration of `HybridUnistylesStyleSheetSpecCxx` to properly resolve imports.
79
- namespace Unistyles { class HybridUnistylesStyleSheetSpecCxx; }
80
51
 
81
52
  // Include Swift defined types
82
53
  #if __has_include("Unistyles-Swift.h")