react-native-unistyles 3.0.0-alpha.3 → 3.0.0-alpha.31

Sign up to get free protection for your applications and to get access to all the features.
Files changed (536) hide show
  1. package/README.md +7 -0
  2. package/android/CMakeLists.txt +12 -21
  3. package/cxx/common/Constants.h +3 -0
  4. package/cxx/common/Helpers.h +118 -5
  5. package/cxx/core/HostStyle.cpp +12 -8
  6. package/cxx/core/HostStyle.h +4 -0
  7. package/cxx/core/StyleSheet.h +0 -2
  8. package/cxx/core/StyleSheetRegistry.cpp +10 -13
  9. package/cxx/core/StyleSheetRegistry.h +4 -4
  10. package/cxx/core/Unistyle.h +7 -10
  11. package/cxx/core/UnistyleData.h +23 -0
  12. package/cxx/core/UnistyleWrapper.h +61 -12
  13. package/cxx/core/UnistylesCommitHook.cpp +14 -15
  14. package/cxx/core/UnistylesCommitHook.h +6 -11
  15. package/cxx/core/UnistylesCommitShadowNode.h +13 -0
  16. package/cxx/core/UnistylesMountHook.cpp +28 -0
  17. package/cxx/core/UnistylesMountHook.h +25 -0
  18. package/cxx/core/UnistylesRegistry.cpp +104 -89
  19. package/cxx/core/UnistylesRegistry.h +16 -13
  20. package/cxx/core/UnistylesState.cpp +29 -11
  21. package/cxx/core/UnistylesState.h +5 -2
  22. package/cxx/hybridObjects/HybridShadowRegistry.cpp +15 -13
  23. package/cxx/hybridObjects/HybridStyleSheet.cpp +136 -46
  24. package/cxx/hybridObjects/HybridStyleSheet.h +23 -5
  25. package/cxx/hybridObjects/HybridUnistylesRuntime.cpp +51 -8
  26. package/cxx/hybridObjects/HybridUnistylesRuntime.h +12 -1
  27. package/cxx/parser/Parser.cpp +236 -165
  28. package/cxx/parser/Parser.h +11 -14
  29. package/cxx/shadowTree/ShadowLeafUpdate.h +2 -1
  30. package/cxx/shadowTree/ShadowTrafficController.h +60 -0
  31. package/cxx/shadowTree/ShadowTreeManager.cpp +17 -17
  32. package/cxx/shadowTree/ShadowTreeManager.h +3 -2
  33. package/ios/Equatable.swift +2 -1
  34. package/ios/NativePlatform+ios.swift +21 -5
  35. package/ios/NativePlatform+keyboard.swift +83 -0
  36. package/ios/NativePlatformListener+ios.swift +36 -23
  37. package/ios/Unistyles.h +1 -0
  38. package/ios/UnistylesModuleOnLoad.h +13 -2
  39. package/ios/UnistylesModuleOnLoad.mm +9 -1
  40. package/lib/commonjs/core/createUnistylesComponent.js +18 -0
  41. package/lib/commonjs/core/createUnistylesComponent.js.map +1 -0
  42. package/lib/commonjs/core/createUnistylesComponent.native.js +46 -0
  43. package/lib/commonjs/core/createUnistylesComponent.native.js.map +1 -0
  44. package/lib/commonjs/core/index.js +27 -0
  45. package/lib/commonjs/core/index.js.map +1 -0
  46. package/lib/commonjs/core/useBreakpoint.js +22 -0
  47. package/lib/commonjs/core/useBreakpoint.js.map +1 -0
  48. package/lib/commonjs/core/useBreakpoint.native.js +24 -0
  49. package/lib/commonjs/core/useBreakpoint.native.js.map +1 -0
  50. package/lib/commonjs/core/useTheme.js +22 -0
  51. package/lib/commonjs/core/useTheme.js.map +1 -0
  52. package/lib/commonjs/core/useTheme.native.js +24 -0
  53. package/lib/commonjs/core/useTheme.native.js.map +1 -0
  54. package/lib/commonjs/global.js +3 -0
  55. package/lib/commonjs/index.js +23 -11
  56. package/lib/commonjs/index.js.map +1 -1
  57. package/lib/commonjs/mq.js +1 -4
  58. package/lib/commonjs/mq.js.map +2 -1
  59. package/lib/commonjs/specs/NativePlatform/NativePlatform.nitro.js +1 -0
  60. package/lib/commonjs/specs/NativePlatform/NativePlatform.nitro.js.map +2 -1
  61. package/lib/commonjs/specs/NativePlatform/index.js.map +1 -1
  62. package/lib/commonjs/specs/NavigtionBar/index.js +1 -1
  63. package/lib/commonjs/specs/NavigtionBar/index.js.map +1 -1
  64. package/lib/commonjs/specs/ShadowRegistry/index.js +7 -6
  65. package/lib/commonjs/specs/ShadowRegistry/index.js.map +1 -1
  66. package/lib/commonjs/specs/ShadowRegistry/types.js +3 -0
  67. package/lib/commonjs/specs/StatusBar/index.js +1 -1
  68. package/lib/commonjs/specs/StatusBar/index.js.map +1 -1
  69. package/lib/commonjs/specs/StyleSheet/UnistylesStyleSheet.nitro.js +2 -4
  70. package/lib/commonjs/specs/StyleSheet/UnistylesStyleSheet.nitro.js.map +1 -1
  71. package/lib/commonjs/specs/StyleSheet/index.js +1 -0
  72. package/lib/commonjs/specs/StyleSheet/index.js.map +2 -1
  73. package/lib/commonjs/specs/UnistylesRuntime/index.js +1 -1
  74. package/lib/commonjs/specs/UnistylesRuntime/index.js.map +1 -1
  75. package/lib/commonjs/specs/index.js +7 -0
  76. package/lib/commonjs/specs/index.js.map +1 -1
  77. package/lib/commonjs/specs/index.web.js +1 -1
  78. package/lib/commonjs/specs/index.web.js.map +2 -1
  79. package/lib/commonjs/specs/types.js +10 -10
  80. package/lib/commonjs/specs/types.js.map +1 -0
  81. package/lib/commonjs/types/accessibility.js +1 -1
  82. package/lib/commonjs/types/accessibility.js.map +1 -0
  83. package/lib/commonjs/types/common.js +3 -0
  84. package/lib/commonjs/types/stylesheet.js.map +1 -1
  85. package/lib/commonjs/types/variants.js.map +1 -1
  86. package/lib/commonjs/web/convert/boxShadow.js +74 -0
  87. package/lib/commonjs/web/convert/boxShadow.js.map +2 -0
  88. package/lib/commonjs/web/convert/index.js +68 -0
  89. package/lib/commonjs/web/convert/index.js.map +2 -0
  90. package/lib/commonjs/web/convert/module.d.js +2 -0
  91. package/lib/commonjs/web/convert/module.d.js.map +1 -0
  92. package/lib/commonjs/web/convert/pseudo.js +10 -0
  93. package/lib/commonjs/web/convert/pseudo.js.map +2 -0
  94. package/lib/commonjs/web/convert/shadow.js +64 -0
  95. package/lib/commonjs/web/convert/shadow.js.map +1 -0
  96. package/lib/commonjs/web/convert/style.js +93 -0
  97. package/lib/commonjs/web/convert/style.js.map +2 -0
  98. package/lib/commonjs/web/convert/textShadow.js +73 -0
  99. package/lib/commonjs/web/convert/textShadow.js.map +1 -0
  100. package/lib/commonjs/web/convert/transform.js +72 -0
  101. package/lib/commonjs/web/convert/transform.js.map +2 -0
  102. package/lib/commonjs/web/convert/types.js +9 -0
  103. package/lib/commonjs/web/convert/types.js.map +1 -0
  104. package/lib/commonjs/web/convert/utils.js +54 -0
  105. package/lib/commonjs/web/convert/utils.js.map +2 -0
  106. package/lib/commonjs/web/create.js +48 -0
  107. package/lib/commonjs/web/create.js.map +1 -0
  108. package/lib/commonjs/web/index.js +60 -0
  109. package/lib/commonjs/web/index.js.map +1 -0
  110. package/lib/commonjs/web/listener.js +35 -0
  111. package/lib/commonjs/web/listener.js.map +1 -0
  112. package/lib/commonjs/web/mock.js +28 -0
  113. package/lib/commonjs/web/mock.js.map +1 -0
  114. package/lib/commonjs/web/mq.js +23 -0
  115. package/lib/commonjs/web/mq.js.map +1 -0
  116. package/lib/commonjs/web/registry.js +183 -0
  117. package/lib/commonjs/web/registry.js.map +2 -0
  118. package/lib/commonjs/web/runtime.js +167 -0
  119. package/lib/commonjs/web/runtime.js.map +2 -0
  120. package/lib/commonjs/web/shadowRegistry.js +114 -0
  121. package/lib/commonjs/web/shadowRegistry.js.map +2 -0
  122. package/lib/commonjs/web/state.js +69 -0
  123. package/lib/commonjs/web/state.js.map +2 -0
  124. package/lib/commonjs/web/utils/common.js +92 -0
  125. package/lib/commonjs/web/utils/common.js.map +1 -0
  126. package/lib/commonjs/web/utils/index.js +28 -0
  127. package/lib/commonjs/web/utils/index.js.map +1 -0
  128. package/lib/commonjs/web/utils/unistyle.js +82 -0
  129. package/lib/commonjs/web/utils/unistyle.js.map +2 -0
  130. package/lib/commonjs/web/variants/getVariants.js +39 -0
  131. package/lib/commonjs/web/variants/getVariants.js.map +2 -0
  132. package/lib/commonjs/web/variants/index.js +28 -0
  133. package/lib/commonjs/web/variants/index.js.map +1 -0
  134. package/lib/commonjs/web/variants/useVariants.js +58 -0
  135. package/lib/commonjs/web/variants/useVariants.js.map +2 -0
  136. package/lib/module/common.js.map +1 -1
  137. package/lib/module/core/createUnistylesComponent.js +12 -0
  138. package/lib/module/core/createUnistylesComponent.js.map +1 -0
  139. package/lib/module/core/createUnistylesComponent.native.js +39 -0
  140. package/lib/module/core/createUnistylesComponent.native.js.map +1 -0
  141. package/lib/module/core/index.js +6 -0
  142. package/lib/module/core/index.js.map +1 -0
  143. package/lib/module/core/useBreakpoint.js +17 -0
  144. package/lib/module/core/useBreakpoint.js.map +1 -0
  145. package/lib/module/core/useBreakpoint.native.js +19 -0
  146. package/lib/module/core/useBreakpoint.native.js.map +2 -0
  147. package/lib/module/core/useTheme.js +17 -0
  148. package/lib/module/core/useTheme.js.map +1 -0
  149. package/lib/module/core/useTheme.native.js +19 -0
  150. package/lib/module/core/useTheme.native.js.map +1 -0
  151. package/lib/module/global.js +1 -1
  152. package/lib/module/global.js.map +1 -0
  153. package/lib/module/index.js +1 -9
  154. package/lib/module/index.js.map +1 -1
  155. package/lib/module/mq.js +1 -4
  156. package/lib/module/mq.js.map +2 -1
  157. package/lib/module/specs/NativePlatform/NativePlatform.nitro.js +1 -0
  158. package/lib/module/specs/NativePlatform/NativePlatform.nitro.js.map +2 -1
  159. package/lib/module/specs/NavigtionBar/UnistylesNavigationBar.nitro.js.map +1 -1
  160. package/lib/module/specs/NavigtionBar/index.js +1 -1
  161. package/lib/module/specs/NavigtionBar/index.js.map +1 -1
  162. package/lib/module/specs/ShadowRegistry/ShadowRegistry.nitro.js.map +1 -0
  163. package/lib/module/specs/ShadowRegistry/index.js +7 -6
  164. package/lib/module/specs/ShadowRegistry/index.js.map +1 -1
  165. package/lib/module/specs/ShadowRegistry/types.js +2 -0
  166. package/lib/module/specs/ShadowRegistry/types.js.map +1 -1
  167. package/lib/module/specs/StatusBar/UnistylesStatusBar.nitro.js.map +1 -0
  168. package/lib/module/specs/StatusBar/index.js +1 -1
  169. package/lib/module/specs/StatusBar/index.js.map +1 -1
  170. package/lib/module/specs/StyleSheet/UnistylesStyleSheet.nitro.js +1 -1
  171. package/lib/module/specs/StyleSheet/UnistylesStyleSheet.nitro.js.map +1 -1
  172. package/lib/module/specs/StyleSheet/index.js +1 -0
  173. package/lib/module/specs/StyleSheet/index.js.map +2 -1
  174. package/lib/module/specs/UnistylesRuntime/UnistylesRuntime.nitro.js.map +1 -1
  175. package/lib/module/specs/UnistylesRuntime/index.js +1 -1
  176. package/lib/module/specs/UnistylesRuntime/index.js.map +2 -1
  177. package/lib/module/specs/index.js +2 -1
  178. package/lib/module/specs/index.js.map +1 -1
  179. package/lib/module/specs/index.web.js +1 -1
  180. package/lib/module/specs/index.web.js.map +2 -1
  181. package/lib/module/specs/types.js.map +1 -0
  182. package/lib/module/types/accessibility.js +1 -1
  183. package/lib/module/types/accessibility.js.map +1 -0
  184. package/lib/module/types/breakpoints.js.map +1 -1
  185. package/lib/module/types/common.js +1 -1
  186. package/lib/module/types/common.js.map +1 -0
  187. package/lib/module/types/core.js.map +1 -0
  188. package/lib/module/types/index.js.map +2 -1
  189. package/lib/module/types/stylesheet.js.map +1 -1
  190. package/lib/module/types/variants.js.map +1 -0
  191. package/lib/module/web/convert/boxShadow.js +72 -0
  192. package/lib/module/web/convert/boxShadow.js.map +1 -0
  193. package/lib/module/web/convert/index.js +69 -0
  194. package/lib/module/web/convert/index.js.map +1 -0
  195. package/lib/module/web/convert/module.d.js +2 -0
  196. package/lib/module/web/convert/module.d.js.map +1 -0
  197. package/lib/module/web/convert/pseudo.js +5 -0
  198. package/lib/module/web/convert/pseudo.js.map +1 -0
  199. package/lib/module/web/convert/shadow.js +63 -0
  200. package/lib/module/web/convert/shadow.js.map +1 -0
  201. package/lib/module/web/convert/style.js +88 -0
  202. package/lib/module/web/convert/style.js.map +1 -0
  203. package/lib/module/web/convert/textShadow.js +65 -0
  204. package/lib/module/web/convert/textShadow.js.map +2 -0
  205. package/lib/module/web/convert/transform.js +67 -0
  206. package/lib/module/web/convert/transform.js.map +1 -0
  207. package/lib/module/web/convert/types.js +5 -0
  208. package/lib/module/web/convert/types.js.map +1 -0
  209. package/lib/module/web/convert/utils.js +42 -0
  210. package/lib/module/web/convert/utils.js.map +2 -0
  211. package/lib/module/web/create.js +39 -0
  212. package/lib/module/web/create.js.map +2 -0
  213. package/lib/module/web/index.js +25 -0
  214. package/lib/module/web/index.js.map +1 -0
  215. package/lib/module/web/listener.js +31 -0
  216. package/lib/module/web/listener.js.map +2 -0
  217. package/lib/module/web/mock.js +24 -0
  218. package/lib/module/web/mock.js.map +1 -0
  219. package/lib/module/web/mq.js +17 -0
  220. package/lib/module/web/mq.js.map +1 -0
  221. package/lib/module/web/registry.js +179 -0
  222. package/lib/module/web/registry.js.map +1 -0
  223. package/lib/module/web/runtime.js +163 -0
  224. package/lib/module/web/runtime.js.map +1 -0
  225. package/lib/module/web/shadowRegistry.js +118 -0
  226. package/lib/module/web/shadowRegistry.js.map +1 -0
  227. package/lib/module/web/state.js +65 -0
  228. package/lib/module/web/state.js.map +2 -0
  229. package/lib/module/web/utils/common.js +78 -0
  230. package/lib/module/web/utils/common.js.map +2 -0
  231. package/lib/module/web/utils/index.js +5 -0
  232. package/lib/module/web/utils/index.js.map +1 -0
  233. package/lib/module/web/utils/unistyle.js +69 -0
  234. package/lib/module/web/utils/unistyle.js.map +2 -0
  235. package/lib/module/web/variants/getVariants.js +34 -0
  236. package/lib/module/web/variants/getVariants.js.map +1 -0
  237. package/lib/module/web/variants/index.js +5 -0
  238. package/lib/module/web/variants/index.js.map +1 -0
  239. package/lib/module/web/variants/useVariants.js +53 -0
  240. package/lib/module/web/variants/useVariants.js.map +1 -0
  241. package/lib/typescript/src/core/createUnistylesComponent.d.ts +6 -0
  242. package/lib/typescript/src/core/createUnistylesComponent.d.ts.map +1 -0
  243. package/lib/typescript/src/core/createUnistylesComponent.native.d.ts +6 -0
  244. package/lib/typescript/src/core/createUnistylesComponent.native.d.ts.map +1 -0
  245. package/lib/typescript/src/core/index.d.ts +4 -0
  246. package/lib/typescript/src/core/index.d.ts.map +1 -0
  247. package/lib/typescript/src/core/useBreakpoint.d.ts +2 -0
  248. package/lib/typescript/src/core/useBreakpoint.d.ts.map +1 -0
  249. package/lib/typescript/src/core/useBreakpoint.native.d.ts +2 -0
  250. package/lib/typescript/src/core/useBreakpoint.native.d.ts.map +1 -0
  251. package/lib/typescript/src/core/useTheme.d.ts +3 -0
  252. package/lib/typescript/src/core/useTheme.d.ts.map +1 -0
  253. package/lib/typescript/src/core/useTheme.native.d.ts +3 -0
  254. package/lib/typescript/src/core/useTheme.native.d.ts.map +1 -0
  255. package/lib/typescript/src/index.d.ts +2 -0
  256. package/lib/typescript/src/index.d.ts.map +1 -1
  257. package/lib/typescript/src/specs/NativePlatform/NativePlatform.nitro.d.ts +6 -2
  258. package/lib/typescript/src/specs/NativePlatform/NativePlatform.nitro.d.ts.map +1 -1
  259. package/lib/typescript/src/specs/NavigtionBar/index.d.ts +5 -0
  260. package/lib/typescript/src/specs/NavigtionBar/index.d.ts.map +1 -1
  261. package/lib/typescript/src/specs/ShadowRegistry/index.d.ts +3 -3
  262. package/lib/typescript/src/specs/ShadowRegistry/index.d.ts.map +1 -1
  263. package/lib/typescript/src/specs/StatusBar/index.d.ts +5 -0
  264. package/lib/typescript/src/specs/StatusBar/index.d.ts.map +1 -1
  265. package/lib/typescript/src/specs/StyleSheet/UnistylesStyleSheet.nitro.d.ts +3 -1
  266. package/lib/typescript/src/specs/StyleSheet/UnistylesStyleSheet.nitro.d.ts.map +1 -1
  267. package/lib/typescript/src/specs/StyleSheet/index.d.ts +3 -1
  268. package/lib/typescript/src/specs/StyleSheet/index.d.ts.map +1 -1
  269. package/lib/typescript/src/specs/UnistylesRuntime/UnistylesRuntime.nitro.d.ts +0 -1
  270. package/lib/typescript/src/specs/UnistylesRuntime/UnistylesRuntime.nitro.d.ts.map +1 -1
  271. package/lib/typescript/src/specs/UnistylesRuntime/index.d.ts +3 -1
  272. package/lib/typescript/src/specs/UnistylesRuntime/index.d.ts.map +1 -1
  273. package/lib/typescript/src/specs/index.d.ts +4 -2
  274. package/lib/typescript/src/specs/index.d.ts.map +1 -1
  275. package/lib/typescript/src/specs/index.web.d.ts +1 -1
  276. package/lib/typescript/src/specs/index.web.d.ts.map +1 -1
  277. package/lib/typescript/src/types/breakpoints.d.ts +11 -11
  278. package/lib/typescript/src/types/breakpoints.d.ts.map +1 -1
  279. package/lib/typescript/src/types/index.d.ts +1 -1
  280. package/lib/typescript/src/types/index.d.ts.map +1 -1
  281. package/lib/typescript/src/types/stylesheet.d.ts +6 -4
  282. package/lib/typescript/src/types/stylesheet.d.ts.map +1 -1
  283. package/lib/typescript/src/types/variants.d.ts +4 -1
  284. package/lib/typescript/src/types/variants.d.ts.map +1 -1
  285. package/lib/typescript/src/web/convert/boxShadow.d.ts +8 -0
  286. package/lib/typescript/src/web/convert/boxShadow.d.ts.map +1 -0
  287. package/lib/typescript/src/web/convert/index.d.ts +3 -0
  288. package/lib/typescript/src/web/convert/index.d.ts.map +1 -0
  289. package/lib/typescript/src/web/convert/pseudo.d.ts +6 -0
  290. package/lib/typescript/src/web/convert/pseudo.d.ts.map +1 -0
  291. package/lib/typescript/src/web/convert/shadow.d.ts.map +1 -0
  292. package/lib/typescript/src/web/convert/style.d.ts +2 -0
  293. package/lib/typescript/src/web/convert/style.d.ts.map +1 -0
  294. package/lib/typescript/src/web/convert/textShadow.d.ts +8 -0
  295. package/lib/typescript/src/web/convert/textShadow.d.ts.map +1 -0
  296. package/lib/typescript/src/web/convert/transform.d.ts +4 -0
  297. package/lib/typescript/src/web/convert/transform.d.ts.map +1 -0
  298. package/lib/typescript/{web → src/web}/convert/types.d.ts +1 -1
  299. package/lib/typescript/src/web/convert/types.d.ts.map +1 -0
  300. package/lib/typescript/src/web/convert/utils.d.ts.map +1 -0
  301. package/lib/typescript/src/web/create.d.ts +1443 -0
  302. package/lib/typescript/{web → src/web}/create.d.ts.map +1 -1
  303. package/lib/typescript/src/web/index.d.ts +1459 -0
  304. package/lib/typescript/{web → src/web}/index.d.ts.map +1 -1
  305. package/lib/typescript/{web/listener → src/web}/listener.d.ts +3 -2
  306. package/lib/typescript/src/web/listener.d.ts.map +1 -0
  307. package/lib/typescript/src/web/mock.d.ts +5 -0
  308. package/lib/typescript/src/web/mock.d.ts.map +1 -0
  309. package/lib/typescript/src/web/mq.d.ts +8 -0
  310. package/lib/typescript/src/web/mq.d.ts.map +1 -0
  311. package/lib/typescript/src/web/registry.d.ts +28 -0
  312. package/lib/typescript/src/web/registry.d.ts.map +1 -0
  313. package/lib/typescript/{web → src/web}/runtime.d.ts +9 -9
  314. package/lib/typescript/src/web/runtime.d.ts.map +1 -0
  315. package/lib/typescript/src/web/shadowRegistry.d.ts +16 -0
  316. package/lib/typescript/src/web/shadowRegistry.d.ts.map +1 -0
  317. package/lib/typescript/src/web/state.d.ts +18 -0
  318. package/lib/typescript/src/web/state.d.ts.map +1 -0
  319. package/lib/typescript/{web/utils.d.ts → src/web/utils/common.d.ts} +8 -9
  320. package/lib/typescript/src/web/utils/common.d.ts.map +1 -0
  321. package/lib/typescript/src/web/utils/index.d.ts +3 -0
  322. package/lib/typescript/src/web/utils/index.d.ts.map +1 -0
  323. package/lib/typescript/src/web/utils/unistyle.d.ts +20 -0
  324. package/lib/typescript/src/web/utils/unistyle.d.ts.map +1 -0
  325. package/lib/typescript/src/web/variants/getVariants.d.ts +3 -0
  326. package/lib/typescript/src/web/variants/getVariants.d.ts.map +1 -0
  327. package/lib/typescript/src/web/variants/index.d.ts +3 -0
  328. package/lib/typescript/src/web/variants/index.d.ts.map +1 -0
  329. package/lib/typescript/src/web/variants/useVariants.d.ts +3 -0
  330. package/lib/typescript/src/web/variants/useVariants.d.ts.map +1 -0
  331. package/nitrogen/generated/android/c++/JColorScheme.hpp +1 -1
  332. package/nitrogen/generated/android/c++/JFunc_void.hpp +48 -0
  333. package/nitrogen/generated/android/c++/JFunc_void_std__vector_UnistyleDependency_.hpp +8 -8
  334. package/nitrogen/generated/android/c++/JHybridNativePlatformSpec.cpp +31 -22
  335. package/nitrogen/generated/android/c++/JHybridNativePlatformSpec.hpp +8 -3
  336. package/nitrogen/generated/android/c++/JOrientation.hpp +1 -1
  337. package/nitrogen/generated/android/c++/JUnistyleDependency.hpp +4 -1
  338. package/nitrogen/generated/android/c++/JUnistylesNativeMiniRuntime.hpp +9 -7
  339. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Func_void.kt +45 -0
  340. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/HybridNativePlatformSpec.kt +25 -5
  341. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/UnistyleDependency.kt +2 -1
  342. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/UnistylesNativeMiniRuntime.kt +2 -1
  343. package/nitrogen/generated/android/unistyles+autolinking.cmake +13 -1
  344. package/nitrogen/generated/android/{UnistylesOnLoad.cpp → unistylesOnLoad.cpp} +4 -2
  345. package/nitrogen/generated/android/{UnistylesOnLoad.hpp → unistylesOnLoad.hpp} +1 -1
  346. package/nitrogen/generated/ios/Unistyles+autolinking.rb +5 -3
  347. package/nitrogen/generated/ios/Unistyles-Swift-Cxx-Bridge.cpp +25 -0
  348. package/nitrogen/generated/ios/Unistyles-Swift-Cxx-Bridge.hpp +53 -31
  349. package/nitrogen/generated/ios/Unistyles-Swift-Cxx-Umbrella.hpp +0 -29
  350. package/nitrogen/generated/ios/c++/HybridNativePlatformSpecSwift.hpp +7 -1
  351. package/nitrogen/generated/ios/swift/HybridNativePlatformSpec.swift +3 -13
  352. package/nitrogen/generated/ios/swift/HybridNativePlatformSpecCxx.swift +167 -104
  353. package/nitrogen/generated/ios/swift/UnistyleDependency.swift +4 -0
  354. package/nitrogen/generated/ios/swift/UnistylesNativeMiniRuntime.swift +16 -5
  355. package/nitrogen/generated/shared/c++/ColorScheme.hpp +2 -2
  356. package/nitrogen/generated/shared/c++/HybridNativePlatformSpec.cpp +2 -0
  357. package/nitrogen/generated/shared/c++/HybridNativePlatformSpec.hpp +5 -0
  358. package/nitrogen/generated/shared/c++/HybridUnistylesNavigationBarSpec.hpp +3 -0
  359. package/nitrogen/generated/shared/c++/HybridUnistylesRuntimeSpec.hpp +3 -0
  360. package/nitrogen/generated/shared/c++/HybridUnistylesShadowRegistrySpec.hpp +3 -0
  361. package/nitrogen/generated/shared/c++/HybridUnistylesStatusBarSpec.hpp +3 -0
  362. package/nitrogen/generated/shared/c++/HybridUnistylesStyleSheetSpec.cpp +2 -1
  363. package/nitrogen/generated/shared/c++/HybridUnistylesStyleSheetSpec.hpp +10 -4
  364. package/nitrogen/generated/shared/c++/Orientation.hpp +2 -2
  365. package/nitrogen/generated/shared/c++/UnistyleDependency.hpp +2 -1
  366. package/nitrogen/generated/shared/c++/UnistylesCxxMiniRuntime.hpp +10 -9
  367. package/nitrogen/generated/shared/c++/UnistylesNativeMiniRuntime.hpp +9 -8
  368. package/package.json +18 -30
  369. package/plugin/common.js +12 -1
  370. package/plugin/index.js +110 -23
  371. package/plugin/ref.js +64 -13
  372. package/plugin/style.js +82 -22
  373. package/plugin/stylesheet.js +53 -3
  374. package/plugin/variants.js +33 -0
  375. package/src/common.js +4 -0
  376. package/src/core/createUnistylesComponent.js +6 -0
  377. package/src/core/createUnistylesComponent.native.js +31 -0
  378. package/src/core/createUnistylesComponent.native.tsx +44 -0
  379. package/src/core/createUnistylesComponent.tsx +10 -0
  380. package/src/core/index.js +3 -0
  381. package/src/core/index.ts +3 -0
  382. package/src/core/useBreakpoint.js +14 -0
  383. package/src/core/useBreakpoint.native.js +16 -0
  384. package/src/core/useBreakpoint.native.ts +21 -0
  385. package/src/core/useBreakpoint.ts +18 -0
  386. package/src/core/useTheme.js +14 -0
  387. package/src/core/useTheme.native.js +16 -0
  388. package/src/core/useTheme.native.ts +22 -0
  389. package/src/core/useTheme.ts +19 -0
  390. package/src/global.js +1 -0
  391. package/src/index.js +3 -0
  392. package/src/index.ts +2 -12
  393. package/src/mq.js +38 -0
  394. package/src/specs/NativePlatform/NativePlatform.nitro.js +19 -0
  395. package/src/specs/NativePlatform/NativePlatform.nitro.ts +7 -3
  396. package/src/specs/NativePlatform/index.js +1 -0
  397. package/src/specs/NavigtionBar/UnistylesNavigationBar.nitro.js +1 -0
  398. package/src/specs/NavigtionBar/index.js +9 -0
  399. package/src/specs/NavigtionBar/index.ts +6 -1
  400. package/src/specs/ShadowRegistry/ShadowRegistry.nitro.js +1 -0
  401. package/src/specs/ShadowRegistry/index.js +26 -0
  402. package/src/specs/ShadowRegistry/index.ts +10 -9
  403. package/src/specs/ShadowRegistry/types.js +1 -0
  404. package/src/specs/StatusBar/UnistylesStatusBar.nitro.js +1 -0
  405. package/src/specs/StatusBar/index.js +25 -0
  406. package/src/specs/StatusBar/index.ts +6 -1
  407. package/src/specs/StyleSheet/UnistylesStyleSheet.nitro.js +1 -0
  408. package/src/specs/StyleSheet/UnistylesStyleSheet.nitro.ts +4 -1
  409. package/src/specs/StyleSheet/index.js +13 -0
  410. package/src/specs/StyleSheet/index.ts +6 -1
  411. package/src/specs/TurboUnistyles/NativeTurboUnistyles.js +2 -0
  412. package/src/specs/TurboUnistyles/index.js +1 -0
  413. package/src/specs/UnistylesRuntime/UnistylesRuntime.nitro.js +1 -0
  414. package/src/specs/UnistylesRuntime/UnistylesRuntime.nitro.ts +0 -1
  415. package/src/specs/UnistylesRuntime/index.js +20 -0
  416. package/src/specs/UnistylesRuntime/index.ts +4 -2
  417. package/src/specs/index.js +8 -0
  418. package/src/specs/index.ts +6 -2
  419. package/src/specs/index.web.js +2 -0
  420. package/src/specs/index.web.ts +1 -1
  421. package/src/specs/types.js +17 -0
  422. package/src/types/accessibility.js +30 -0
  423. package/src/types/breakpoints.js +1 -0
  424. package/src/types/breakpoints.ts +25 -13
  425. package/src/types/common.js +1 -0
  426. package/src/types/core.js +1 -0
  427. package/src/types/index.js +1 -0
  428. package/src/types/index.ts +1 -1
  429. package/src/types/stylesheet.js +2 -0
  430. package/src/types/stylesheet.ts +7 -5
  431. package/src/types/variants.js +1 -0
  432. package/src/types/variants.ts +7 -1
  433. package/src/web/convert/boxShadow.js +59 -0
  434. package/{web → src/web}/convert/boxShadow.ts +14 -15
  435. package/src/web/convert/index.js +56 -0
  436. package/{web → src/web}/convert/index.ts +8 -15
  437. package/src/web/convert/pseudo.js +131 -0
  438. package/src/web/convert/pseudo.ts +137 -0
  439. package/src/web/convert/shadow.js +50 -0
  440. package/src/web/convert/style.js +137 -0
  441. package/{web → src/web}/convert/style.ts +61 -10
  442. package/src/web/convert/textShadow.js +56 -0
  443. package/{web → src/web}/convert/textShadow.ts +13 -14
  444. package/src/web/convert/transform.js +65 -0
  445. package/{web → src/web}/convert/transform.ts +7 -8
  446. package/src/web/convert/types.js +2 -0
  447. package/{web → src/web}/convert/types.ts +1 -1
  448. package/src/web/convert/utils.js +39 -0
  449. package/src/web/create.js +36 -0
  450. package/src/web/create.ts +47 -0
  451. package/src/web/index.js +22 -0
  452. package/{web → src/web}/index.ts +3 -2
  453. package/src/web/listener.js +26 -0
  454. package/{web/listener → src/web}/listener.ts +3 -3
  455. package/src/web/mock.js +21 -0
  456. package/{web → src/web}/mock.ts +2 -12
  457. package/src/web/mq.js +14 -0
  458. package/{web → src/web}/mq.ts +1 -3
  459. package/src/web/registry.js +165 -0
  460. package/src/web/registry.ts +236 -0
  461. package/src/web/runtime.js +160 -0
  462. package/{web → src/web}/runtime.ts +21 -18
  463. package/src/web/shadowRegistry.js +96 -0
  464. package/src/web/shadowRegistry.ts +121 -0
  465. package/src/web/state.js +68 -0
  466. package/src/web/state.ts +94 -0
  467. package/src/web/utils/common.js +79 -0
  468. package/{web/utils.ts → src/web/utils/common.ts} +48 -36
  469. package/src/web/utils/index.js +2 -0
  470. package/src/web/utils/index.ts +2 -0
  471. package/src/web/utils/unistyle.js +72 -0
  472. package/src/web/utils/unistyle.ts +104 -0
  473. package/src/web/variants/getVariants.js +26 -0
  474. package/src/web/variants/getVariants.ts +42 -0
  475. package/src/web/variants/index.js +2 -0
  476. package/src/web/variants/index.ts +2 -0
  477. package/src/web/variants/useVariants.js +50 -0
  478. package/src/web/variants/useVariants.ts +65 -0
  479. package/lib/typescript/example/App.d.ts +0 -4
  480. package/lib/typescript/example/App.d.ts.map +0 -1
  481. package/lib/typescript/example/unistyles.d.ts +0 -63
  482. package/lib/typescript/example/unistyles.d.ts.map +0 -1
  483. package/lib/typescript/expo-example/App.d.ts +0 -4
  484. package/lib/typescript/expo-example/App.d.ts.map +0 -1
  485. package/lib/typescript/expo-example/unistyles.d.ts +0 -63
  486. package/lib/typescript/expo-example/unistyles.d.ts.map +0 -1
  487. package/lib/typescript/web/convert/boxShadow.d.ts +0 -3
  488. package/lib/typescript/web/convert/boxShadow.d.ts.map +0 -1
  489. package/lib/typescript/web/convert/breakpoint.d.ts +0 -3
  490. package/lib/typescript/web/convert/breakpoint.d.ts.map +0 -1
  491. package/lib/typescript/web/convert/index.d.ts +0 -4
  492. package/lib/typescript/web/convert/index.d.ts.map +0 -1
  493. package/lib/typescript/web/convert/shadow.d.ts.map +0 -1
  494. package/lib/typescript/web/convert/style.d.ts +0 -3
  495. package/lib/typescript/web/convert/style.d.ts.map +0 -1
  496. package/lib/typescript/web/convert/textShadow.d.ts +0 -3
  497. package/lib/typescript/web/convert/textShadow.d.ts.map +0 -1
  498. package/lib/typescript/web/convert/transform.d.ts +0 -5
  499. package/lib/typescript/web/convert/transform.d.ts.map +0 -1
  500. package/lib/typescript/web/convert/types.d.ts.map +0 -1
  501. package/lib/typescript/web/convert/utils.d.ts.map +0 -1
  502. package/lib/typescript/web/create.d.ts +0 -2449
  503. package/lib/typescript/web/index.d.ts +0 -2464
  504. package/lib/typescript/web/listener/index.d.ts +0 -2
  505. package/lib/typescript/web/listener/index.d.ts.map +0 -1
  506. package/lib/typescript/web/listener/listener.d.ts.map +0 -1
  507. package/lib/typescript/web/mock.d.ts +0 -14
  508. package/lib/typescript/web/mock.d.ts.map +0 -1
  509. package/lib/typescript/web/mq.d.ts +0 -4
  510. package/lib/typescript/web/mq.d.ts.map +0 -1
  511. package/lib/typescript/web/pseudo.d.ts +0 -4
  512. package/lib/typescript/web/pseudo.d.ts.map +0 -1
  513. package/lib/typescript/web/registry.d.ts +0 -12
  514. package/lib/typescript/web/registry.d.ts.map +0 -1
  515. package/lib/typescript/web/runtime.d.ts.map +0 -1
  516. package/lib/typescript/web/state.d.ts +0 -24
  517. package/lib/typescript/web/state.d.ts.map +0 -1
  518. package/lib/typescript/web/useVariants.d.ts +0 -3
  519. package/lib/typescript/web/useVariants.d.ts.map +0 -1
  520. package/lib/typescript/web/utils.d.ts.map +0 -1
  521. package/plugin/__tests__/dependencies.spec.js +0 -360
  522. package/plugin/__tests__/ref.spec.js +0 -991
  523. package/plugin/__tests__/stylesheet.spec.js +0 -396
  524. package/web/convert/breakpoint.ts +0 -21
  525. package/web/create.ts +0 -102
  526. package/web/listener/index.ts +0 -1
  527. package/web/pseudo.ts +0 -11
  528. package/web/registry.ts +0 -41
  529. package/web/state.ts +0 -148
  530. package/web/useVariants.ts +0 -99
  531. /package/lib/typescript/{web → src/web}/convert/shadow.d.ts +0 -0
  532. /package/lib/typescript/{web → src/web}/convert/utils.d.ts +0 -0
  533. /package/nitrogen/generated/android/{UnistylesOnLoad.kt → unistylesOnLoad.kt} +0 -0
  534. /package/{web → src/web}/convert/module.d.ts +0 -0
  535. /package/{web → src/web}/convert/shadow.ts +0 -0
  536. /package/{web → src/web}/convert/utils.ts +0 -0
@@ -1,396 +0,0 @@
1
- import { pluginTester } from 'babel-plugin-tester'
2
- import plugin from '../'
3
-
4
- pluginTester({
5
- plugin,
6
- pluginOptions: {
7
- debug: false
8
- },
9
- babelOptions: {
10
- plugins: ['@babel/plugin-syntax-jsx'],
11
- generatorOpts: {
12
- retainLines: true
13
- }
14
- },
15
- tests: [
16
- {
17
- title: 'Should not add dependencies to StyleSheet if user is not using theme or miniRuntime',
18
- code: `
19
- import { StyleSheet } from 'react-native-unistyles'
20
-
21
- export const Example = () => {
22
- return (
23
- <View style={styles.container}>
24
- <Text>Hello world</Text>
25
- </View>
26
- )
27
- }
28
-
29
- const styles = StyleSheet.create({
30
- container: {
31
- backgroundColor: 'red'
32
- }
33
- })
34
- `,
35
- output: `
36
- import { UnistylesShadowRegistry } from 'react-native-unistyles'
37
- import { StyleSheet } from 'react-native-unistyles'
38
-
39
- export const Example = () => {
40
- return (
41
- <View
42
- style={styles.container}
43
- ref={ref => {
44
- UnistylesShadowRegistry.add(ref, styles.container)
45
- return () => UnistylesShadowRegistry.remove(ref, styles.container)
46
- }}
47
- >
48
- <Text>Hello world</Text>
49
- </View>
50
- )
51
- }
52
-
53
- const styles = StyleSheet.create({
54
- container: {
55
- backgroundColor: 'red'
56
- }
57
- })
58
- `
59
- },
60
- {
61
- title: 'Should add dependencies to StyleSheet if user is using theme',
62
- code: `
63
- import { StyleSheet } from 'react-native-unistyles'
64
-
65
- export const Example = () => {
66
- return (
67
- <View style={styles.container}>
68
- <Text>Hello world</Text>
69
- </View>
70
- )
71
- }
72
-
73
- const styles = StyleSheet.create(theme => ({
74
- container: {
75
- backgroundColor: theme.colors.background
76
- }
77
- }))
78
- `,
79
- output: `
80
- import { UnistylesShadowRegistry } from 'react-native-unistyles'
81
- import { StyleSheet } from 'react-native-unistyles'
82
-
83
- export const Example = () => {
84
- return (
85
- <View
86
- style={styles.container}
87
- ref={ref => {
88
- UnistylesShadowRegistry.add(ref, styles.container)
89
- return () => UnistylesShadowRegistry.remove(ref, styles.container)
90
- }}
91
- >
92
- <Text>Hello world</Text>
93
- </View>
94
- )
95
- }
96
-
97
- const styles = StyleSheet.create(theme => ({
98
- container: {
99
- backgroundColor: theme.colors.background,
100
- uni__dependencies: [0]
101
- }
102
- }))
103
- `
104
- },
105
- {
106
- title: 'Should add dependencies to StyleSheet even if user did rename import',
107
- code: `
108
- import { StyleSheet as ST } from 'react-native-unistyles'
109
-
110
- export const Example = () => {
111
- return (
112
- <View style={styles.container}>
113
- <Text>Hello world</Text>
114
- </View>
115
- )
116
- }
117
-
118
- const styles = ST.create(theme => ({
119
- container: {
120
- backgroundColor: theme.colors.background
121
- }
122
- }))
123
- `,
124
- output: `
125
- import { UnistylesShadowRegistry } from 'react-native-unistyles'
126
- import { StyleSheet as ST } from 'react-native-unistyles'
127
-
128
- export const Example = () => {
129
- return (
130
- <View
131
- style={styles.container}
132
- ref={ref => {
133
- UnistylesShadowRegistry.add(ref, styles.container)
134
- return () => UnistylesShadowRegistry.remove(ref, styles.container)
135
- }}
136
- >
137
- <Text>Hello world</Text>
138
- </View>
139
- )
140
- }
141
-
142
- const styles = ST.create(theme => ({
143
- container: {
144
- backgroundColor: theme.colors.background,
145
- uni__dependencies: [0]
146
- }
147
- }))
148
- `
149
- },
150
- {
151
- title: 'Should detect variants for object StyleSheet',
152
- code: `
153
- import { StyleSheet } from 'react-native-unistyles'
154
-
155
- export const Example = () => {
156
- return (
157
- <View style={styles.container}>
158
- <Text>Hello world</Text>
159
- </View>
160
- )
161
- }
162
-
163
- const styles = StyleSheet.create({
164
- container: {
165
- backgroundColor: 'red',
166
- variants: {}
167
- }
168
- })
169
- `,
170
- output: `
171
- import { UnistylesShadowRegistry } from 'react-native-unistyles'
172
- import { StyleSheet } from 'react-native-unistyles'
173
-
174
- export const Example = () => {
175
- return (
176
- <View
177
- style={styles.container}
178
- ref={ref => {
179
- UnistylesShadowRegistry.add(ref, styles.container)
180
- return () => UnistylesShadowRegistry.remove(ref, styles.container)
181
- }}
182
- >
183
- <Text>Hello world</Text>
184
- </View>
185
- )
186
- }
187
-
188
- const styles = StyleSheet.create({
189
- container: {
190
- backgroundColor: 'red',
191
- variants: {},
192
- uni__dependencies: [4]
193
- }
194
- })
195
- `
196
- },
197
- {
198
- title: 'Should detect variants for object StyleSheet and dynamic function',
199
- code: `
200
- import { StyleSheet } from 'react-native-unistyles'
201
-
202
- export const Example = () => {
203
- return (
204
- <View style={styles.container}>
205
- <Text>Hello world</Text>
206
- </View>
207
- )
208
- }
209
-
210
- const styles = StyleSheet.create({
211
- container: () => ({
212
- backgroundColor: 'red',
213
- variants: {}
214
- })
215
- })
216
- `,
217
- output: `
218
- import { UnistylesShadowRegistry } from 'react-native-unistyles'
219
- import { StyleSheet } from 'react-native-unistyles'
220
-
221
- export const Example = () => {
222
- return (
223
- <View
224
- style={styles.container}
225
- ref={ref => {
226
- UnistylesShadowRegistry.add(ref, styles.container)
227
- return () => UnistylesShadowRegistry.remove(ref, styles.container)
228
- }}
229
- >
230
- <Text>Hello world</Text>
231
- </View>
232
- )
233
- }
234
-
235
- const styles = StyleSheet.create({
236
- container: () => ({
237
- backgroundColor: 'red',
238
- variants: {},
239
- uni__dependencies: [4]
240
- })
241
- })
242
- `
243
- },
244
- {
245
- title: 'Should detect miniRuntime dependency',
246
- code: `
247
- import { StyleSheet } from 'react-native-unistyles'
248
-
249
- export const Example = () => {
250
- return (
251
- <View style={styles.container}>
252
- <Text>Hello world</Text>
253
- </View>
254
- )
255
- }
256
-
257
- const styles = StyleSheet.create((_, rt) => ({
258
- container: () => ({
259
- backgroundColor: 'red',
260
- variants: {},
261
- paddingTop: rt.insets.top
262
- })
263
- }))
264
- `,
265
- output: `
266
- import { UnistylesShadowRegistry } from 'react-native-unistyles'
267
- import { StyleSheet } from 'react-native-unistyles'
268
-
269
- export const Example = () => {
270
- return (
271
- <View
272
- style={styles.container}
273
- ref={ref => {
274
- UnistylesShadowRegistry.add(ref, styles.container)
275
- return () => UnistylesShadowRegistry.remove(ref, styles.container)
276
- }}
277
- >
278
- <Text>Hello world</Text>
279
- </View>
280
- )
281
- }
282
-
283
- const styles = StyleSheet.create((_, rt) => ({
284
- container: () => ({
285
- backgroundColor: 'red',
286
- variants: {},
287
- paddingTop: rt.insets.top,
288
- uni__dependencies: [4, 9]
289
- })
290
- }))
291
- `
292
- },
293
- {
294
- title: 'Should detect miniRuntime and theme dependencies even if user renamed it\'s names',
295
- code: `
296
- import { StyleSheet } from 'react-native-unistyles'
297
-
298
- export const Example = () => {
299
- return (
300
- <View style={styles.container}>
301
- <Text>Hello world</Text>
302
- </View>
303
- )
304
- }
305
-
306
- const styles = StyleSheet.create((hhsa, dee) => ({
307
- container: () => ({
308
- backgroundColor: hhsa.colors.background,
309
- variants: {},
310
- paddingTop: dee.colorScheme === 'dark' ? 0 : 10
311
- })
312
- }))
313
- `,
314
- output: `
315
- import { UnistylesShadowRegistry } from 'react-native-unistyles'
316
- import { StyleSheet } from 'react-native-unistyles'
317
-
318
- export const Example = () => {
319
- return (
320
- <View
321
- style={styles.container}
322
- ref={ref => {
323
- UnistylesShadowRegistry.add(ref, styles.container)
324
- return () => UnistylesShadowRegistry.remove(ref, styles.container)
325
- }}
326
- >
327
- <Text>Hello world</Text>
328
- </View>
329
- )
330
- }
331
-
332
- const styles = StyleSheet.create((hhsa, dee) => ({
333
- container: () => ({
334
- backgroundColor: hhsa.colors.background,
335
- variants: {},
336
- paddingTop: dee.colorScheme === 'dark' ? 0 : 10,
337
- uni__dependencies: [0, 4, 5]
338
- })
339
- }))
340
- `
341
- },
342
- {
343
- title: 'Should detect dependencies in function',
344
- code: `
345
- import { StyleSheet } from 'react-native-unistyles'
346
-
347
- export const Example = () => {
348
- return (
349
- <View style={styles.container}>
350
- <Text>Hello world</Text>
351
- </View>
352
- )
353
- }
354
-
355
- const styles = StyleSheet.create((theme, rt) => {
356
- return {
357
- container: () => ({
358
- backgroundColor: theme.colors.background,
359
- variants: {},
360
- paddingTop: rt.insets.top
361
- })
362
- }
363
- })
364
- `,
365
- output: `
366
- import { UnistylesShadowRegistry } from 'react-native-unistyles'
367
- import { StyleSheet } from 'react-native-unistyles'
368
-
369
- export const Example = () => {
370
- return (
371
- <View
372
- style={styles.container}
373
- ref={ref => {
374
- UnistylesShadowRegistry.add(ref, styles.container)
375
- return () => UnistylesShadowRegistry.remove(ref, styles.container)
376
- }}
377
- >
378
- <Text>Hello world</Text>
379
- </View>
380
- )
381
- }
382
-
383
- const styles = StyleSheet.create((theme, rt) => {
384
- return {
385
- container: () => ({
386
- backgroundColor: theme.colors.background,
387
- variants: {},
388
- paddingTop: rt.insets.top,
389
- uni__dependencies: [0, 4, 9]
390
- })
391
- }
392
- })
393
- `
394
- },
395
- ]
396
- })
@@ -1,21 +0,0 @@
1
- import type { MediaQuery } from 'typestyle/lib/types'
2
- import { UnistylesState } from '../state'
3
- import { keyInObject } from '../utils'
4
- import { isUnistylesMq, parseMq } from '../mq'
5
- import { Orientation } from '../../src/specs/types'
6
-
7
- export const convertBreakpoint = (breakpoint: string): MediaQuery => {
8
- if (Object.values(Orientation).includes(breakpoint as Orientation)) {
9
- return {
10
- orientation: breakpoint as Orientation
11
- }
12
- }
13
-
14
- if (isUnistylesMq(breakpoint)) {
15
- return parseMq(breakpoint)
16
- }
17
-
18
- return {
19
- minWidth: UnistylesState.breakpoints && keyInObject(UnistylesState.breakpoints, breakpoint) ? UnistylesState.breakpoints[breakpoint] : undefined,
20
- }
21
- }
package/web/create.ts DELETED
@@ -1,102 +0,0 @@
1
- import type { TypeStyle } from 'typestyle'
2
- import type { ReactNativeStyleSheet } from '../src/types'
3
- import type { StyleSheetWithSuperPowers, StyleSheet } from '../src/types/stylesheet'
4
- import { UnistylesRegistry } from './registry'
5
- import { keyInObject, reduceObject, toReactNativeClassName } from './utils'
6
- import { UnistylesRuntime } from './runtime'
7
- import { createUseVariants } from './useVariants'
8
- import { UnistylesListener } from './listener'
9
- import type { UnistyleDependency } from '../src/specs/NativePlatform'
10
-
11
- type ListenToDependenciesProps = {
12
- value: StyleSheet[keyof StyleSheet],
13
- key: PropertyKey,
14
- unistyles: TypeStyle,
15
- className: string,
16
- args?: Array<any>
17
- }
18
-
19
- export const create = (stylesheet: StyleSheetWithSuperPowers<StyleSheet>) => {
20
- const computedStylesheet = typeof stylesheet === 'function'
21
- ? stylesheet(UnistylesRuntime.theme, UnistylesRuntime.miniRuntime)
22
- : stylesheet
23
-
24
- const listenToDependencies = ({ key, className, unistyles, value, args = [] } : ListenToDependenciesProps) => {
25
- const dependencies = ('uni__dependencies' in value ? value['uni__dependencies'] : []) as Array<UnistyleDependency>
26
-
27
- if (dependencies.length === 0) {
28
- return
29
- }
30
-
31
- return UnistylesListener.addListeners(dependencies, () => {
32
- const newComputedStylesheet = typeof stylesheet === 'function'
33
- ? stylesheet(UnistylesRuntime.theme, UnistylesRuntime.miniRuntime)
34
- : stylesheet
35
-
36
- if (!keyInObject(newComputedStylesheet, key)) {
37
- return
38
- }
39
-
40
- const value = newComputedStylesheet[key]!
41
- const result = typeof value === 'function'
42
- ? value(...args)
43
- : value
44
-
45
- UnistylesRegistry.updateStyles(unistyles, result, className)
46
- })
47
- }
48
-
49
- const styles = reduceObject(computedStylesheet, (value, key) => {
50
- if (typeof value === 'function') {
51
- const classNameMap = new Map<number, string>()
52
- const unistylesMap = new Map<number, TypeStyle>()
53
- const disposeMap = new Map<number, VoidFunction | undefined>()
54
-
55
- return (...args: Array<any>) => {
56
- const [id] = args.slice(-1)
57
- const result = value(...args.slice(0, -1))
58
- const dispose = disposeMap.get(id)
59
- const unistyles = unistylesMap.get(id)
60
- const className = classNameMap.get(id)
61
-
62
- if (unistyles && className && dispose) {
63
- dispose()
64
- UnistylesRegistry.updateStyles(unistyles, result, className)
65
- disposeMap.set(id, listenToDependencies({
66
- key,
67
- value,
68
- unistyles,
69
- className,
70
- args
71
- }))
72
-
73
- return toReactNativeClassName(className, result)
74
- }
75
-
76
- const entry = UnistylesRegistry.createStyles(result, key)
77
-
78
- classNameMap.set(id, entry.className)
79
- unistylesMap.set(id, entry.unistyles)
80
- disposeMap.set(id, listenToDependencies({
81
- key,
82
- value,
83
- unistyles: entry.unistyles,
84
- className: entry.className,
85
- args
86
- }))
87
-
88
- return toReactNativeClassName(entry.className, result)
89
- }
90
- }
91
-
92
- const { className, unistyles } = UnistylesRegistry.createStyles(value, key)
93
-
94
- listenToDependencies({ key, value, unistyles, className })
95
-
96
- return toReactNativeClassName(className, value)
97
- }) as ReactNativeStyleSheet<StyleSheet>
98
-
99
- createUseVariants(styles)
100
-
101
- return styles
102
- }
@@ -1 +0,0 @@
1
- export { UnistylesListener } from './listener'
package/web/pseudo.ts DELETED
@@ -1,11 +0,0 @@
1
- // TODO: Add complete list of pseudo selectors
2
- export const pseudos = [
3
- '_hover',
4
- '_css',
5
- '_before',
6
- '_after'
7
- ] as const
8
-
9
- export const isPseudo = (selector: string) => pseudos.includes(selector as Pseudo)
10
-
11
- export type Pseudo = typeof pseudos[number]
package/web/registry.ts DELETED
@@ -1,41 +0,0 @@
1
- import { createTypeStyle, TypeStyle } from 'typestyle'
2
- import type { UnistylesValues } from '../src/types'
3
- import { convertToTypeStyle } from './convert'
4
- import { UnistylesState } from './state'
5
-
6
- class UnistylesRegistryBuilder {
7
- createStyles = (stylesheet: UnistylesValues, key: string | number) => {
8
- const stylesTag = UnistylesState.createTag()
9
- const unistyles = createTypeStyle(stylesTag)
10
- const typestyleStylesheet = convertToTypeStyle(stylesheet)
11
-
12
- const className = unistyles.style({
13
- $debugName: String(key),
14
- }, typestyleStylesheet)
15
-
16
- if (stylesheet._web?._css) {
17
- const customClassName = Array.isArray(stylesheet._web._css)
18
- ? stylesheet._web._css.join(' ')
19
- : stylesheet._web._css
20
-
21
- return {
22
- className: `${className} ${customClassName}`,
23
- unistyles
24
- }
25
- }
26
-
27
- return {
28
- className,
29
- unistyles
30
- }
31
- }
32
-
33
- updateStyles = (unistyles: TypeStyle, stylesheet: UnistylesValues, className: string) => {
34
- const typestyleStylesheet = convertToTypeStyle(stylesheet)
35
-
36
- unistyles.reinit()
37
- unistyles.cssRule(`.${className}`, typestyleStylesheet)
38
- }
39
- }
40
-
41
- export const UnistylesRegistry = new UnistylesRegistryBuilder()