react-native-unistyles 2.10.0 → 3.0.0-alpha.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (792) hide show
  1. package/README.md +1 -1
  2. package/{react-native-unistyles.podspec → Unistyles.podspec} +13 -5
  3. package/android/CMakeLists.txt +35 -17
  4. package/android/build.gradle +4 -2
  5. package/android/src/main/cxx/cpp-adapter.cpp +82 -65
  6. package/android/src/main/java/com/unistyles/UnistylesPackage.kt +19 -9
  7. package/cxx/common/Breakpoints.h +43 -0
  8. package/cxx/common/Constants.h +11 -0
  9. package/cxx/common/Helpers.h +185 -0
  10. package/cxx/core/HostStyle.cpp +63 -0
  11. package/cxx/core/HostStyle.h +28 -0
  12. package/cxx/core/MediaQueries.cpp +87 -0
  13. package/cxx/core/MediaQueries.h +47 -0
  14. package/cxx/core/StyleSheet.h +31 -0
  15. package/cxx/core/StyleSheetRegistry.cpp +42 -0
  16. package/cxx/core/StyleSheetRegistry.h +26 -0
  17. package/cxx/core/Unistyle.h +75 -0
  18. package/cxx/core/UnistyleData.h +23 -0
  19. package/cxx/core/UnistyleWrapper.cpp +5 -0
  20. package/cxx/core/UnistyleWrapper.h +50 -0
  21. package/cxx/core/UnistylesCommitHook.cpp +54 -0
  22. package/cxx/core/UnistylesCommitHook.h +32 -0
  23. package/cxx/core/UnistylesCommitShadowNode.h +39 -0
  24. package/cxx/core/UnistylesMountHook.cpp +40 -0
  25. package/cxx/core/UnistylesMountHook.h +30 -0
  26. package/cxx/core/UnistylesRegistry.cpp +162 -0
  27. package/cxx/core/UnistylesRegistry.h +61 -0
  28. package/cxx/core/UnistylesState.cpp +95 -0
  29. package/cxx/core/UnistylesState.h +50 -0
  30. package/cxx/hybridObjects/HybridNavigationBar.cpp +17 -0
  31. package/cxx/hybridObjects/HybridNavigationBar.h +19 -0
  32. package/cxx/hybridObjects/HybridShadowRegistry.cpp +33 -0
  33. package/cxx/hybridObjects/HybridShadowRegistry.h +33 -0
  34. package/cxx/hybridObjects/HybridStatusBar.cpp +17 -0
  35. package/cxx/hybridObjects/HybridStatusBar.h +19 -0
  36. package/cxx/hybridObjects/HybridStyleSheet.cpp +241 -0
  37. package/cxx/hybridObjects/HybridStyleSheet.h +64 -0
  38. package/cxx/hybridObjects/HybridUnistylesRuntime.cpp +218 -0
  39. package/cxx/hybridObjects/HybridUnistylesRuntime.h +72 -0
  40. package/cxx/parser/Parser.cpp +642 -0
  41. package/cxx/parser/Parser.h +49 -0
  42. package/cxx/shadowTree/ShadowLeafUpdate.h +13 -0
  43. package/cxx/shadowTree/ShadowTreeManager.cpp +124 -0
  44. package/cxx/shadowTree/ShadowTreeManager.h +23 -0
  45. package/ios/Equatable.swift +64 -0
  46. package/ios/Extensions.swift +11 -0
  47. package/ios/NativePlatform+ios.swift +291 -0
  48. package/ios/NativePlatform.swift +17 -0
  49. package/ios/NativePlatformListener+ios.swift +41 -0
  50. package/ios/Unistyles.h +3 -0
  51. package/ios/UnistylesModuleOnLoad.h +13 -0
  52. package/ios/UnistylesModuleOnLoad.mm +58 -0
  53. package/lib/commonjs/common.js +1 -58
  54. package/lib/commonjs/common.js.map +1 -1
  55. package/lib/commonjs/index.js +27 -66
  56. package/lib/commonjs/index.js.map +1 -1
  57. package/lib/commonjs/{utils/mq.js → mq.js} +12 -2
  58. package/lib/commonjs/mq.js.map +1 -0
  59. package/lib/commonjs/package.json +1 -0
  60. package/lib/commonjs/specs/NativePlatform/NativePlatform.nitro.js +25 -0
  61. package/lib/commonjs/specs/NativePlatform/NativePlatform.nitro.js.map +1 -0
  62. package/lib/commonjs/specs/NativePlatform/index.js +13 -0
  63. package/lib/commonjs/specs/NativePlatform/index.js.map +1 -0
  64. package/lib/commonjs/specs/NavigtionBar/UnistylesNavigationBar.nitro.js +6 -0
  65. package/lib/commonjs/specs/NavigtionBar/UnistylesNavigationBar.nitro.js.map +1 -0
  66. package/lib/commonjs/specs/NavigtionBar/index.js +17 -0
  67. package/lib/commonjs/specs/NavigtionBar/index.js.map +1 -0
  68. package/lib/commonjs/{types/plugin.js → specs/ShadowRegistry/ShadowRegistry.nitro.js} +1 -1
  69. package/lib/commonjs/specs/ShadowRegistry/ShadowRegistry.nitro.js.map +1 -0
  70. package/lib/commonjs/specs/ShadowRegistry/index.js +30 -0
  71. package/lib/commonjs/specs/ShadowRegistry/index.js.map +1 -0
  72. package/lib/commonjs/specs/ShadowRegistry/types.js +2 -0
  73. package/lib/commonjs/specs/ShadowRegistry/types.js.map +1 -0
  74. package/lib/commonjs/{types/normalizer.js → specs/StatusBar/UnistylesStatusBar.nitro.js} +1 -1
  75. package/lib/commonjs/specs/StatusBar/UnistylesStatusBar.nitro.js.map +1 -0
  76. package/lib/commonjs/specs/StatusBar/index.js +33 -0
  77. package/lib/commonjs/specs/StatusBar/index.js.map +1 -0
  78. package/lib/commonjs/specs/StyleSheet/UnistylesStyleSheet.nitro.js +6 -0
  79. package/lib/commonjs/specs/StyleSheet/UnistylesStyleSheet.nitro.js.map +1 -0
  80. package/lib/commonjs/specs/StyleSheet/index.js +18 -0
  81. package/lib/commonjs/specs/StyleSheet/index.js.map +1 -0
  82. package/lib/commonjs/specs/TurboUnistyles/NativeTurboUnistyles.js +8 -0
  83. package/lib/commonjs/specs/TurboUnistyles/NativeTurboUnistyles.js.map +1 -0
  84. package/lib/commonjs/specs/TurboUnistyles/index.js +4 -0
  85. package/lib/commonjs/specs/TurboUnistyles/index.js.map +1 -0
  86. package/lib/commonjs/{types/unistyles.js → specs/UnistylesRuntime/UnistylesRuntime.nitro.js} +1 -1
  87. package/lib/commonjs/specs/UnistylesRuntime/UnistylesRuntime.nitro.js.map +1 -0
  88. package/lib/commonjs/specs/UnistylesRuntime/index.js +26 -0
  89. package/lib/commonjs/specs/UnistylesRuntime/index.js.map +1 -0
  90. package/lib/commonjs/specs/index.js +47 -0
  91. package/lib/commonjs/specs/index.js.map +1 -0
  92. package/lib/commonjs/specs/index.web.js +24 -0
  93. package/lib/commonjs/specs/index.web.js.map +1 -0
  94. package/lib/commonjs/specs/types.js +24 -0
  95. package/lib/commonjs/specs/types.js.map +1 -0
  96. package/lib/commonjs/types/accessibility.js +37 -0
  97. package/lib/commonjs/types/accessibility.js.map +1 -0
  98. package/lib/commonjs/types/index.js +16 -30
  99. package/lib/commonjs/types/index.js.map +1 -1
  100. package/lib/commonjs/types/stylesheet.js +3 -0
  101. package/lib/commonjs/types/stylesheet.js.map +1 -1
  102. package/lib/commonjs/types/variants.js +4 -0
  103. package/lib/commonjs/web/convert/boxShadow.js +77 -0
  104. package/lib/commonjs/web/convert/boxShadow.js.map +1 -0
  105. package/lib/commonjs/web/convert/breakpoint.js +25 -0
  106. package/lib/commonjs/web/convert/breakpoint.js.map +1 -0
  107. package/lib/commonjs/web/convert/index.js +76 -0
  108. package/lib/commonjs/web/convert/index.js.map +1 -0
  109. package/lib/commonjs/web/convert/module.d.js.map +1 -0
  110. package/lib/commonjs/web/convert/shadow.js +68 -0
  111. package/lib/commonjs/web/convert/shadow.js.map +1 -0
  112. package/lib/commonjs/web/convert/style.js +89 -0
  113. package/lib/commonjs/web/convert/style.js.map +1 -0
  114. package/lib/commonjs/web/convert/textShadow.js +73 -0
  115. package/lib/commonjs/web/convert/textShadow.js.map +1 -0
  116. package/lib/commonjs/web/convert/transform.js +72 -0
  117. package/lib/commonjs/web/convert/transform.js.map +1 -0
  118. package/lib/commonjs/web/convert/types.js +9 -0
  119. package/lib/commonjs/web/convert/types.js.map +1 -0
  120. package/lib/commonjs/web/convert/utils.js +55 -0
  121. package/lib/commonjs/web/convert/utils.js.map +1 -0
  122. package/lib/commonjs/web/create.js +89 -0
  123. package/lib/commonjs/web/create.js.map +1 -0
  124. package/lib/commonjs/web/index.js +51 -0
  125. package/lib/commonjs/web/index.js.map +1 -0
  126. package/lib/commonjs/web/listener/index.js +13 -0
  127. package/lib/commonjs/web/listener/index.js.map +1 -0
  128. package/lib/commonjs/web/listener/listener.js +36 -0
  129. package/lib/commonjs/web/listener/listener.js.map +1 -0
  130. package/lib/commonjs/web/mock.js +37 -0
  131. package/lib/commonjs/web/mock.js.map +1 -0
  132. package/lib/commonjs/web/mq.js +23 -0
  133. package/lib/commonjs/web/mq.js.map +1 -0
  134. package/lib/commonjs/web/pseudo.js +11 -0
  135. package/lib/commonjs/web/pseudo.js.map +1 -0
  136. package/lib/commonjs/web/registry.js +37 -0
  137. package/lib/commonjs/web/registry.js.map +1 -0
  138. package/lib/commonjs/web/runtime.js +164 -0
  139. package/lib/commonjs/web/runtime.js.map +1 -0
  140. package/lib/commonjs/web/state.js +121 -0
  141. package/lib/commonjs/web/state.js.map +1 -0
  142. package/lib/commonjs/web/utils.js +78 -0
  143. package/lib/commonjs/web/utils.js.map +1 -0
  144. package/lib/commonjs/web/variants/getVariants.js +39 -0
  145. package/lib/commonjs/web/variants/getVariants.js.map +1 -0
  146. package/lib/commonjs/web/variants/index.js +28 -0
  147. package/lib/commonjs/web/variants/index.js.map +1 -0
  148. package/lib/commonjs/web/variants/useVariants.js +75 -0
  149. package/lib/commonjs/web/variants/useVariants.js.map +1 -0
  150. package/lib/module/common.js +2 -56
  151. package/lib/module/common.js.map +1 -1
  152. package/lib/module/global.js +1 -1
  153. package/lib/module/index.js +12 -29
  154. package/lib/module/index.js.map +1 -1
  155. package/lib/module/{utils/mq.js → mq.js} +14 -2
  156. package/lib/module/mq.js.map +1 -0
  157. package/lib/module/package.json +1 -0
  158. package/lib/module/specs/NativePlatform/NativePlatform.nitro.js +23 -0
  159. package/lib/module/specs/NativePlatform/NativePlatform.nitro.js.map +1 -0
  160. package/lib/module/specs/NativePlatform/index.js +4 -0
  161. package/lib/module/specs/NativePlatform/index.js.map +1 -0
  162. package/lib/module/specs/NavigtionBar/UnistylesNavigationBar.nitro.js +4 -0
  163. package/lib/module/specs/NavigtionBar/UnistylesNavigationBar.nitro.js.map +1 -0
  164. package/lib/module/specs/NavigtionBar/index.js +12 -0
  165. package/lib/module/specs/NavigtionBar/index.js.map +1 -0
  166. package/lib/module/specs/ShadowRegistry/ShadowRegistry.nitro.js +4 -0
  167. package/lib/module/specs/ShadowRegistry/ShadowRegistry.nitro.js.map +1 -0
  168. package/lib/module/specs/ShadowRegistry/index.js +26 -0
  169. package/lib/module/specs/ShadowRegistry/index.js.map +1 -0
  170. package/lib/module/specs/ShadowRegistry/types.js +2 -0
  171. package/lib/module/specs/ShadowRegistry/types.js.map +1 -0
  172. package/lib/module/specs/StatusBar/UnistylesStatusBar.nitro.js +4 -0
  173. package/lib/module/specs/StatusBar/UnistylesStatusBar.nitro.js.map +1 -0
  174. package/lib/module/specs/StatusBar/index.js +28 -0
  175. package/lib/module/specs/StatusBar/index.js.map +1 -0
  176. package/lib/module/specs/StyleSheet/UnistylesStyleSheet.nitro.js +4 -0
  177. package/lib/module/specs/StyleSheet/UnistylesStyleSheet.nitro.js.map +1 -0
  178. package/lib/module/specs/StyleSheet/index.js +14 -0
  179. package/lib/module/specs/StyleSheet/index.js.map +1 -0
  180. package/lib/module/specs/TurboUnistyles/NativeTurboUnistyles.js +9 -0
  181. package/lib/module/specs/TurboUnistyles/NativeTurboUnistyles.js.map +1 -0
  182. package/lib/module/specs/TurboUnistyles/index.js +4 -0
  183. package/lib/module/specs/TurboUnistyles/index.js.map +1 -0
  184. package/lib/module/specs/UnistylesRuntime/UnistylesRuntime.nitro.js +4 -0
  185. package/lib/module/specs/UnistylesRuntime/UnistylesRuntime.nitro.js.map +1 -0
  186. package/lib/module/specs/UnistylesRuntime/index.js +22 -0
  187. package/lib/module/specs/UnistylesRuntime/index.js.map +1 -0
  188. package/lib/module/specs/index.js +10 -0
  189. package/lib/module/specs/index.js.map +1 -0
  190. package/lib/module/specs/index.web.js +5 -0
  191. package/lib/module/specs/index.web.js.map +1 -0
  192. package/lib/module/specs/types.js +20 -0
  193. package/lib/module/specs/types.js.map +1 -0
  194. package/lib/module/types/accessibility.js +33 -0
  195. package/lib/module/types/accessibility.js.map +1 -0
  196. package/lib/module/types/breakpoints.js +2 -0
  197. package/lib/module/types/common.js +1 -1
  198. package/lib/module/types/core.js +2 -0
  199. package/lib/module/types/index.js +3 -3
  200. package/lib/module/types/index.js.map +1 -1
  201. package/lib/module/types/stylesheet.js +5 -0
  202. package/lib/module/types/stylesheet.js.map +1 -1
  203. package/lib/module/types/variants.js +2 -0
  204. package/lib/module/web/convert/boxShadow.js +72 -0
  205. package/lib/module/web/convert/boxShadow.js.map +1 -0
  206. package/lib/module/web/convert/breakpoint.js +20 -0
  207. package/lib/module/web/convert/breakpoint.js.map +1 -0
  208. package/lib/module/web/convert/index.js +71 -0
  209. package/lib/module/web/convert/index.js.map +1 -0
  210. package/lib/module/web/convert/module.d.js +2 -0
  211. package/lib/module/web/convert/module.d.js.map +1 -0
  212. package/lib/module/web/convert/shadow.js +63 -0
  213. package/lib/module/web/convert/shadow.js.map +1 -0
  214. package/lib/module/web/convert/style.js +84 -0
  215. package/lib/module/web/convert/style.js.map +1 -0
  216. package/lib/module/web/convert/textShadow.js +68 -0
  217. package/lib/module/web/convert/textShadow.js.map +1 -0
  218. package/lib/module/web/convert/transform.js +67 -0
  219. package/lib/module/web/convert/transform.js.map +1 -0
  220. package/lib/module/web/convert/types.js +5 -0
  221. package/lib/module/web/convert/types.js.map +1 -0
  222. package/lib/module/web/convert/utils.js +43 -0
  223. package/lib/module/web/convert/utils.js.map +1 -0
  224. package/lib/module/web/create.js +84 -0
  225. package/lib/module/web/create.js.map +1 -0
  226. package/lib/module/web/index.js +24 -0
  227. package/lib/module/web/index.js.map +1 -0
  228. package/lib/module/web/listener/index.js +4 -0
  229. package/lib/module/web/listener/index.js.map +1 -0
  230. package/lib/module/web/listener/listener.js +31 -0
  231. package/lib/module/web/listener/listener.js.map +1 -0
  232. package/lib/module/web/mock.js +33 -0
  233. package/lib/module/web/mock.js.map +1 -0
  234. package/lib/module/web/mq.js +17 -0
  235. package/lib/module/web/mq.js.map +1 -0
  236. package/lib/module/web/pseudo.js +6 -0
  237. package/lib/module/web/pseudo.js.map +1 -0
  238. package/lib/module/web/registry.js +33 -0
  239. package/lib/module/web/registry.js.map +1 -0
  240. package/lib/module/web/runtime.js +160 -0
  241. package/lib/module/web/runtime.js.map +1 -0
  242. package/lib/module/web/state.js +117 -0
  243. package/lib/module/web/state.js.map +1 -0
  244. package/lib/module/web/utils.js +65 -0
  245. package/lib/module/web/utils.js.map +1 -0
  246. package/lib/module/web/variants/getVariants.js +34 -0
  247. package/lib/module/web/variants/getVariants.js.map +1 -0
  248. package/lib/module/web/variants/index.js +5 -0
  249. package/lib/module/web/variants/index.js.map +1 -0
  250. package/lib/module/web/variants/useVariants.js +70 -0
  251. package/lib/module/web/variants/useVariants.js.map +1 -0
  252. package/lib/typescript/example/App.d.ts +4 -0
  253. package/lib/typescript/example/App.d.ts.map +1 -0
  254. package/lib/typescript/example/Typography.d.ts +12 -0
  255. package/lib/typescript/example/Typography.d.ts.map +1 -0
  256. package/lib/typescript/example/unistyles.d.ts +63 -0
  257. package/lib/typescript/example/unistyles.d.ts.map +1 -0
  258. package/lib/typescript/expo-example/App.d.ts +4 -0
  259. package/lib/typescript/expo-example/App.d.ts.map +1 -0
  260. package/lib/typescript/expo-example/unistyles.d.ts +63 -0
  261. package/lib/typescript/expo-example/unistyles.d.ts.map +1 -0
  262. package/lib/typescript/src/common.d.ts +0 -50
  263. package/lib/typescript/src/common.d.ts.map +1 -1
  264. package/lib/typescript/src/index.d.ts +3 -76
  265. package/lib/typescript/src/index.d.ts.map +1 -1
  266. package/lib/typescript/src/{utils/mq.d.ts → mq.d.ts} +2 -2
  267. package/lib/typescript/src/mq.d.ts.map +1 -0
  268. package/lib/typescript/src/specs/NativePlatform/NativePlatform.nitro.d.ts +57 -0
  269. package/lib/typescript/src/specs/NativePlatform/NativePlatform.nitro.d.ts.map +1 -0
  270. package/lib/typescript/src/specs/NativePlatform/index.d.ts +3 -0
  271. package/lib/typescript/src/specs/NativePlatform/index.d.ts.map +1 -0
  272. package/lib/typescript/src/specs/NavigtionBar/UnistylesNavigationBar.nitro.d.ts +11 -0
  273. package/lib/typescript/src/specs/NavigtionBar/UnistylesNavigationBar.nitro.d.ts.map +1 -0
  274. package/lib/typescript/src/specs/NavigtionBar/index.d.ts +11 -0
  275. package/lib/typescript/src/specs/NavigtionBar/index.d.ts.map +1 -0
  276. package/lib/typescript/src/specs/ShadowRegistry/ShadowRegistry.nitro.d.ts +7 -0
  277. package/lib/typescript/src/specs/ShadowRegistry/ShadowRegistry.nitro.d.ts.map +1 -0
  278. package/lib/typescript/src/specs/ShadowRegistry/index.d.ts +12 -0
  279. package/lib/typescript/src/specs/ShadowRegistry/index.d.ts.map +1 -0
  280. package/lib/typescript/src/specs/ShadowRegistry/types.d.ts +27 -0
  281. package/lib/typescript/src/specs/ShadowRegistry/types.d.ts.map +1 -0
  282. package/lib/typescript/src/specs/StatusBar/UnistylesStatusBar.nitro.d.ts +11 -0
  283. package/lib/typescript/src/specs/StatusBar/UnistylesStatusBar.nitro.d.ts.map +1 -0
  284. package/lib/typescript/src/specs/StatusBar/index.d.ts +15 -0
  285. package/lib/typescript/src/specs/StatusBar/index.d.ts.map +1 -0
  286. package/lib/typescript/src/specs/StyleSheet/UnistylesStyleSheet.nitro.d.ts +9 -0
  287. package/lib/typescript/src/specs/StyleSheet/UnistylesStyleSheet.nitro.d.ts.map +1 -0
  288. package/lib/typescript/src/specs/StyleSheet/index.d.ts +29 -0
  289. package/lib/typescript/src/specs/StyleSheet/index.d.ts.map +1 -0
  290. package/lib/typescript/src/specs/TurboUnistyles/NativeTurboUnistyles.d.ts +2 -0
  291. package/lib/typescript/src/specs/TurboUnistyles/NativeTurboUnistyles.d.ts.map +1 -0
  292. package/lib/typescript/src/specs/TurboUnistyles/index.d.ts +2 -0
  293. package/lib/typescript/src/specs/TurboUnistyles/index.d.ts.map +1 -0
  294. package/lib/typescript/src/specs/UnistylesRuntime/UnistylesRuntime.nitro.d.ts +41 -0
  295. package/lib/typescript/src/specs/UnistylesRuntime/UnistylesRuntime.nitro.d.ts.map +1 -0
  296. package/lib/typescript/src/specs/UnistylesRuntime/index.d.ts +25 -0
  297. package/lib/typescript/src/specs/UnistylesRuntime/index.d.ts.map +1 -0
  298. package/lib/typescript/src/specs/index.d.ts +10 -0
  299. package/lib/typescript/src/specs/index.d.ts.map +1 -0
  300. package/lib/typescript/src/specs/index.web.d.ts +4 -0
  301. package/lib/typescript/src/specs/index.web.d.ts.map +1 -0
  302. package/lib/typescript/src/specs/types.d.ts +32 -0
  303. package/lib/typescript/src/specs/types.d.ts.map +1 -0
  304. package/lib/typescript/src/types/accessibility.d.ts +28 -0
  305. package/lib/typescript/src/types/accessibility.d.ts.map +1 -0
  306. package/lib/typescript/src/types/breakpoints.d.ts +12 -5
  307. package/lib/typescript/src/types/breakpoints.d.ts.map +1 -1
  308. package/lib/typescript/src/types/common.d.ts +1 -0
  309. package/lib/typescript/src/types/common.d.ts.map +1 -1
  310. package/lib/typescript/src/types/index.d.ts +2 -5
  311. package/lib/typescript/src/types/index.d.ts.map +1 -1
  312. package/lib/typescript/src/types/stylesheet.d.ts +31 -9
  313. package/lib/typescript/src/types/stylesheet.d.ts.map +1 -1
  314. package/lib/typescript/src/types/variants.d.ts +5 -8
  315. package/lib/typescript/src/types/variants.d.ts.map +1 -1
  316. package/lib/typescript/src/web/convert/boxShadow.d.ts +3 -0
  317. package/lib/typescript/src/web/convert/boxShadow.d.ts.map +1 -0
  318. package/lib/typescript/src/web/convert/breakpoint.d.ts +3 -0
  319. package/lib/typescript/src/web/convert/breakpoint.d.ts.map +1 -0
  320. package/lib/typescript/src/web/convert/index.d.ts +4 -0
  321. package/lib/typescript/src/web/convert/index.d.ts.map +1 -0
  322. package/lib/typescript/src/web/convert/shadow.d.ts +2 -0
  323. package/lib/typescript/src/web/convert/shadow.d.ts.map +1 -0
  324. package/lib/typescript/src/web/convert/style.d.ts +3 -0
  325. package/lib/typescript/src/web/convert/style.d.ts.map +1 -0
  326. package/lib/typescript/src/web/convert/textShadow.d.ts +3 -0
  327. package/lib/typescript/src/web/convert/textShadow.d.ts.map +1 -0
  328. package/lib/typescript/src/web/convert/transform.d.ts +5 -0
  329. package/lib/typescript/src/web/convert/transform.d.ts.map +1 -0
  330. package/lib/typescript/src/web/convert/types.d.ts +13 -0
  331. package/lib/typescript/src/web/convert/types.d.ts.map +1 -0
  332. package/lib/typescript/src/web/convert/utils.d.ts +8 -0
  333. package/lib/typescript/src/web/convert/utils.d.ts.map +1 -0
  334. package/lib/typescript/src/web/create.d.ts +2449 -0
  335. package/lib/typescript/src/web/create.d.ts.map +1 -0
  336. package/lib/typescript/src/web/index.d.ts +2464 -0
  337. package/lib/typescript/src/web/index.d.ts.map +1 -0
  338. package/lib/typescript/src/web/listener/index.d.ts +2 -0
  339. package/lib/typescript/src/web/listener/index.d.ts.map +1 -0
  340. package/lib/typescript/src/web/listener/listener.d.ts +10 -0
  341. package/lib/typescript/src/web/listener/listener.d.ts.map +1 -0
  342. package/lib/typescript/src/web/mock.d.ts +14 -0
  343. package/lib/typescript/src/web/mock.d.ts.map +1 -0
  344. package/lib/typescript/src/web/mq.d.ts +4 -0
  345. package/lib/typescript/src/web/mq.d.ts.map +1 -0
  346. package/lib/typescript/src/web/pseudo.d.ts +4 -0
  347. package/lib/typescript/src/web/pseudo.d.ts.map +1 -0
  348. package/lib/typescript/src/web/registry.d.ts +12 -0
  349. package/lib/typescript/src/web/registry.d.ts.map +1 -0
  350. package/lib/typescript/src/web/runtime.d.ts +42 -0
  351. package/lib/typescript/src/web/runtime.d.ts.map +1 -0
  352. package/lib/typescript/src/web/state.d.ts +24 -0
  353. package/lib/typescript/src/web/state.d.ts.map +1 -0
  354. package/lib/typescript/src/web/utils.d.ts +20 -0
  355. package/lib/typescript/src/web/utils.d.ts.map +1 -0
  356. package/lib/typescript/src/web/variants/getVariants.d.ts +3 -0
  357. package/lib/typescript/src/web/variants/getVariants.d.ts.map +1 -0
  358. package/lib/typescript/src/web/variants/index.d.ts +3 -0
  359. package/lib/typescript/src/web/variants/index.d.ts.map +1 -0
  360. package/lib/typescript/src/web/variants/useVariants.d.ts +3 -0
  361. package/lib/typescript/src/web/variants/useVariants.d.ts.map +1 -0
  362. package/nitrogen/generated/android/UnistylesOnLoad.cpp +34 -0
  363. package/nitrogen/generated/android/UnistylesOnLoad.hpp +25 -0
  364. package/nitrogen/generated/android/UnistylesOnLoad.kt +1 -0
  365. package/nitrogen/generated/android/c++/JColorScheme.hpp +61 -0
  366. package/nitrogen/generated/android/c++/JDimensions.hpp +56 -0
  367. package/nitrogen/generated/android/c++/JFunc_void_std__vector_UnistyleDependency_.hpp +60 -0
  368. package/nitrogen/generated/android/c++/JHybridNativePlatformSpec.cpp +145 -0
  369. package/nitrogen/generated/android/c++/JHybridNativePlatformSpec.hpp +70 -0
  370. package/nitrogen/generated/android/c++/JInsets.hpp +68 -0
  371. package/nitrogen/generated/android/c++/JOrientation.hpp +58 -0
  372. package/nitrogen/generated/android/c++/JUnistyleDependency.hpp +94 -0
  373. package/nitrogen/generated/android/c++/JUnistylesNativeMiniRuntime.hpp +96 -0
  374. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/ColorScheme.kt +22 -0
  375. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Dimensions.kt +21 -0
  376. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Func_void_std__vector_UnistyleDependency_.kt +45 -0
  377. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/HybridNativePlatformSpec.kt +134 -0
  378. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Insets.kt +24 -0
  379. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Orientation.kt +21 -0
  380. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/UnistyleDependency.kt +33 -0
  381. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/UnistylesNativeMiniRuntime.kt +29 -0
  382. package/nitrogen/generated/android/unistyles+autolinking.cmake +52 -0
  383. package/nitrogen/generated/android/unistyles+autolinking.gradle +25 -0
  384. package/nitrogen/generated/ios/Unistyles+autolinking.rb +56 -0
  385. package/nitrogen/generated/ios/Unistyles-Swift-Cxx-Bridge.cpp +8 -0
  386. package/nitrogen/generated/ios/Unistyles-Swift-Cxx-Bridge.hpp +86 -0
  387. package/nitrogen/generated/ios/Unistyles-Swift-Cxx-Umbrella.hpp +88 -0
  388. package/nitrogen/generated/ios/c++/HybridNativePlatformSpecSwift.cpp +11 -0
  389. package/nitrogen/generated/ios/c++/HybridNativePlatformSpecSwift.hpp +151 -0
  390. package/nitrogen/generated/ios/swift/ColorScheme.swift +44 -0
  391. package/nitrogen/generated/ios/swift/Dimensions.swift +46 -0
  392. package/nitrogen/generated/ios/swift/HybridNativePlatformSpec.swift +65 -0
  393. package/nitrogen/generated/ios/swift/HybridNativePlatformSpecCxx.swift +273 -0
  394. package/nitrogen/generated/ios/swift/Insets.swift +79 -0
  395. package/nitrogen/generated/ios/swift/Orientation.swift +40 -0
  396. package/nitrogen/generated/ios/swift/UnistyleDependency.swift +88 -0
  397. package/nitrogen/generated/ios/swift/UnistylesNativeMiniRuntime.swift +134 -0
  398. package/nitrogen/generated/shared/c++/ColorScheme.hpp +82 -0
  399. package/nitrogen/generated/shared/c++/Dimensions.hpp +72 -0
  400. package/nitrogen/generated/shared/c++/HybridNativePlatformSpec.cpp +38 -0
  401. package/nitrogen/generated/shared/c++/HybridNativePlatformSpec.hpp +95 -0
  402. package/nitrogen/generated/shared/c++/HybridUnistylesNavigationBarSpec.cpp +24 -0
  403. package/nitrogen/generated/shared/c++/HybridUnistylesNavigationBarSpec.hpp +61 -0
  404. package/nitrogen/generated/shared/c++/HybridUnistylesRuntimeSpec.cpp +36 -0
  405. package/nitrogen/generated/shared/c++/HybridUnistylesRuntimeSpec.hpp +88 -0
  406. package/nitrogen/generated/shared/c++/HybridUnistylesShadowRegistrySpec.cpp +21 -0
  407. package/nitrogen/generated/shared/c++/HybridUnistylesShadowRegistrySpec.hpp +59 -0
  408. package/nitrogen/generated/shared/c++/HybridUnistylesStatusBarSpec.cpp +24 -0
  409. package/nitrogen/generated/shared/c++/HybridUnistylesStatusBarSpec.hpp +61 -0
  410. package/nitrogen/generated/shared/c++/HybridUnistylesStyleSheetSpec.cpp +22 -0
  411. package/nitrogen/generated/shared/c++/HybridUnistylesStyleSheetSpec.hpp +60 -0
  412. package/nitrogen/generated/shared/c++/Insets.hpp +84 -0
  413. package/nitrogen/generated/shared/c++/Orientation.hpp +78 -0
  414. package/nitrogen/generated/shared/c++/UnistyleDependency.hpp +76 -0
  415. package/nitrogen/generated/shared/c++/UnistylesCxxMiniRuntime.hpp +128 -0
  416. package/nitrogen/generated/shared/c++/UnistylesNativeMiniRuntime.hpp +115 -0
  417. package/package.json +34 -59
  418. package/plugin/__tests__/dependencies.spec.js +438 -0
  419. package/plugin/__tests__/ref.spec.js +1170 -0
  420. package/plugin/__tests__/stylesheet.spec.js +489 -0
  421. package/plugin/common.js +119 -0
  422. package/plugin/import.js +8 -0
  423. package/plugin/index.js +132 -0
  424. package/plugin/ref.js +211 -0
  425. package/plugin/style.js +47 -0
  426. package/plugin/stylesheet.js +190 -0
  427. package/plugin/variants.js +33 -0
  428. package/src/common.ts +0 -58
  429. package/src/index.ts +11 -52
  430. package/src/{utils/mq.ts → mq.ts} +13 -4
  431. package/src/specs/NativePlatform/NativePlatform.nitro.ts +61 -0
  432. package/src/specs/NativePlatform/index.ts +2 -0
  433. package/src/specs/NavigtionBar/UnistylesNavigationBar.nitro.ts +10 -0
  434. package/src/specs/NavigtionBar/index.ts +25 -0
  435. package/src/specs/ShadowRegistry/ShadowRegistry.nitro.ts +3 -0
  436. package/src/specs/ShadowRegistry/index.ts +51 -0
  437. package/src/specs/ShadowRegistry/types.ts +29 -0
  438. package/src/specs/StatusBar/UnistylesStatusBar.nitro.ts +10 -0
  439. package/src/specs/StatusBar/index.ts +48 -0
  440. package/src/specs/StyleSheet/UnistylesStyleSheet.nitro.ts +6 -0
  441. package/src/specs/StyleSheet/index.ts +46 -0
  442. package/src/specs/TurboUnistyles/NativeTurboUnistyles.ts +8 -0
  443. package/src/specs/TurboUnistyles/index.ts +1 -0
  444. package/src/specs/UnistylesRuntime/UnistylesRuntime.nitro.ts +47 -0
  445. package/src/specs/UnistylesRuntime/index.ts +64 -0
  446. package/src/specs/index.ts +23 -0
  447. package/src/specs/index.web.ts +5 -0
  448. package/src/specs/types.ts +38 -0
  449. package/src/types/accessibility.ts +29 -0
  450. package/src/types/breakpoints.ts +21 -14
  451. package/src/types/common.ts +1 -0
  452. package/src/types/index.ts +2 -5
  453. package/src/types/stylesheet.ts +41 -9
  454. package/src/types/variants.ts +7 -11
  455. package/src/web/convert/boxShadow.ts +72 -0
  456. package/src/web/convert/breakpoint.ts +21 -0
  457. package/src/web/convert/index.ts +78 -0
  458. package/src/web/convert/shadow.ts +68 -0
  459. package/src/web/convert/style.ts +94 -0
  460. package/src/web/convert/textShadow.ts +69 -0
  461. package/src/web/convert/transform.ts +89 -0
  462. package/src/web/convert/types.ts +16 -0
  463. package/src/web/convert/utils.ts +54 -0
  464. package/src/web/create.ts +105 -0
  465. package/src/web/index.ts +24 -0
  466. package/src/web/listener/index.ts +1 -0
  467. package/src/web/listener/listener.ts +33 -0
  468. package/src/web/mock.ts +35 -0
  469. package/src/web/mq.ts +19 -0
  470. package/src/web/pseudo.ts +11 -0
  471. package/src/web/registry.ts +41 -0
  472. package/src/web/runtime.ts +198 -0
  473. package/src/web/state.ts +148 -0
  474. package/src/web/utils.ts +95 -0
  475. package/src/web/variants/getVariants.ts +42 -0
  476. package/src/web/variants/index.ts +2 -0
  477. package/src/web/variants/useVariants.ts +79 -0
  478. package/android/src/main/java/com/unistyles/Models.kt +0 -27
  479. package/android/src/main/java/com/unistyles/Platform.kt +0 -324
  480. package/android/src/main/java/com/unistyles/UnistylesModule.kt +0 -217
  481. package/cxx/Macros.h +0 -11
  482. package/cxx/UnistylesImpl.cpp +0 -310
  483. package/cxx/UnistylesModel.cpp +0 -230
  484. package/cxx/UnistylesModel.h +0 -143
  485. package/cxx/UnistylesRuntime.cpp +0 -36
  486. package/cxx/UnistylesRuntime.h +0 -81
  487. package/ios/UnistylesModule.h +0 -28
  488. package/ios/UnistylesModule.mm +0 -77
  489. package/ios/platform/Platform_Shared.h +0 -8
  490. package/ios/platform/Platform_Shared.mm +0 -160
  491. package/ios/platform/Platform_iOS.h +0 -20
  492. package/ios/platform/Platform_iOS.mm +0 -193
  493. package/ios/platform/Platform_macOS.h +0 -19
  494. package/ios/platform/Platform_macOS.mm +0 -117
  495. package/ios/platform/Platform_tvOS.h +0 -16
  496. package/ios/platform/Platform_tvOS.mm +0 -92
  497. package/ios/platform/Platform_visionOS.h +0 -19
  498. package/ios/platform/Platform_visionOS.mm +0 -116
  499. package/lib/commonjs/core/UnistyleRegistry.js +0 -110
  500. package/lib/commonjs/core/UnistyleRegistry.js.map +0 -1
  501. package/lib/commonjs/core/Unistyles.js +0 -39
  502. package/lib/commonjs/core/Unistyles.js.map +0 -1
  503. package/lib/commonjs/core/UnistylesModule.js +0 -268
  504. package/lib/commonjs/core/UnistylesModule.js.map +0 -1
  505. package/lib/commonjs/core/UnistylesModule.native.js +0 -9
  506. package/lib/commonjs/core/UnistylesModule.native.js.map +0 -1
  507. package/lib/commonjs/core/UnistylesModule.windows.js +0 -11
  508. package/lib/commonjs/core/UnistylesModule.windows.js.map +0 -1
  509. package/lib/commonjs/core/UnistylesRuntime.js +0 -284
  510. package/lib/commonjs/core/UnistylesRuntime.js.map +0 -1
  511. package/lib/commonjs/core/index.js +0 -13
  512. package/lib/commonjs/core/index.js.map +0 -1
  513. package/lib/commonjs/core/mocks/UnistylesMockedBridge.js +0 -36
  514. package/lib/commonjs/core/mocks/UnistylesMockedBridge.js.map +0 -1
  515. package/lib/commonjs/core/mocks/UnistylesMockedRegistry.js +0 -46
  516. package/lib/commonjs/core/mocks/UnistylesMockedRegistry.js.map +0 -1
  517. package/lib/commonjs/core/mocks/UnistylesMockedRuntime.js +0 -122
  518. package/lib/commonjs/core/mocks/UnistylesMockedRuntime.js.map +0 -1
  519. package/lib/commonjs/core/mocks/index.js +0 -27
  520. package/lib/commonjs/core/mocks/index.js.map +0 -1
  521. package/lib/commonjs/createStyleSheet.js +0 -14
  522. package/lib/commonjs/createStyleSheet.js.map +0 -1
  523. package/lib/commonjs/hooks/index.js +0 -34
  524. package/lib/commonjs/hooks/index.js.map +0 -1
  525. package/lib/commonjs/hooks/useCSS.js +0 -44
  526. package/lib/commonjs/hooks/useCSS.js.map +0 -1
  527. package/lib/commonjs/hooks/useCSS.native.js +0 -9
  528. package/lib/commonjs/hooks/useCSS.native.js.map +0 -1
  529. package/lib/commonjs/hooks/useInitialTheme.js +0 -17
  530. package/lib/commonjs/hooks/useInitialTheme.js.map +0 -1
  531. package/lib/commonjs/hooks/useUnistyles.js +0 -74
  532. package/lib/commonjs/hooks/useUnistyles.js.map +0 -1
  533. package/lib/commonjs/hooks/useVariants.js +0 -14
  534. package/lib/commonjs/hooks/useVariants.js.map +0 -1
  535. package/lib/commonjs/normalizer/index.js +0 -32
  536. package/lib/commonjs/normalizer/index.js.map +0 -1
  537. package/lib/commonjs/normalizer/module.d.js.map +0 -1
  538. package/lib/commonjs/normalizer/normalizeStyle.js +0 -59
  539. package/lib/commonjs/normalizer/normalizeStyle.js.map +0 -1
  540. package/lib/commonjs/normalizer/normalizer.js +0 -88
  541. package/lib/commonjs/normalizer/normalizer.js.map +0 -1
  542. package/lib/commonjs/normalizer/normalizer.macos.js +0 -3
  543. package/lib/commonjs/normalizer/normalizer.macos.js.map +0 -1
  544. package/lib/commonjs/plugins/cssMediaQueriesPlugin.js +0 -14
  545. package/lib/commonjs/plugins/cssMediaQueriesPlugin.js.map +0 -1
  546. package/lib/commonjs/plugins/index.js +0 -20
  547. package/lib/commonjs/plugins/index.js.map +0 -1
  548. package/lib/commonjs/plugins/normalizeWebStylesPlugin.js +0 -12
  549. package/lib/commonjs/plugins/normalizeWebStylesPlugin.js.map +0 -1
  550. package/lib/commonjs/types/color.js +0 -2
  551. package/lib/commonjs/types/color.js.map +0 -1
  552. package/lib/commonjs/types/normalizer.js.map +0 -1
  553. package/lib/commonjs/types/plugin.js.map +0 -1
  554. package/lib/commonjs/types/unistyles.js.map +0 -1
  555. package/lib/commonjs/useStyles.js +0 -47
  556. package/lib/commonjs/useStyles.js.map +0 -1
  557. package/lib/commonjs/utils/breakpoints.js +0 -33
  558. package/lib/commonjs/utils/breakpoints.js.map +0 -1
  559. package/lib/commonjs/utils/cssMediaQuery.js +0 -244
  560. package/lib/commonjs/utils/cssMediaQuery.js.map +0 -1
  561. package/lib/commonjs/utils/generateId.js +0 -15
  562. package/lib/commonjs/utils/generateId.js.map +0 -1
  563. package/lib/commonjs/utils/hash32.js +0 -43
  564. package/lib/commonjs/utils/hash32.js.map +0 -1
  565. package/lib/commonjs/utils/index.js +0 -91
  566. package/lib/commonjs/utils/index.js.map +0 -1
  567. package/lib/commonjs/utils/mq.js.map +0 -1
  568. package/lib/commonjs/utils/mqParser.js +0 -89
  569. package/lib/commonjs/utils/mqParser.js.map +0 -1
  570. package/lib/commonjs/utils/parseColor.js +0 -35
  571. package/lib/commonjs/utils/parseColor.js.map +0 -1
  572. package/lib/commonjs/utils/styles.js +0 -73
  573. package/lib/commonjs/utils/styles.js.map +0 -1
  574. package/lib/commonjs/utils/withPlugins.js +0 -15
  575. package/lib/commonjs/utils/withPlugins.js.map +0 -1
  576. package/lib/module/core/UnistyleRegistry.js +0 -103
  577. package/lib/module/core/UnistyleRegistry.js.map +0 -1
  578. package/lib/module/core/Unistyles.js +0 -33
  579. package/lib/module/core/Unistyles.js.map +0 -1
  580. package/lib/module/core/UnistylesModule.js +0 -261
  581. package/lib/module/core/UnistylesModule.js.map +0 -1
  582. package/lib/module/core/UnistylesModule.native.js +0 -3
  583. package/lib/module/core/UnistylesModule.native.js.map +0 -1
  584. package/lib/module/core/UnistylesModule.windows.js +0 -5
  585. package/lib/module/core/UnistylesModule.windows.js.map +0 -1
  586. package/lib/module/core/UnistylesRuntime.js +0 -278
  587. package/lib/module/core/UnistylesRuntime.js.map +0 -1
  588. package/lib/module/core/index.js +0 -3
  589. package/lib/module/core/index.js.map +0 -1
  590. package/lib/module/core/mocks/UnistylesMockedBridge.js +0 -29
  591. package/lib/module/core/mocks/UnistylesMockedBridge.js.map +0 -1
  592. package/lib/module/core/mocks/UnistylesMockedRegistry.js +0 -39
  593. package/lib/module/core/mocks/UnistylesMockedRegistry.js.map +0 -1
  594. package/lib/module/core/mocks/UnistylesMockedRuntime.js +0 -114
  595. package/lib/module/core/mocks/UnistylesMockedRuntime.js.map +0 -1
  596. package/lib/module/core/mocks/index.js +0 -4
  597. package/lib/module/core/mocks/index.js.map +0 -1
  598. package/lib/module/createStyleSheet.js +0 -7
  599. package/lib/module/createStyleSheet.js.map +0 -1
  600. package/lib/module/hooks/index.js +0 -5
  601. package/lib/module/hooks/index.js.map +0 -1
  602. package/lib/module/hooks/useCSS.js +0 -37
  603. package/lib/module/hooks/useCSS.js.map +0 -1
  604. package/lib/module/hooks/useCSS.native.js +0 -2
  605. package/lib/module/hooks/useCSS.native.js.map +0 -1
  606. package/lib/module/hooks/useInitialTheme.js +0 -10
  607. package/lib/module/hooks/useInitialTheme.js.map +0 -1
  608. package/lib/module/hooks/useUnistyles.js +0 -67
  609. package/lib/module/hooks/useUnistyles.js.map +0 -1
  610. package/lib/module/hooks/useVariants.js +0 -7
  611. package/lib/module/hooks/useVariants.js.map +0 -1
  612. package/lib/module/normalizer/index.js +0 -3
  613. package/lib/module/normalizer/index.js.map +0 -1
  614. package/lib/module/normalizer/module.d.js +0 -2
  615. package/lib/module/normalizer/module.d.js.map +0 -1
  616. package/lib/module/normalizer/normalizeStyle.js +0 -52
  617. package/lib/module/normalizer/normalizeStyle.js.map +0 -1
  618. package/lib/module/normalizer/normalizer.js +0 -78
  619. package/lib/module/normalizer/normalizer.js.map +0 -1
  620. package/lib/module/normalizer/normalizer.macos.js +0 -2
  621. package/lib/module/normalizer/normalizer.macos.js.map +0 -1
  622. package/lib/module/plugins/cssMediaQueriesPlugin.js +0 -7
  623. package/lib/module/plugins/cssMediaQueriesPlugin.js.map +0 -1
  624. package/lib/module/plugins/index.js +0 -3
  625. package/lib/module/plugins/index.js.map +0 -1
  626. package/lib/module/plugins/normalizeWebStylesPlugin.js +0 -6
  627. package/lib/module/plugins/normalizeWebStylesPlugin.js.map +0 -1
  628. package/lib/module/types/color.js +0 -2
  629. package/lib/module/types/color.js.map +0 -1
  630. package/lib/module/types/normalizer.js +0 -2
  631. package/lib/module/types/normalizer.js.map +0 -1
  632. package/lib/module/types/plugin.js +0 -2
  633. package/lib/module/types/plugin.js.map +0 -1
  634. package/lib/module/types/unistyles.js +0 -2
  635. package/lib/module/types/unistyles.js.map +0 -1
  636. package/lib/module/useStyles.js +0 -40
  637. package/lib/module/useStyles.js.map +0 -1
  638. package/lib/module/utils/breakpoints.js +0 -26
  639. package/lib/module/utils/breakpoints.js.map +0 -1
  640. package/lib/module/utils/cssMediaQuery.js +0 -237
  641. package/lib/module/utils/cssMediaQuery.js.map +0 -1
  642. package/lib/module/utils/generateId.js +0 -7
  643. package/lib/module/utils/generateId.js.map +0 -1
  644. package/lib/module/utils/hash32.js +0 -36
  645. package/lib/module/utils/hash32.js.map +0 -1
  646. package/lib/module/utils/index.js +0 -8
  647. package/lib/module/utils/index.js.map +0 -1
  648. package/lib/module/utils/mq.js.map +0 -1
  649. package/lib/module/utils/mqParser.js +0 -78
  650. package/lib/module/utils/mqParser.js.map +0 -1
  651. package/lib/module/utils/parseColor.js +0 -28
  652. package/lib/module/utils/parseColor.js.map +0 -1
  653. package/lib/module/utils/styles.js +0 -64
  654. package/lib/module/utils/styles.js.map +0 -1
  655. package/lib/module/utils/withPlugins.js +0 -8
  656. package/lib/module/utils/withPlugins.js.map +0 -1
  657. package/lib/typescript/src/core/UnistyleRegistry.d.ts +0 -57
  658. package/lib/typescript/src/core/UnistyleRegistry.d.ts.map +0 -1
  659. package/lib/typescript/src/core/Unistyles.d.ts +0 -13
  660. package/lib/typescript/src/core/Unistyles.d.ts.map +0 -1
  661. package/lib/typescript/src/core/UnistylesModule.d.ts +0 -21
  662. package/lib/typescript/src/core/UnistylesModule.d.ts.map +0 -1
  663. package/lib/typescript/src/core/UnistylesModule.native.d.ts +0 -6
  664. package/lib/typescript/src/core/UnistylesModule.native.d.ts.map +0 -1
  665. package/lib/typescript/src/core/UnistylesModule.windows.d.ts +0 -6
  666. package/lib/typescript/src/core/UnistylesModule.windows.d.ts.map +0 -1
  667. package/lib/typescript/src/core/UnistylesRuntime.d.ts +0 -179
  668. package/lib/typescript/src/core/UnistylesRuntime.d.ts.map +0 -1
  669. package/lib/typescript/src/core/index.d.ts +0 -5
  670. package/lib/typescript/src/core/index.d.ts.map +0 -1
  671. package/lib/typescript/src/core/mocks/UnistylesMockedBridge.d.ts +0 -28
  672. package/lib/typescript/src/core/mocks/UnistylesMockedBridge.d.ts.map +0 -1
  673. package/lib/typescript/src/core/mocks/UnistylesMockedRegistry.d.ts +0 -21
  674. package/lib/typescript/src/core/mocks/UnistylesMockedRegistry.d.ts.map +0 -1
  675. package/lib/typescript/src/core/mocks/UnistylesMockedRuntime.d.ts +0 -79
  676. package/lib/typescript/src/core/mocks/UnistylesMockedRuntime.d.ts.map +0 -1
  677. package/lib/typescript/src/core/mocks/index.d.ts +0 -4
  678. package/lib/typescript/src/core/mocks/index.d.ts.map +0 -1
  679. package/lib/typescript/src/createStyleSheet.d.ts +0 -8
  680. package/lib/typescript/src/createStyleSheet.d.ts.map +0 -1
  681. package/lib/typescript/src/hooks/index.d.ts +0 -5
  682. package/lib/typescript/src/hooks/index.d.ts.map +0 -1
  683. package/lib/typescript/src/hooks/useCSS.d.ts +0 -3
  684. package/lib/typescript/src/hooks/useCSS.d.ts.map +0 -1
  685. package/lib/typescript/src/hooks/useCSS.native.d.ts +0 -3
  686. package/lib/typescript/src/hooks/useCSS.native.d.ts.map +0 -1
  687. package/lib/typescript/src/hooks/useInitialTheme.d.ts +0 -3
  688. package/lib/typescript/src/hooks/useInitialTheme.d.ts.map +0 -1
  689. package/lib/typescript/src/hooks/useUnistyles.d.ts +0 -27
  690. package/lib/typescript/src/hooks/useUnistyles.d.ts.map +0 -1
  691. package/lib/typescript/src/hooks/useVariants.d.ts +0 -3
  692. package/lib/typescript/src/hooks/useVariants.d.ts.map +0 -1
  693. package/lib/typescript/src/normalizer/index.d.ts +0 -3
  694. package/lib/typescript/src/normalizer/index.d.ts.map +0 -1
  695. package/lib/typescript/src/normalizer/normalizeStyle.d.ts +0 -3
  696. package/lib/typescript/src/normalizer/normalizeStyle.d.ts.map +0 -1
  697. package/lib/typescript/src/normalizer/normalizer.d.ts +0 -11
  698. package/lib/typescript/src/normalizer/normalizer.d.ts.map +0 -1
  699. package/lib/typescript/src/normalizer/normalizer.macos.d.ts +0 -1
  700. package/lib/typescript/src/normalizer/normalizer.macos.d.ts.map +0 -1
  701. package/lib/typescript/src/plugins/cssMediaQueriesPlugin.d.ts +0 -3
  702. package/lib/typescript/src/plugins/cssMediaQueriesPlugin.d.ts.map +0 -1
  703. package/lib/typescript/src/plugins/index.d.ts +0 -3
  704. package/lib/typescript/src/plugins/index.d.ts.map +0 -1
  705. package/lib/typescript/src/plugins/normalizeWebStylesPlugin.d.ts +0 -3
  706. package/lib/typescript/src/plugins/normalizeWebStylesPlugin.d.ts.map +0 -1
  707. package/lib/typescript/src/types/color.d.ts +0 -4
  708. package/lib/typescript/src/types/color.d.ts.map +0 -1
  709. package/lib/typescript/src/types/normalizer.d.ts +0 -20
  710. package/lib/typescript/src/types/normalizer.d.ts.map +0 -1
  711. package/lib/typescript/src/types/plugin.d.ts +0 -7
  712. package/lib/typescript/src/types/plugin.d.ts.map +0 -1
  713. package/lib/typescript/src/types/unistyles.d.ts +0 -81
  714. package/lib/typescript/src/types/unistyles.d.ts.map +0 -1
  715. package/lib/typescript/src/useStyles.d.ts +0 -16
  716. package/lib/typescript/src/useStyles.d.ts.map +0 -1
  717. package/lib/typescript/src/utils/breakpoints.d.ts +0 -3
  718. package/lib/typescript/src/utils/breakpoints.d.ts.map +0 -1
  719. package/lib/typescript/src/utils/cssMediaQuery.d.ts +0 -4
  720. package/lib/typescript/src/utils/cssMediaQuery.d.ts.map +0 -1
  721. package/lib/typescript/src/utils/generateId.d.ts +0 -2
  722. package/lib/typescript/src/utils/generateId.d.ts.map +0 -1
  723. package/lib/typescript/src/utils/hash32.d.ts +0 -2
  724. package/lib/typescript/src/utils/hash32.d.ts.map +0 -1
  725. package/lib/typescript/src/utils/index.d.ts +0 -9
  726. package/lib/typescript/src/utils/index.d.ts.map +0 -1
  727. package/lib/typescript/src/utils/mq.d.ts.map +0 -1
  728. package/lib/typescript/src/utils/mqParser.d.ts +0 -16
  729. package/lib/typescript/src/utils/mqParser.d.ts.map +0 -1
  730. package/lib/typescript/src/utils/parseColor.d.ts +0 -3
  731. package/lib/typescript/src/utils/parseColor.d.ts.map +0 -1
  732. package/lib/typescript/src/utils/styles.d.ts +0 -5
  733. package/lib/typescript/src/utils/styles.d.ts.map +0 -1
  734. package/lib/typescript/src/utils/withPlugins.d.ts +0 -3
  735. package/lib/typescript/src/utils/withPlugins.d.ts.map +0 -1
  736. package/react-native.config.js +0 -11
  737. package/src/__tests__/mocks.ts +0 -24
  738. package/src/core/UnistyleRegistry.ts +0 -130
  739. package/src/core/Unistyles.ts +0 -44
  740. package/src/core/UnistylesModule.native.ts +0 -7
  741. package/src/core/UnistylesModule.ts +0 -305
  742. package/src/core/UnistylesModule.windows.ts +0 -9
  743. package/src/core/UnistylesRuntime.ts +0 -284
  744. package/src/core/index.ts +0 -8
  745. package/src/core/mocks/UnistylesMockedBridge.ts +0 -30
  746. package/src/core/mocks/UnistylesMockedRegistry.ts +0 -47
  747. package/src/core/mocks/UnistylesMockedRuntime.ts +0 -144
  748. package/src/core/mocks/index.ts +0 -3
  749. package/src/createStyleSheet.ts +0 -8
  750. package/src/hooks/index.ts +0 -4
  751. package/src/hooks/useCSS.native.ts +0 -3
  752. package/src/hooks/useCSS.ts +0 -51
  753. package/src/hooks/useInitialTheme.ts +0 -11
  754. package/src/hooks/useUnistyles.ts +0 -74
  755. package/src/hooks/useVariants.ts +0 -10
  756. package/src/normalizer/index.ts +0 -2
  757. package/src/normalizer/normalizeStyle.ts +0 -82
  758. package/src/normalizer/normalizer.macos.ts +0 -1
  759. package/src/normalizer/normalizer.ts +0 -100
  760. package/src/plugins/cssMediaQueriesPlugin.ts +0 -8
  761. package/src/plugins/index.ts +0 -2
  762. package/src/plugins/normalizeWebStylesPlugin.ts +0 -7
  763. package/src/types/color.ts +0 -26
  764. package/src/types/normalizer.ts +0 -29
  765. package/src/types/plugin.ts +0 -7
  766. package/src/types/unistyles.ts +0 -98
  767. package/src/useStyles.ts +0 -60
  768. package/src/utils/breakpoints.ts +0 -44
  769. package/src/utils/cssMediaQuery.ts +0 -268
  770. package/src/utils/generateId.ts +0 -10
  771. package/src/utils/hash32.ts +0 -53
  772. package/src/utils/index.ts +0 -8
  773. package/src/utils/mqParser.ts +0 -99
  774. package/src/utils/parseColor.ts +0 -33
  775. package/src/utils/styles.ts +0 -90
  776. package/src/utils/withPlugins.ts +0 -13
  777. package/windows/ExperimentalFeatures.props +0 -40
  778. package/windows/NuGet.Config +0 -13
  779. package/windows/ReactNativeUnistyles/PropertySheet.props +0 -16
  780. package/windows/ReactNativeUnistyles/ReactNativeUnistyles.def +0 -3
  781. package/windows/ReactNativeUnistyles/ReactNativeUnistyles.h +0 -149
  782. package/windows/ReactNativeUnistyles/ReactNativeUnistyles.vcxproj +0 -162
  783. package/windows/ReactNativeUnistyles/ReactNativeUnistyles.vcxproj.filters +0 -25
  784. package/windows/ReactNativeUnistyles/ReactPackageProvider.cpp +0 -19
  785. package/windows/ReactNativeUnistyles/ReactPackageProvider.h +0 -21
  786. package/windows/ReactNativeUnistyles/ReactPackageProvider.idl +0 -9
  787. package/windows/ReactNativeUnistyles/packages.lock.json +0 -133
  788. package/windows/ReactNativeUnistyles/pch.cpp +0 -1
  789. package/windows/ReactNativeUnistyles/pch.h +0 -21
  790. package/windows/ReactNativeUnistyles.sln +0 -156
  791. /package/lib/commonjs/{normalizer → web/convert}/module.d.js +0 -0
  792. /package/src/{normalizer → web/convert}/module.d.ts +0 -0
package/README.md CHANGED
@@ -22,7 +22,7 @@
22
22
  ## Installation
23
23
 
24
24
  ```shell
25
- yarn add react-native-unistyles
25
+ bun install react-native-unistyles
26
26
  ```
27
27
  Install CocoaPods dependencies / generate native folders with Expo:
28
28
 
@@ -3,23 +3,31 @@ require "json"
3
3
  package = JSON.parse(File.read(File.join(__dir__, "package.json")))
4
4
 
5
5
  Pod::Spec.new do |s|
6
- s.name = package["name"]
6
+ s.name = "Unistyles"
7
7
  s.version = package["version"]
8
8
  s.summary = package["description"]
9
9
  s.homepage = package["homepage"]
10
10
  s.license = package["license"]
11
11
  s.authors = package["author"]
12
12
 
13
- s.platforms = { :ios => min_ios_version_supported, :osx => "10.14", :tvos => "9.0", :visionos => "1.0" }
13
+ s.platforms = { :ios => min_ios_version_supported }
14
14
  s.source = { :git => package["repository"], :tag => "#{s.version}" }
15
15
 
16
16
  s.source_files = [
17
- "ios/**/*.{h,mm}",
18
- "cxx/*.{h,cpp}"
17
+ "ios/**/*.{swift,h,mm}",
18
+ "cxx/**/*.{h,cpp,hpp}"
19
19
  ]
20
20
  s.pod_target_xcconfig = {
21
- "CLANG_CXX_LANGUAGE_STANDARD" => "c++20"
21
+ "CLANG_CXX_LANGUAGE_STANDARD" => "c++20",
22
+ "GCC_PREPROCESSOR_DEFINITIONS" => "$(inherited) FOLLY_NO_CONFIG FOLLY_CFG_NO_COROUTINES"
22
23
  }
23
24
 
25
+ s.public_header_files = [
26
+ "ios/Unistyles.h"
27
+ ]
28
+
29
+ load 'nitrogen/generated/ios/Unistyles+autolinking.rb'
30
+ add_nitrogen_files(s)
31
+
24
32
  install_modules_dependencies(s)
25
33
  end
@@ -4,17 +4,26 @@ project(unistyles)
4
4
 
5
5
  add_library(unistyles
6
6
  SHARED
7
- ../cxx/UnistylesRuntime.cpp
8
- ../cxx/UnistylesModel.cpp
7
+ ../cxx/HostStyle.cpp
8
+ ../cxx/HybridUnistylesRuntime.cpp
9
+ ../cxx/HybridStatusBar.cpp
10
+ ../cxx/HybridNavigationBar.cpp
11
+ ../cxx/ShadowTreeTraverser.cpp
12
+ ../cxx/StyleSheet.cpp
13
+ ../cxx/StyleSheetImpl.cpp
14
+ ../cxx/StyleSheetRegistry.cpp
9
15
  ../cxx/UnistylesImpl.cpp
16
+ ../cxx/UnistylesModel.cpp
17
+ ../cxx/UnistylesRuntime.cpp
10
18
  ./src/main/cxx/cpp-adapter.cpp
11
19
  ./src/main/cxx/helpers.cpp
12
20
  ./src/main/cxx/platform.cpp
13
21
  )
14
22
 
15
- include_directories(
16
- ../cxx
17
- )
23
+ include_directories(../cxx)
24
+ include("${CMAKE_SOURCE_DIR}/../nitrogen/generated/android/Unistyles+autolinking.cmake")
25
+
26
+ string(APPEND CMAKE_CXX_FLAGS " -DFOLLY_NO_CONFIG")
18
27
 
19
28
  set_target_properties(unistyles PROPERTIES
20
29
  CXX_STANDARD 20
@@ -26,19 +35,28 @@ set_target_properties(unistyles PROPERTIES
26
35
  find_package(ReactAndroid REQUIRED CONFIG)
27
36
  find_package(fbjni REQUIRED CONFIG)
28
37
 
29
- # REACTNATIVE_MERGED_SO doesnt work as of RN 0.76.0-rc.3
30
- if (ReactAndroid_VERSION_MINOR GREATER_EQUAL 76)
31
- target_link_libraries(unistyles ReactAndroid::reactnative)
32
- else()
33
- target_link_libraries(unistyles
34
- ReactAndroid::turbomodulejsijni
35
- ReactAndroid::react_nativemodule_core
36
- android
37
- fbjni::fbjni
38
- )
39
- endif()
38
+ target_include_directories(
39
+ unistyles
40
+ PRIVATE
41
+ "../node_modules/react-native/ReactCommon"
42
+ "../node_modules/react-native/ReactAndroid/src/main/jni/react/turbomodule"
43
+ "../node_modules/react-native/ReactCommon/callinvoker"
44
+ "../node_modules/react-native/ReactCommon/runtimeexecutor"
45
+ "../node_modules/react-native/ReactCommon/yoga"
46
+ "../node_modules/react-native/ReactCommon/react/renderer/graphics/platform/cxx"
47
+ )
40
48
 
41
49
  target_link_libraries(unistyles
42
50
  ReactAndroid::jsi
43
- fbjni::fbjni
51
+ ReactAndroid::turbomodulejsijni
52
+ ReactAndroid::react_nativemodule_core
53
+ android
54
+ ReactAndroid::react_render_core
55
+ ReactAndroid::runtimeexecutor
56
+ ReactAndroid::fabricjni
57
+ ReactAndroid::react_debug
58
+ ReactAndroid::react_render_core
59
+ ReactAndroid::react_render_componentregistry
60
+ ReactAndroid::rrc_view
61
+ ReactAndroid::folly_runtime
44
62
  )
@@ -14,6 +14,7 @@ buildscript {
14
14
 
15
15
  apply plugin: 'com.android.library'
16
16
  apply plugin: 'org.jetbrains.kotlin.android'
17
+ apply from: '../nitrogen/generated/android/Unistyles+autolinking.gradle'
17
18
 
18
19
  def resolveBuildType() {
19
20
  Gradle gradle = getGradle()
@@ -31,12 +32,12 @@ if (isNewArchitectureEnabled()) {
31
32
  }
32
33
 
33
34
  android {
34
- compileSdkVersion safeExtGet('compileSdkVersion', 33)
35
+ compileSdkVersion safeExtGet('compileSdkVersion', 34)
35
36
  namespace "com.unistyles"
36
37
 
37
38
  defaultConfig {
38
39
  buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString()
39
- minSdkVersion safeExtGet('minSdkVersion', 21)
40
+ minSdkVersion safeExtGet('minSdkVersion', 23)
40
41
  externalNativeBuild {
41
42
  cmake {
42
43
  arguments "-DANDROID_STL=c++_shared"
@@ -75,4 +76,5 @@ repositories {
75
76
 
76
77
  dependencies {
77
78
  implementation 'com.facebook.react:react-native'
79
+ implementation project(":react-native-nitro-modules")
78
80
  }
@@ -1,71 +1,88 @@
1
1
  #include <jni.h>
2
- #include <jsi/jsi.h>
3
- #include <map>
4
- #include <ReactCommon/CallInvokerHolder.h>
5
- #include "UnistylesRuntime.h"
6
- #include "helpers.h"
7
- #include "platform.h"
8
2
 
9
- using namespace facebook;
3
+ #include <NitroModules/HybridObjectRegistry.hpp>
4
+ #include <HybridUnistylesRuntime.h>
5
+ #include <HybridStatusBar.h>
6
+ #include <HybridNavigationBar.h>
10
7
 
11
- static jobject unistylesModule = nullptr;
12
- std::shared_ptr<UnistylesRuntime> unistylesRuntime = nullptr;
8
+ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void*) {
9
+ HybridObjectRegistry::registerHybridObjectConstructor("UnistylesRuntime", []() -> std::shared_ptr<HybridObject>{
10
+ return std::make_shared<HybridUnistylesRuntime>();
11
+ });
12
+ HybridObjectRegistry::registerHybridObjectConstructor("StatusBar", []() -> std::shared_ptr<HybridObject>{
13
+ return std::make_shared<HybridStatusBar>();
14
+ });
15
+ HybridObjectRegistry::registerHybridObjectConstructor("NavigationBar", []() -> std::shared_ptr<HybridObject>{
16
+ return std::make_shared<HybridNavigationBar>();
17
+ });
13
18
 
14
- extern "C"
15
- JNIEXPORT void JNICALL
16
- Java_com_unistyles_UnistylesModule_nativeInstall(JNIEnv *env, jobject thiz, jlong jsi, jobject callInvokerHolder) {
17
- auto runtime = reinterpret_cast<jsi::Runtime *>(jsi);
18
- auto callInvoker{
19
- jni::alias_ref<react::CallInvokerHolder::javaobject>{ reinterpret_cast<react::CallInvokerHolder::javaobject>(callInvokerHolder)} -> cthis() ->getCallInvoker()
20
- };
21
-
22
- if (unistylesModule == nullptr) {
23
- unistylesModule = env->NewGlobalRef(thiz);
24
- }
25
-
26
- if (unistylesModule == nullptr) {
27
- return throwKotlinException(env, "Something went wrong while initializing UnistylesModule");
28
- }
29
-
30
- unistylesRuntime = std::make_shared<UnistylesRuntime>(*runtime, callInvoker);
31
- makeShared(env, unistylesModule, unistylesRuntime);
32
-
33
- jsi::Object hostObject = jsi::Object::createFromHostObject(*runtime, unistylesRuntime);
34
- runtime->global().setProperty(*runtime, "__UNISTYLES__", std::move(hostObject));
35
- }
36
-
37
- extern "C"
38
- JNIEXPORT void JNICALL
39
- Java_com_unistyles_UnistylesModule_nativeDestroy(JNIEnv *env, jobject thiz) {
40
- unistylesRuntime.reset();
41
- unistylesModule = nullptr;
19
+ return JNI_VERSION_1_2;
42
20
  }
43
21
 
44
- extern "C"
45
- JNIEXPORT void JNICALL
46
- Java_com_unistyles_UnistylesModule_nativeOnOrientationChange(JNIEnv *env, jobject thiz, jobject screen, jobject insets, jobject statusBar, jobject navigationBar) {
47
- if (unistylesRuntime != nullptr) {
48
- Screen screenDimensions = jobjectToScreen(env, screen);
49
- Dimensions statusBarDimensions = jobjectToDimensions(env, statusBar);
50
- Insets screenInsets = jobjectToInsets(env, insets);
51
- Dimensions navigationBarDimensions = jobjectToDimensions(env, navigationBar);
52
-
53
- unistylesRuntime->handleScreenSizeChange(screenDimensions, screenInsets, statusBarDimensions, navigationBarDimensions);
54
- }
55
- }
56
-
57
- extern "C"
58
- JNIEXPORT void JNICALL
59
- Java_com_unistyles_UnistylesModule_nativeOnAppearanceChange(JNIEnv *env, jobject thiz, jstring colorScheme) {
60
- if (unistylesRuntime != nullptr) {
61
- unistylesRuntime->handleAppearanceChange(env->GetStringUTFChars(colorScheme, nullptr));
62
- }
63
- }
64
-
65
- extern "C"
66
- JNIEXPORT void JNICALL
67
- Java_com_unistyles_UnistylesModule_nativeOnContentSizeCategoryChange(JNIEnv *env, jobject thiz, jstring contentSizeCategory) {
68
- if (unistylesRuntime != nullptr) {
69
- unistylesRuntime->handleContentSizeCategoryChange(env->GetStringUTFChars(contentSizeCategory, nullptr));
70
- }
71
- }
22
+ //using namespace facebook;
23
+ //
24
+ //static jobject unistylesModule = nullptr;
25
+ //std::shared_ptr<UnistylesRuntime> unistylesRuntime = nullptr;
26
+ //
27
+ //extern "C"
28
+ //JNIEXPORT void JNICALL
29
+ //Java_com_unistyles_UnistylesModule_nativeInstall(JNIEnv *env, jobject thiz, jlong jsi, jobject callInvokerHolder) {
30
+ // auto runtime = reinterpret_cast<jsi::Runtime *>(jsi);
31
+ // auto callInvoker{
32
+ // jni::alias_ref<react::CallInvokerHolder::javaobject>{ reinterpret_cast<react::CallInvokerHolder::javaobject>(callInvokerHolder)} -> cthis() ->getCallInvoker()
33
+ // };
34
+ //
35
+ // if (unistylesModule == nullptr) {
36
+ // unistylesModule = env->NewGlobalRef(thiz);
37
+ // }
38
+ //
39
+ // if (unistylesModule == nullptr) {
40
+ // return throwKotlinException(env, "Something went wrong while initializing UnistylesModule");
41
+ // }
42
+ //
43
+ // unistylesRuntime = std::make_shared<UnistylesRuntime>(*runtime, callInvoker);
44
+ // auto styleSheet = std::make_shared<StyleSheet>(*runtime, unistylesRuntime);
45
+ //
46
+ // makeShared(env, unistylesModule, unistylesRuntime);
47
+ //
48
+ // jsi::Object hostObject = jsi::Object::createFromHostObject(*runtime, unistylesRuntime);
49
+ // jsi::Object styleSheetHostObject = jsi::Object::createFromHostObject(*runtime, styleSheet);
50
+ // runtime->global().setProperty(*runtime, "__UNISTYLES__", std::move(hostObject));
51
+ // runtime->global().setProperty(*runtime, "__UNISTYLES__STYLESHEET__", std::move(styleSheetHostObject));
52
+ //}
53
+ //
54
+ //extern "C"
55
+ //JNIEXPORT void JNICALL
56
+ //Java_com_unistyles_UnistylesModule_nativeDestroy(JNIEnv *env, jobject thiz) {
57
+ // unistylesRuntime.reset();
58
+ // unistylesModule = nullptr;
59
+ //}
60
+ //
61
+ //extern "C"
62
+ //JNIEXPORT void JNICALL
63
+ //Java_com_unistyles_UnistylesModule_nativeOnOrientationChange(JNIEnv *env, jobject thiz, jobject screen, jobject insets, jobject statusBar, jobject navigationBar) {
64
+ // if (unistylesRuntime != nullptr) {
65
+ // Screen screenDimensions = jobjectToScreen(env, screen);
66
+ // Dimensions statusBarDimensions = jobjectToDimensions(env, statusBar);
67
+ // Insets screenInsets = jobjectToInsets(env, insets);
68
+ // Dimensions navigationBarDimensions = jobjectToDimensions(env, navigationBar);
69
+ //
70
+ // unistylesRuntime->handleScreenSizeChange(screenDimensions, screenInsets, statusBarDimensions, navigationBarDimensions);
71
+ // }
72
+ //}
73
+ //
74
+ //extern "C"
75
+ //JNIEXPORT void JNICALL
76
+ //Java_com_unistyles_UnistylesModule_nativeOnAppearanceChange(JNIEnv *env, jobject thiz, jstring colorScheme) {
77
+ // if (unistylesRuntime != nullptr) {
78
+ // unistylesRuntime->handleAppearanceChange(env->GetStringUTFChars(colorScheme, nullptr));
79
+ // }
80
+ //}
81
+ //
82
+ //extern "C"
83
+ //JNIEXPORT void JNICALL
84
+ //Java_com_unistyles_UnistylesModule_nativeOnContentSizeCategoryChange(JNIEnv *env, jobject thiz, jstring contentSizeCategory) {
85
+ // if (unistylesRuntime != nullptr) {
86
+ // unistylesRuntime->handleContentSizeCategoryChange(env->GetStringUTFChars(contentSizeCategory, nullptr));
87
+ // }
88
+ //}
@@ -1,18 +1,28 @@
1
1
  package com.unistyles
2
2
 
3
- import android.view.View
4
- import com.facebook.react.ReactPackage
3
+ import android.util.Log
4
+ import com.facebook.react.TurboReactPackage
5
5
  import com.facebook.react.bridge.NativeModule
6
6
  import com.facebook.react.bridge.ReactApplicationContext
7
- import com.facebook.react.uimanager.ReactShadowNode
8
- import com.facebook.react.uimanager.ViewManager
7
+ import com.facebook.react.module.model.ReactModuleInfoProvider
9
8
 
10
- class UnistylesPackage: ReactPackage {
11
- override fun createNativeModules(reactContext: ReactApplicationContext): MutableList<NativeModule> {
12
- return mutableListOf(UnistylesModule(reactContext))
9
+ class UnistylesPackage: TurboReactPackage() {
10
+ companion object {
11
+ private const val TAG: String = "Unistyles"
12
+
13
+ init {
14
+ try {
15
+ System.loadLibrary("unistyles")
16
+ Log.i(TAG, "Installed Unistyles \uD83E\uDD84!")
17
+ } catch (e: Throwable) {
18
+ Log.e(TAG, "Failed to load Unistyles C++ library! Is it properly linked?", e)
19
+ throw e
20
+ }
21
+ }
13
22
  }
14
23
 
15
- override fun createViewManagers(reactContext: ReactApplicationContext): MutableList<ViewManager<View, ReactShadowNode<*>>> {
16
- return mutableListOf()
24
+ override fun getModule(name: String, reactContext: ReactApplicationContext): NativeModule? = null
25
+ override fun getReactModuleInfoProvider(): ReactModuleInfoProvider {
26
+ return ReactModuleInfoProvider { emptyMap() }
17
27
  }
18
28
  }
@@ -0,0 +1,43 @@
1
+ #pragma once
2
+
3
+ #include <jsi/jsi.h>
4
+ #include "Helpers.h"
5
+
6
+ using namespace facebook;
7
+
8
+ namespace margelo::nitro::unistyles::helpers {
9
+
10
+ using Breakpoints = std::vector<std::pair<std::string, double>>;
11
+
12
+ // convert user's breakpoints to sorted C++ representation
13
+ inline Breakpoints jsiBreakpointsToVecPairs(jsi::Runtime& rt, jsi::Value&& breakpoints) {
14
+ Breakpoints sortedVecPairs;
15
+
16
+ enumerateJSIObject(rt, breakpoints.asObject(rt), [&](const std::string& propertyName, jsi::Value& propertyValue){
17
+ assertThat(rt, propertyValue.isNumber(), "value for breakpoint " + std::string(propertyName) + " is not a number.");
18
+
19
+ sortedVecPairs.emplace_back(propertyName, propertyValue.asNumber());
20
+ });
21
+
22
+ std::sort(sortedVecPairs.begin(), sortedVecPairs.end(), [](auto& a, auto& b){
23
+ return a.second < b.second;
24
+ });
25
+
26
+ return sortedVecPairs;
27
+ }
28
+
29
+ // C++ function to select current breakpoint based on screen width
30
+ inline std::string getBreakpointFromScreenWidth(int screenWidth, const Breakpoints& sortedVecPairs) {
31
+ auto it = std::upper_bound(sortedVecPairs.cbegin(), sortedVecPairs.cend(), screenWidth, [](int width, const auto& pair) {
32
+ return width < pair.second;
33
+ });
34
+
35
+ // return breakpoint with 0 as lowest
36
+ if (it == sortedVecPairs.begin()) {
37
+ return sortedVecPairs.front().first;
38
+ }
39
+
40
+ return (--it)->first;
41
+ }
42
+
43
+ }
@@ -0,0 +1,11 @@
1
+ #pragma once
2
+
3
+ namespace margelo::nitro::unistyles::helpers {
4
+
5
+ static const std::string UNISTYLES_ID = "__unid";
6
+ static const std::string ADD_VARIANTS_FN = "useVariants";
7
+ static const std::string STYLE_DEPENDENCIES = "uni__dependencies";
8
+ static const std::string STYLE_VARIANTS = "uni__variants";
9
+ static const std::string WEB_STYLE_KEY = "_web";
10
+
11
+ }
@@ -0,0 +1,185 @@
1
+ #pragma once
2
+
3
+ #include <jsi/jsi.h>
4
+ #include <jsi/JSIDynamic.h>
5
+ #include <folly/dynamic.h>
6
+ #include <unordered_set>
7
+
8
+ using namespace facebook;
9
+
10
+ namespace margelo::nitro::unistyles::helpers {
11
+
12
+ using Variants = std::vector<std::pair<std::string, std::string>>;
13
+
14
+ inline void assertThat(jsi::Runtime& rt, bool condition, const std::string& message) {
15
+ if (!condition) {
16
+ throw jsi::JSError(rt, message);
17
+ }
18
+ }
19
+
20
+ inline void enumerateJSIObject(jsi::Runtime& rt, const jsi::Object& obj, std::function<void(const std::string& propertyName, jsi::Value& propertyValue)> callback) {
21
+ jsi::Array propertyNames = obj.getPropertyNames(rt);
22
+ size_t length = propertyNames.size(rt);
23
+
24
+ for (size_t i = 0; i < length; i++) {
25
+ auto propertyName = propertyNames.getValueAtIndex(rt, i).asString(rt).utf8(rt);
26
+ auto propertyValue = obj.getProperty(rt, propertyName.c_str());
27
+
28
+ callback(propertyName, propertyValue);
29
+ }
30
+ }
31
+
32
+ template<typename PropertyType>
33
+ inline bool vecContainsKeys(std::vector<PropertyType>& vec, std::vector<PropertyType>&& keys) {
34
+ std::unordered_set<PropertyType> availableKeys(keys.begin(), keys.end());
35
+
36
+ for (const auto& key : vec) {
37
+ availableKeys.erase(key);
38
+
39
+ if (availableKeys.empty()) {
40
+ return true;
41
+ }
42
+ }
43
+
44
+ return false;
45
+ }
46
+
47
+ template<typename PropertyType>
48
+ inline void defineHiddenProperty(jsi::Runtime& rt, jsi::Object& object, const std::string& propName, PropertyType&& property) {
49
+ auto global = rt.global();
50
+ auto objectConstructor = global.getPropertyAsObject(rt, "Object");
51
+ auto defineProperty = objectConstructor.getPropertyAsFunction(rt, "defineProperty");
52
+
53
+ facebook::jsi::Object descriptor(rt);
54
+
55
+ if constexpr (std::is_same_v<std::decay_t<PropertyType>, jsi::Function>) {
56
+ descriptor.setProperty(rt, facebook::jsi::PropNameID::forUtf8(rt, "value"), std::forward<PropertyType>(property));
57
+ } else {
58
+ descriptor.setProperty(rt, facebook::jsi::PropNameID::forUtf8(rt, "value"), property);
59
+ }
60
+
61
+ descriptor.setProperty(rt, facebook::jsi::PropNameID::forUtf8(rt, "enumerable"), facebook::jsi::Value(false));
62
+ descriptor.setProperty(rt, facebook::jsi::PropNameID::forUtf8(rt, "writable"), facebook::jsi::Value(true));
63
+ descriptor.setProperty(rt, facebook::jsi::PropNameID::forUtf8(rt, "configurable"), facebook::jsi::Value(true));
64
+
65
+ defineProperty.call(rt, object, facebook::jsi::String::createFromAscii(rt, propName.c_str()), descriptor);
66
+ }
67
+
68
+ inline jsi::Object& mergeJSIObjects(jsi::Runtime&rt, jsi::Object& obj1, jsi::Object& obj2) {
69
+ helpers::enumerateJSIObject(rt, obj2, [&](const std::string& propertyName, jsi::Value& propertyValue){
70
+ obj1.setProperty(rt, propertyName.c_str(), propertyValue);
71
+ });
72
+
73
+ return obj1;
74
+ }
75
+
76
+ inline void iterateJSIArray(jsi::Runtime& rt, const jsi::Array& array, std::function<void(size_t, jsi::Value&)> callback) {
77
+ size_t length = array.size(rt);
78
+
79
+ for (size_t i = 0; i < length; i++) {
80
+ auto value = array.getValueAtIndex(rt, i);
81
+
82
+ callback(i, value);
83
+ }
84
+ }
85
+
86
+ inline bool isPlatformColor(jsi::Runtime& rt, jsi::Object& maybePlatformColor) {
87
+ auto isIOSPlatformColor = maybePlatformColor.hasProperty(rt, "semantic") && maybePlatformColor.getProperty(rt, "semantic").isObject();
88
+
89
+ if (isIOSPlatformColor) {
90
+ return true;
91
+ }
92
+
93
+ // Android
94
+ return maybePlatformColor.hasProperty(rt, "resource_paths") && maybePlatformColor.getProperty(rt, "resource_paths").isObject();
95
+ }
96
+
97
+ inline Variants variantsToPairs(jsi::Runtime& rt, jsi::Object&& variants) {
98
+ Variants pairs{};
99
+
100
+ helpers::enumerateJSIObject(rt, variants, [&](const std::string& variantName, jsi::Value& variantValue){
101
+ if (variantValue.isUndefined() || variantValue.isNull()) {
102
+ return;
103
+ }
104
+
105
+ if (variantValue.isBool()) {
106
+ pairs.emplace_back(std::make_pair(variantName, variantValue.asBool() ? "true" : "false"));
107
+
108
+ return;
109
+ }
110
+
111
+ if (variantValue.isString()) {
112
+ pairs.emplace_back(std::make_pair(variantName, variantValue.asString(rt).utf8(rt)));
113
+ }
114
+ });
115
+
116
+ return pairs;
117
+ }
118
+
119
+ inline jsi::Object variantsToValue(jsi::Runtime& rt, Variants& variants) {
120
+ jsi::Object rawVariants = jsi::Object(rt);
121
+
122
+ std::for_each(variants.begin(), variants.end(), [&](std::pair<std::string, std::string>& pair){
123
+ rawVariants.setProperty(rt, pair.first.c_str(), jsi::String::createFromUtf8(rt, pair.second));
124
+ });
125
+
126
+ return rawVariants;
127
+ }
128
+
129
+ inline std::vector<folly::dynamic> parseDynamicFunctionArguments(jsi::Runtime& rt, jsi::Array& arguments) {
130
+ std::vector<folly::dynamic> parsedArgument{};
131
+ size_t count = arguments.size(rt);
132
+
133
+ parsedArgument.reserve(count);
134
+
135
+ for (size_t i = 0; i < count; i++) {
136
+ jsi::Value arg = arguments.getValueAtIndex(rt, i);
137
+
138
+ if (arg.isBool()) {
139
+ parsedArgument.push_back(folly::dynamic(arg.asBool()));
140
+
141
+ continue;
142
+ }
143
+
144
+ if (arg.isNumber()) {
145
+ parsedArgument.push_back(folly::dynamic(arg.asNumber()));
146
+
147
+ continue;
148
+ }
149
+
150
+ if (arg.isString()) {
151
+ parsedArgument.push_back(folly::dynamic(arg.asString(rt).utf8(rt)));
152
+
153
+ continue;
154
+ }
155
+
156
+ if (arg.isUndefined()) {
157
+ parsedArgument.push_back(folly::dynamic());
158
+
159
+ continue;
160
+ }
161
+
162
+ if (arg.isNull()) {
163
+ parsedArgument.push_back(folly::dynamic(nullptr));
164
+
165
+ continue;
166
+ }
167
+
168
+ if (!arg.isObject()) {
169
+ continue;;
170
+ }
171
+
172
+ auto argObj = arg.asObject(rt);
173
+
174
+ // allow arrays and objects too
175
+ if (!argObj.isFunction(rt) && !argObj.isArrayBuffer(rt)) {
176
+ parsedArgument.push_back(jsi::dynamicFromValue(rt, arg));
177
+
178
+ continue;
179
+ }
180
+ }
181
+
182
+ return parsedArgument;
183
+ }
184
+
185
+ }
@@ -0,0 +1,63 @@
1
+ #include "HostStyle.h"
2
+
3
+ using namespace margelo::nitro::unistyles::core;
4
+ using namespace margelo::nitro::unistyles::parser;
5
+ using namespace facebook;
6
+
7
+ std::vector<jsi::PropNameID> HostStyle::getPropertyNames(jsi::Runtime& rt) {
8
+ auto propertyNames = std::vector<jsi::PropNameID> {};
9
+
10
+ propertyNames.reserve(8);
11
+
12
+ for (const auto& pair : this->_styleSheet->unistyles) {
13
+ propertyNames.emplace_back(jsi::PropNameID::forUtf8(rt, pair.first));
14
+ }
15
+
16
+ return propertyNames;
17
+ }
18
+
19
+ jsi::Value HostStyle::get(jsi::Runtime& rt, const jsi::PropNameID& propNameId) {
20
+ auto propertyName = propNameId.utf8(rt);
21
+
22
+ if (propertyName == helpers::UNISTYLES_ID) {
23
+ return jsi::Value(this->_styleSheet->tag);
24
+ }
25
+
26
+ if (propertyName == helpers::ADD_VARIANTS_FN) {
27
+ return this->createAddVariantsProxyFunction(rt);
28
+ }
29
+
30
+ if (this->_styleSheet->unistyles.contains(propertyName)) {
31
+ return valueFromUnistyle(rt, this->_styleSheet->unistyles[propertyName]);
32
+ }
33
+
34
+ if (propertyName == helpers::STYLE_VARIANTS) {
35
+ return helpers::variantsToValue(rt, this->_variants);
36
+ }
37
+
38
+ return jsi::Value::undefined();
39
+ }
40
+
41
+ jsi::Function HostStyle::createAddVariantsProxyFunction(jsi::Runtime& rt) {
42
+ auto useVariantsFnName = jsi::PropNameID::forUtf8(rt, helpers::ADD_VARIANTS_FN);
43
+
44
+ return jsi::Function::createFromHostFunction(rt, useVariantsFnName, 1, [&](jsi::Runtime &rt, const jsi::Value &thisVal, const jsi::Value *arguments, size_t count){
45
+ helpers::assertThat(rt, count == 1, "Unistyles: useVariants expected to be called with one argument.");
46
+ helpers::assertThat(rt, arguments[0].isObject(), "Unistyles: useVariants expected to be called with object.");
47
+
48
+ auto parser = parser::Parser(this->_unistylesRuntime);
49
+ auto pairs = helpers::variantsToPairs(rt, arguments[0].asObject(rt));
50
+
51
+ if (pairs == this->_variants) {
52
+ return jsi::Value::undefined();
53
+ }
54
+
55
+ this->_variants = pairs;
56
+
57
+ parser.rebuildUnistylesWithVariants(rt, this->_styleSheet, this->_variants);
58
+
59
+ return jsi::Value::undefined();
60
+ });
61
+ }
62
+
63
+ void HostStyle::set(jsi::Runtime& rt, const jsi::PropNameID& propNameId, const jsi::Value& value) {}
@@ -0,0 +1,28 @@
1
+ #pragma once
2
+
3
+ #include <jsi/jsi.h>
4
+ #include "StyleSheet.h"
5
+ #include "Constants.h"
6
+ #include "Parser.h"
7
+ #include "HybridUnistylesRuntime.h"
8
+
9
+ namespace margelo::nitro::unistyles::core {
10
+
11
+ using Variants = std::vector<std::pair<std::string, std::string>>;
12
+
13
+ struct JSI_EXPORT HostStyle : public jsi::HostObject {
14
+ HostStyle(std::shared_ptr<StyleSheet> styleSheet, std::shared_ptr<HybridUnistylesRuntime> unistylesRuntime)
15
+ : _styleSheet{styleSheet}, _unistylesRuntime{unistylesRuntime} {};
16
+
17
+ std::vector<jsi::PropNameID> getPropertyNames(jsi::Runtime& rt);
18
+ jsi::Value get(jsi::Runtime& rt, const jsi::PropNameID& propNameId);
19
+ void set(jsi::Runtime& rt, const jsi::PropNameID& propNameId, const jsi::Value& value);
20
+ jsi::Function createAddVariantsProxyFunction(jsi::Runtime& rt);
21
+
22
+ private:
23
+ std::shared_ptr<StyleSheet> _styleSheet;
24
+ std::shared_ptr<HybridUnistylesRuntime> _unistylesRuntime;
25
+ std::vector<std::pair<std::string, std::string>> _variants{};
26
+ };
27
+
28
+ }