react-native-css 3.0.0-nightly.75f8b74 → 3.0.0-nightly.9c84741

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (610) hide show
  1. package/dist/commonjs/compiler/atRules.js +16 -3
  2. package/dist/commonjs/compiler/atRules.js.map +1 -1
  3. package/dist/commonjs/compiler/compiler.js +37 -21
  4. package/dist/commonjs/compiler/compiler.js.map +1 -1
  5. package/dist/commonjs/compiler/declarations.js +255 -154
  6. package/dist/commonjs/compiler/declarations.js.map +1 -1
  7. package/dist/commonjs/compiler/inheritance.test.js +15 -15
  8. package/dist/commonjs/compiler/inheritance.test.js.map +1 -1
  9. package/dist/commonjs/compiler/keyframes.js +1 -1
  10. package/dist/commonjs/compiler/keyframes.js.map +1 -1
  11. package/dist/commonjs/compiler/pseudo-elements.js +49 -0
  12. package/dist/commonjs/compiler/pseudo-elements.js.map +1 -0
  13. package/dist/commonjs/compiler/selector-builder.js +501 -0
  14. package/dist/commonjs/compiler/selector-builder.js.map +1 -0
  15. package/dist/commonjs/compiler/selectors.js +10 -6
  16. package/dist/commonjs/compiler/selectors.js.map +1 -1
  17. package/dist/commonjs/compiler/stylesheet.js +137 -46
  18. package/dist/commonjs/compiler/stylesheet.js.map +1 -1
  19. package/dist/commonjs/compiler/supports.js +27 -0
  20. package/dist/commonjs/compiler/supports.js.map +1 -0
  21. package/dist/commonjs/components/ActivityIndicator.js +22 -0
  22. package/dist/commonjs/components/ActivityIndicator.js.map +1 -0
  23. package/dist/commonjs/components/Button.js +22 -0
  24. package/dist/commonjs/components/Button.js.map +1 -0
  25. package/dist/commonjs/components/FlatList.js +19 -0
  26. package/dist/commonjs/components/FlatList.js.map +1 -0
  27. package/dist/commonjs/components/Image.js +17 -0
  28. package/dist/commonjs/components/Image.js.map +1 -0
  29. package/dist/commonjs/components/Switch.js +17 -0
  30. package/dist/commonjs/components/Switch.js.map +1 -0
  31. package/dist/commonjs/components/TextInput.js +17 -0
  32. package/dist/commonjs/components/TextInput.js.map +1 -0
  33. package/dist/commonjs/components/index.js +48 -0
  34. package/dist/commonjs/components/index.js.map +1 -1
  35. package/dist/commonjs/components/react-native-safe-area-context.js +17 -0
  36. package/dist/commonjs/components/react-native-safe-area-context.js.map +1 -0
  37. package/dist/commonjs/components/react-native-safe-area-context.native.js +53 -0
  38. package/dist/commonjs/components/react-native-safe-area-context.native.js.map +1 -0
  39. package/dist/commonjs/jest/index.js +30 -12
  40. package/dist/commonjs/jest/index.js.map +1 -1
  41. package/dist/commonjs/metro/index.js +7 -4
  42. package/dist/commonjs/metro/index.js.map +1 -1
  43. package/dist/commonjs/metro/injection-code.js +5 -10
  44. package/dist/commonjs/metro/injection-code.js.map +1 -1
  45. package/dist/commonjs/metro/metro-transformer.js +18 -8
  46. package/dist/commonjs/metro/metro-transformer.js.map +1 -1
  47. package/dist/commonjs/metro/resolver.js +3 -0
  48. package/dist/commonjs/metro/resolver.js.map +1 -1
  49. package/dist/commonjs/poison.pill.js +14 -11
  50. package/dist/commonjs/poison.pill.js.map +1 -1
  51. package/dist/commonjs/runtime/native/api.js +8 -2
  52. package/dist/commonjs/runtime/native/api.js.map +1 -1
  53. package/dist/commonjs/runtime/native/conditions/attributes.js +42 -0
  54. package/dist/commonjs/runtime/native/conditions/attributes.js.map +1 -0
  55. package/dist/commonjs/runtime/native/conditions/container-query.js +28 -21
  56. package/dist/commonjs/runtime/native/conditions/container-query.js.map +1 -1
  57. package/dist/commonjs/runtime/native/conditions/guards.js.map +1 -1
  58. package/dist/commonjs/runtime/native/conditions/index.js +12 -46
  59. package/dist/commonjs/runtime/native/conditions/index.js.map +1 -1
  60. package/dist/commonjs/runtime/native/conditions/media-query.js +26 -21
  61. package/dist/commonjs/runtime/native/conditions/media-query.js.map +1 -1
  62. package/dist/commonjs/runtime/native/react/interaction.js +10 -10
  63. package/dist/commonjs/runtime/native/react/interaction.js.map +1 -1
  64. package/dist/commonjs/runtime/native/react/rules.js +33 -27
  65. package/dist/commonjs/runtime/native/react/rules.js.map +1 -1
  66. package/dist/commonjs/runtime/native/react/useNativeCss.js +3 -2
  67. package/dist/commonjs/runtime/native/react/useNativeCss.js.map +1 -1
  68. package/dist/commonjs/runtime/native/reactivity.js +12 -12
  69. package/dist/commonjs/runtime/native/reactivity.js.map +1 -1
  70. package/dist/commonjs/runtime/native/reanimated.js +17 -0
  71. package/dist/commonjs/runtime/native/reanimated.js.map +1 -0
  72. package/dist/commonjs/runtime/native/styles/calculate-props.js +63 -38
  73. package/dist/commonjs/runtime/native/styles/calculate-props.js.map +1 -1
  74. package/dist/commonjs/runtime/native/styles/defaults.js +1 -1
  75. package/dist/commonjs/runtime/native/styles/defaults.js.map +1 -1
  76. package/dist/commonjs/runtime/native/styles/functions/animation-timing.js +34 -0
  77. package/dist/commonjs/runtime/native/styles/functions/animation-timing.js.map +1 -0
  78. package/dist/commonjs/runtime/native/styles/functions/calc.js +125 -0
  79. package/dist/commonjs/runtime/native/styles/functions/calc.js.map +1 -0
  80. package/dist/commonjs/runtime/native/styles/{filters.js → functions/filters.js} +3 -3
  81. package/dist/commonjs/runtime/native/styles/functions/filters.js.map +1 -0
  82. package/dist/commonjs/runtime/native/styles/functions/index.js +83 -0
  83. package/dist/commonjs/runtime/native/styles/functions/index.js.map +1 -0
  84. package/dist/commonjs/runtime/native/styles/functions/numeric-functions.js +32 -0
  85. package/dist/commonjs/runtime/native/styles/functions/numeric-functions.js.map +1 -0
  86. package/dist/commonjs/runtime/native/styles/{platform-functions.js → functions/platform-functions.js} +3 -3
  87. package/dist/commonjs/runtime/native/styles/functions/platform-functions.js.map +1 -0
  88. package/dist/commonjs/runtime/native/styles/functions/string-functions.js +23 -0
  89. package/dist/commonjs/runtime/native/styles/functions/string-functions.js.map +1 -0
  90. package/dist/commonjs/runtime/native/styles/functions/transform-functions.js +121 -0
  91. package/dist/commonjs/runtime/native/styles/functions/transform-functions.js.map +1 -0
  92. package/dist/commonjs/runtime/native/styles/index.js +12 -12
  93. package/dist/commonjs/runtime/native/styles/index.js.map +1 -1
  94. package/dist/commonjs/runtime/native/styles/resolve.js +21 -44
  95. package/dist/commonjs/runtime/native/styles/resolve.js.map +1 -1
  96. package/dist/commonjs/runtime/native/styles/{shorthand.js → shorthands/_handler.js} +5 -5
  97. package/dist/commonjs/runtime/native/styles/shorthands/_handler.js.map +1 -0
  98. package/dist/commonjs/runtime/native/styles/{animation.js → shorthands/animation.js} +6 -37
  99. package/dist/commonjs/runtime/native/styles/shorthands/animation.js.map +1 -0
  100. package/dist/commonjs/runtime/native/styles/{border.js → shorthands/border.js} +2 -2
  101. package/dist/commonjs/runtime/native/styles/shorthands/border.js.map +1 -0
  102. package/dist/commonjs/runtime/native/styles/shorthands/box-shadow.js +50 -0
  103. package/dist/commonjs/runtime/native/styles/shorthands/box-shadow.js.map +1 -0
  104. package/dist/commonjs/runtime/native/styles/shorthands/index.js +61 -0
  105. package/dist/commonjs/runtime/native/styles/shorthands/index.js.map +1 -0
  106. package/dist/commonjs/runtime/native/styles/{text-shadow.js → shorthands/text-shadow.js} +2 -2
  107. package/dist/commonjs/runtime/native/styles/shorthands/text-shadow.js.map +1 -0
  108. package/dist/commonjs/runtime/native/styles/{transform.js → shorthands/transform.js} +1 -1
  109. package/dist/commonjs/runtime/native/styles/shorthands/transform.js.map +1 -0
  110. package/dist/commonjs/runtime/native/styles/units.js +7 -4
  111. package/dist/commonjs/runtime/native/styles/units.js.map +1 -1
  112. package/dist/commonjs/runtime/native/styles/variables.js +3 -2
  113. package/dist/commonjs/runtime/native/styles/variables.js.map +1 -1
  114. package/dist/commonjs/runtime/utils/objects.js +14 -6
  115. package/dist/commonjs/runtime/utils/objects.js.map +1 -1
  116. package/dist/commonjs/runtime/utils/specificity.js +2 -1
  117. package/dist/commonjs/runtime/utils/specificity.js.map +1 -1
  118. package/dist/commonjs/runtime/web/api.js.map +1 -1
  119. package/dist/commonjs/style-collection/index.js +110 -0
  120. package/dist/commonjs/style-collection/index.js.map +1 -0
  121. package/dist/commonjs/style-collection/root.js +28 -0
  122. package/dist/commonjs/style-collection/root.js.map +1 -0
  123. package/dist/module/compiler/atRules.js +16 -3
  124. package/dist/module/compiler/atRules.js.map +1 -1
  125. package/dist/module/compiler/compiler.js +37 -21
  126. package/dist/module/compiler/compiler.js.map +1 -1
  127. package/dist/module/compiler/compiler.types.js +1 -1
  128. package/dist/module/compiler/compiler.types.js.map +1 -1
  129. package/dist/module/compiler/declarations.js +250 -150
  130. package/dist/module/compiler/declarations.js.map +1 -1
  131. package/dist/module/compiler/inheritance.test.js +15 -15
  132. package/dist/module/compiler/inheritance.test.js.map +1 -1
  133. package/dist/module/compiler/keyframes.js +1 -1
  134. package/dist/module/compiler/keyframes.js.map +1 -1
  135. package/dist/module/compiler/pseudo-elements.js +44 -0
  136. package/dist/module/compiler/pseudo-elements.js.map +1 -0
  137. package/dist/module/compiler/selector-builder.js +496 -0
  138. package/dist/module/compiler/selector-builder.js.map +1 -0
  139. package/dist/module/compiler/selectors.js +10 -6
  140. package/dist/module/compiler/selectors.js.map +1 -1
  141. package/dist/module/compiler/stylesheet.js +136 -45
  142. package/dist/module/compiler/stylesheet.js.map +1 -1
  143. package/dist/module/compiler/supports.js +23 -0
  144. package/dist/module/compiler/supports.js.map +1 -0
  145. package/dist/module/components/ActivityIndicator.js +17 -0
  146. package/dist/module/components/ActivityIndicator.js.map +1 -0
  147. package/dist/module/components/Button.js +17 -0
  148. package/dist/module/components/Button.js.map +1 -0
  149. package/dist/module/components/FlatList.js +14 -0
  150. package/dist/module/components/FlatList.js.map +1 -0
  151. package/dist/module/components/Image.js +12 -0
  152. package/dist/module/components/Image.js.map +1 -0
  153. package/dist/module/components/Switch.js +12 -0
  154. package/dist/module/components/Switch.js.map +1 -0
  155. package/dist/module/components/TextInput.js +12 -0
  156. package/dist/module/components/TextInput.js.map +1 -0
  157. package/dist/module/components/index.js +6 -0
  158. package/dist/module/components/index.js.map +1 -1
  159. package/dist/module/components/react-native-safe-area-context.js +4 -0
  160. package/dist/module/components/react-native-safe-area-context.js.map +1 -0
  161. package/dist/module/components/react-native-safe-area-context.native.js +36 -0
  162. package/dist/module/components/react-native-safe-area-context.native.js.map +1 -0
  163. package/dist/module/jest/index.js +28 -10
  164. package/dist/module/jest/index.js.map +1 -1
  165. package/dist/module/metro/index.js +7 -4
  166. package/dist/module/metro/index.js.map +1 -1
  167. package/dist/module/metro/injection-code.js +5 -10
  168. package/dist/module/metro/injection-code.js.map +1 -1
  169. package/dist/module/metro/metro-transformer.js +18 -8
  170. package/dist/module/metro/metro-transformer.js.map +1 -1
  171. package/dist/module/metro/resolver.js +3 -0
  172. package/dist/module/metro/resolver.js.map +1 -1
  173. package/dist/module/poison.pill.js +14 -11
  174. package/dist/module/poison.pill.js.map +1 -1
  175. package/dist/module/runtime/native/api.js +2 -1
  176. package/dist/module/runtime/native/api.js.map +1 -1
  177. package/dist/module/runtime/native/conditions/attributes.js +38 -0
  178. package/dist/module/runtime/native/conditions/attributes.js.map +1 -0
  179. package/dist/module/runtime/native/conditions/container-query.js +28 -21
  180. package/dist/module/runtime/native/conditions/container-query.js.map +1 -1
  181. package/dist/module/runtime/native/conditions/guards.js.map +1 -1
  182. package/dist/module/runtime/native/conditions/index.js +12 -46
  183. package/dist/module/runtime/native/conditions/index.js.map +1 -1
  184. package/dist/module/runtime/native/conditions/media-query.js +27 -22
  185. package/dist/module/runtime/native/conditions/media-query.js.map +1 -1
  186. package/dist/module/runtime/native/react/interaction.js +10 -10
  187. package/dist/module/runtime/native/react/interaction.js.map +1 -1
  188. package/dist/module/runtime/native/react/rules.js +31 -26
  189. package/dist/module/runtime/native/react/rules.js.map +1 -1
  190. package/dist/module/runtime/native/react/useNativeCss.js +2 -1
  191. package/dist/module/runtime/native/react/useNativeCss.js.map +1 -1
  192. package/dist/module/runtime/native/reactivity.js +11 -11
  193. package/dist/module/runtime/native/reactivity.js.map +1 -1
  194. package/dist/module/runtime/native/reanimated.js +13 -0
  195. package/dist/module/runtime/native/reanimated.js.map +1 -0
  196. package/dist/module/runtime/native/styles/calculate-props.js +64 -39
  197. package/dist/module/runtime/native/styles/calculate-props.js.map +1 -1
  198. package/dist/module/runtime/native/styles/defaults.js +1 -1
  199. package/dist/module/runtime/native/styles/defaults.js.map +1 -1
  200. package/dist/module/runtime/native/styles/functions/animation-timing.js +30 -0
  201. package/dist/module/runtime/native/styles/functions/animation-timing.js.map +1 -0
  202. package/dist/module/runtime/native/styles/functions/calc.js +120 -0
  203. package/dist/module/runtime/native/styles/functions/calc.js.map +1 -0
  204. package/dist/module/runtime/native/styles/{filters.js → functions/filters.js} +2 -2
  205. package/dist/module/runtime/native/styles/functions/filters.js.map +1 -0
  206. package/dist/module/runtime/native/styles/functions/index.js +10 -0
  207. package/dist/module/runtime/native/styles/functions/index.js.map +1 -0
  208. package/dist/module/runtime/native/styles/functions/numeric-functions.js +25 -0
  209. package/dist/module/runtime/native/styles/functions/numeric-functions.js.map +1 -0
  210. package/dist/module/runtime/native/styles/{platform-functions.js → functions/platform-functions.js} +1 -1
  211. package/dist/module/runtime/native/styles/functions/platform-functions.js.map +1 -0
  212. package/dist/module/runtime/native/styles/functions/string-functions.js +18 -0
  213. package/dist/module/runtime/native/styles/functions/string-functions.js.map +1 -0
  214. package/dist/module/runtime/native/styles/functions/transform-functions.js +114 -0
  215. package/dist/module/runtime/native/styles/functions/transform-functions.js.map +1 -0
  216. package/dist/module/runtime/native/styles/index.js +12 -12
  217. package/dist/module/runtime/native/styles/index.js.map +1 -1
  218. package/dist/module/runtime/native/styles/resolve.js +20 -44
  219. package/dist/module/runtime/native/styles/resolve.js.map +1 -1
  220. package/dist/module/runtime/native/styles/{shorthand.js → shorthands/_handler.js} +5 -5
  221. package/dist/module/runtime/native/styles/shorthands/_handler.js.map +1 -0
  222. package/dist/module/runtime/native/styles/{animation.js → shorthands/animation.js} +3 -34
  223. package/dist/module/runtime/native/styles/shorthands/animation.js.map +1 -0
  224. package/dist/module/runtime/native/styles/{border.js → shorthands/border.js} +1 -1
  225. package/dist/module/runtime/native/styles/shorthands/border.js.map +1 -0
  226. package/dist/module/runtime/native/styles/{box-shadow.js → shorthands/box-shadow.js} +16 -6
  227. package/dist/module/runtime/native/styles/shorthands/box-shadow.js.map +1 -0
  228. package/dist/module/runtime/native/styles/shorthands/index.js +8 -0
  229. package/dist/module/runtime/native/styles/shorthands/index.js.map +1 -0
  230. package/dist/module/runtime/native/styles/{text-shadow.js → shorthands/text-shadow.js} +1 -1
  231. package/dist/module/runtime/native/styles/shorthands/text-shadow.js.map +1 -0
  232. package/dist/module/runtime/native/styles/{transform.js → shorthands/transform.js} +1 -1
  233. package/dist/module/runtime/native/styles/shorthands/transform.js.map +1 -0
  234. package/dist/module/runtime/native/styles/units.js +7 -4
  235. package/dist/module/runtime/native/styles/units.js.map +1 -1
  236. package/dist/module/runtime/native/styles/variables.js +2 -1
  237. package/dist/module/runtime/native/styles/variables.js.map +1 -1
  238. package/dist/module/runtime/utils/objects.js +14 -6
  239. package/dist/module/runtime/utils/objects.js.map +1 -1
  240. package/dist/module/runtime/utils/specificity.js +2 -1
  241. package/dist/module/runtime/utils/specificity.js.map +1 -1
  242. package/dist/module/runtime/web/api.js.map +1 -1
  243. package/dist/module/style-collection/index.js +95 -0
  244. package/dist/module/style-collection/index.js.map +1 -0
  245. package/dist/module/style-collection/root.js +24 -0
  246. package/dist/module/style-collection/root.js.map +1 -0
  247. package/dist/typescript/commonjs/src/compiler/atRules.d.ts.map +1 -1
  248. package/dist/typescript/commonjs/src/compiler/compiler.d.ts +9 -2
  249. package/dist/typescript/commonjs/src/compiler/compiler.d.ts.map +1 -1
  250. package/dist/typescript/commonjs/src/compiler/compiler.types.d.ts +16 -17
  251. package/dist/typescript/commonjs/src/compiler/compiler.types.d.ts.map +1 -1
  252. package/dist/typescript/commonjs/src/compiler/declarations.d.ts +18 -19
  253. package/dist/typescript/commonjs/src/compiler/declarations.d.ts.map +1 -1
  254. package/dist/typescript/commonjs/src/compiler/pseudo-elements.d.ts +4 -0
  255. package/dist/typescript/commonjs/src/compiler/pseudo-elements.d.ts.map +1 -0
  256. package/dist/typescript/commonjs/src/compiler/selector-builder.d.ts +24 -0
  257. package/dist/typescript/commonjs/src/compiler/selector-builder.d.ts.map +1 -0
  258. package/dist/typescript/commonjs/src/compiler/selectors.d.ts +3 -2
  259. package/dist/typescript/commonjs/src/compiler/selectors.d.ts.map +1 -1
  260. package/dist/typescript/commonjs/src/compiler/stylesheet.d.ts +23 -9
  261. package/dist/typescript/commonjs/src/compiler/stylesheet.d.ts.map +1 -1
  262. package/dist/typescript/commonjs/src/compiler/supports.d.ts +3 -0
  263. package/dist/typescript/commonjs/src/compiler/supports.d.ts.map +1 -0
  264. package/dist/typescript/commonjs/src/components/ActivityIndicator.d.ts +13 -0
  265. package/dist/typescript/commonjs/src/components/ActivityIndicator.d.ts.map +1 -0
  266. package/dist/typescript/commonjs/src/components/Button.d.ts +13 -0
  267. package/dist/typescript/commonjs/src/components/Button.d.ts.map +1 -0
  268. package/dist/typescript/commonjs/src/components/FlatList.d.ts +10 -0
  269. package/dist/typescript/commonjs/src/components/FlatList.d.ts.map +1 -0
  270. package/dist/typescript/commonjs/src/components/Image.d.ts +8 -0
  271. package/dist/typescript/commonjs/src/components/Image.d.ts.map +1 -0
  272. package/dist/typescript/commonjs/src/components/Switch.d.ts +8 -0
  273. package/dist/typescript/commonjs/src/components/Switch.d.ts.map +1 -0
  274. package/dist/typescript/commonjs/src/components/TextInput.d.ts +8 -0
  275. package/dist/typescript/commonjs/src/components/TextInput.d.ts.map +1 -0
  276. package/dist/typescript/commonjs/src/components/index.d.ts +6 -0
  277. package/dist/typescript/commonjs/src/components/index.d.ts.map +1 -1
  278. package/dist/typescript/commonjs/src/components/react-native-safe-area-context.d.ts +2 -0
  279. package/dist/typescript/commonjs/src/components/react-native-safe-area-context.d.ts.map +1 -0
  280. package/dist/typescript/commonjs/src/components/react-native-safe-area-context.native.d.ts +4 -0
  281. package/dist/typescript/commonjs/src/components/react-native-safe-area-context.native.d.ts.map +1 -0
  282. package/dist/typescript/commonjs/src/jest/index.d.ts +20 -3
  283. package/dist/typescript/commonjs/src/jest/index.d.ts.map +1 -1
  284. package/dist/typescript/commonjs/src/metro/index.d.ts.map +1 -1
  285. package/dist/typescript/commonjs/src/metro/injection-code.d.ts +4 -7
  286. package/dist/typescript/commonjs/src/metro/injection-code.d.ts.map +1 -1
  287. package/dist/typescript/commonjs/src/metro/metro-transformer.d.ts +4 -1
  288. package/dist/typescript/commonjs/src/metro/metro-transformer.d.ts.map +1 -1
  289. package/dist/typescript/commonjs/src/metro/resolver.d.ts.map +1 -1
  290. package/dist/typescript/commonjs/src/poison.pill.d.ts.map +1 -1
  291. package/dist/typescript/commonjs/src/runtime/native/api.d.ts +3 -1
  292. package/dist/typescript/commonjs/src/runtime/native/api.d.ts.map +1 -1
  293. package/dist/typescript/commonjs/src/runtime/native/conditions/attributes.d.ts +5 -0
  294. package/dist/typescript/commonjs/src/runtime/native/conditions/attributes.d.ts.map +1 -0
  295. package/dist/typescript/commonjs/src/runtime/native/conditions/container-query.d.ts +3 -3
  296. package/dist/typescript/commonjs/src/runtime/native/conditions/container-query.d.ts.map +1 -1
  297. package/dist/typescript/commonjs/src/runtime/native/conditions/guards.d.ts +2 -2
  298. package/dist/typescript/commonjs/src/runtime/native/conditions/guards.d.ts.map +1 -1
  299. package/dist/typescript/commonjs/src/runtime/native/conditions/index.d.ts +2 -2
  300. package/dist/typescript/commonjs/src/runtime/native/conditions/index.d.ts.map +1 -1
  301. package/dist/typescript/commonjs/src/runtime/native/conditions/media-query.d.ts +2 -2
  302. package/dist/typescript/commonjs/src/runtime/native/conditions/media-query.d.ts.map +1 -1
  303. package/dist/typescript/commonjs/src/runtime/native/react/interaction.d.ts +2 -2
  304. package/dist/typescript/commonjs/src/runtime/native/react/interaction.d.ts.map +1 -1
  305. package/dist/typescript/commonjs/src/runtime/native/react/rules.d.ts +2 -2
  306. package/dist/typescript/commonjs/src/runtime/native/react/rules.d.ts.map +1 -1
  307. package/dist/typescript/commonjs/src/runtime/native/react/useNativeCss.d.ts +2 -1
  308. package/dist/typescript/commonjs/src/runtime/native/react/useNativeCss.d.ts.map +1 -1
  309. package/dist/typescript/commonjs/src/runtime/native/reactivity.d.ts +2 -10
  310. package/dist/typescript/commonjs/src/runtime/native/reactivity.d.ts.map +1 -1
  311. package/dist/typescript/commonjs/src/runtime/native/reanimated.d.ts +5 -0
  312. package/dist/typescript/commonjs/src/runtime/native/reanimated.d.ts.map +1 -0
  313. package/dist/typescript/commonjs/src/runtime/native/styles/calculate-props.d.ts +1 -1
  314. package/dist/typescript/commonjs/src/runtime/native/styles/calculate-props.d.ts.map +1 -1
  315. package/dist/typescript/commonjs/src/runtime/native/styles/defaults.d.ts.map +1 -1
  316. package/dist/typescript/commonjs/src/runtime/native/styles/functions/animation-timing.d.ts +4 -0
  317. package/dist/typescript/commonjs/src/runtime/native/styles/functions/animation-timing.d.ts.map +1 -0
  318. package/dist/typescript/commonjs/src/runtime/native/styles/functions/calc.d.ts +3 -0
  319. package/dist/typescript/commonjs/src/runtime/native/styles/functions/calc.d.ts.map +1 -0
  320. package/dist/typescript/commonjs/src/runtime/native/styles/{filters.d.ts → functions/filters.d.ts} +1 -1
  321. package/dist/typescript/commonjs/src/runtime/native/styles/functions/filters.d.ts.map +1 -0
  322. package/dist/typescript/commonjs/src/runtime/native/styles/functions/index.d.ts +8 -0
  323. package/dist/typescript/commonjs/src/runtime/native/styles/functions/index.d.ts.map +1 -0
  324. package/dist/typescript/commonjs/src/runtime/native/styles/functions/numeric-functions.d.ts +5 -0
  325. package/dist/typescript/commonjs/src/runtime/native/styles/functions/numeric-functions.d.ts.map +1 -0
  326. package/dist/typescript/commonjs/src/runtime/native/styles/{platform-functions.d.ts → functions/platform-functions.d.ts} +2 -2
  327. package/dist/typescript/commonjs/src/runtime/native/styles/functions/platform-functions.d.ts.map +1 -0
  328. package/dist/typescript/commonjs/src/runtime/native/styles/functions/string-functions.d.ts +3 -0
  329. package/dist/typescript/commonjs/src/runtime/native/styles/functions/string-functions.d.ts.map +1 -0
  330. package/dist/typescript/commonjs/src/runtime/native/styles/functions/transform-functions.d.ts +5 -0
  331. package/dist/typescript/commonjs/src/runtime/native/styles/functions/transform-functions.d.ts.map +1 -0
  332. package/dist/typescript/commonjs/src/runtime/native/styles/resolve.d.ts.map +1 -1
  333. package/dist/typescript/commonjs/src/runtime/native/styles/{shorthand.d.ts → shorthands/_handler.d.ts} +2 -2
  334. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/_handler.d.ts.map +1 -0
  335. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/animation.d.ts +4 -0
  336. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/animation.d.ts.map +1 -0
  337. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/border.d.ts +2 -0
  338. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/border.d.ts.map +1 -0
  339. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/box-shadow.d.ts +3 -0
  340. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/box-shadow.d.ts.map +1 -0
  341. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/index.d.ts +6 -0
  342. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/index.d.ts.map +1 -0
  343. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/text-shadow.d.ts +2 -0
  344. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/text-shadow.d.ts.map +1 -0
  345. package/dist/typescript/commonjs/src/runtime/native/styles/{transform.d.ts → shorthands/transform.d.ts} +1 -1
  346. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/transform.d.ts.map +1 -0
  347. package/dist/typescript/commonjs/src/runtime/native/styles/units.d.ts.map +1 -1
  348. package/dist/typescript/commonjs/src/runtime/native/styles/variables.d.ts.map +1 -1
  349. package/dist/typescript/commonjs/src/runtime/utils/objects.d.ts.map +1 -1
  350. package/dist/typescript/commonjs/src/runtime/utils/specificity.d.ts +1 -0
  351. package/dist/typescript/commonjs/src/runtime/utils/specificity.d.ts.map +1 -1
  352. package/dist/typescript/commonjs/src/runtime/web/api.d.ts +1 -1
  353. package/dist/typescript/commonjs/src/runtime/web/api.d.ts.map +1 -1
  354. package/dist/typescript/commonjs/src/style-collection/index.d.ts +14 -0
  355. package/dist/typescript/commonjs/src/style-collection/index.d.ts.map +1 -0
  356. package/dist/typescript/commonjs/src/style-collection/root.d.ts +11 -0
  357. package/dist/typescript/commonjs/src/style-collection/root.d.ts.map +1 -0
  358. package/dist/typescript/module/src/compiler/atRules.d.ts.map +1 -1
  359. package/dist/typescript/module/src/compiler/compiler.d.ts +9 -2
  360. package/dist/typescript/module/src/compiler/compiler.d.ts.map +1 -1
  361. package/dist/typescript/module/src/compiler/compiler.types.d.ts +16 -17
  362. package/dist/typescript/module/src/compiler/compiler.types.d.ts.map +1 -1
  363. package/dist/typescript/module/src/compiler/declarations.d.ts +18 -19
  364. package/dist/typescript/module/src/compiler/declarations.d.ts.map +1 -1
  365. package/dist/typescript/module/src/compiler/pseudo-elements.d.ts +4 -0
  366. package/dist/typescript/module/src/compiler/pseudo-elements.d.ts.map +1 -0
  367. package/dist/typescript/module/src/compiler/selector-builder.d.ts +24 -0
  368. package/dist/typescript/module/src/compiler/selector-builder.d.ts.map +1 -0
  369. package/dist/typescript/module/src/compiler/selectors.d.ts +3 -2
  370. package/dist/typescript/module/src/compiler/selectors.d.ts.map +1 -1
  371. package/dist/typescript/module/src/compiler/stylesheet.d.ts +23 -9
  372. package/dist/typescript/module/src/compiler/stylesheet.d.ts.map +1 -1
  373. package/dist/typescript/module/src/compiler/supports.d.ts +3 -0
  374. package/dist/typescript/module/src/compiler/supports.d.ts.map +1 -0
  375. package/dist/typescript/module/src/components/ActivityIndicator.d.ts +13 -0
  376. package/dist/typescript/module/src/components/ActivityIndicator.d.ts.map +1 -0
  377. package/dist/typescript/module/src/components/Button.d.ts +13 -0
  378. package/dist/typescript/module/src/components/Button.d.ts.map +1 -0
  379. package/dist/typescript/module/src/components/FlatList.d.ts +10 -0
  380. package/dist/typescript/module/src/components/FlatList.d.ts.map +1 -0
  381. package/dist/typescript/module/src/components/Image.d.ts +8 -0
  382. package/dist/typescript/module/src/components/Image.d.ts.map +1 -0
  383. package/dist/typescript/module/src/components/Switch.d.ts +8 -0
  384. package/dist/typescript/module/src/components/Switch.d.ts.map +1 -0
  385. package/dist/typescript/module/src/components/TextInput.d.ts +8 -0
  386. package/dist/typescript/module/src/components/TextInput.d.ts.map +1 -0
  387. package/dist/typescript/module/src/components/index.d.ts +6 -0
  388. package/dist/typescript/module/src/components/index.d.ts.map +1 -1
  389. package/dist/typescript/module/src/components/react-native-safe-area-context.d.ts +2 -0
  390. package/dist/typescript/module/src/components/react-native-safe-area-context.d.ts.map +1 -0
  391. package/dist/typescript/module/src/components/react-native-safe-area-context.native.d.ts +4 -0
  392. package/dist/typescript/module/src/components/react-native-safe-area-context.native.d.ts.map +1 -0
  393. package/dist/typescript/module/src/jest/index.d.ts +20 -3
  394. package/dist/typescript/module/src/jest/index.d.ts.map +1 -1
  395. package/dist/typescript/module/src/metro/index.d.ts.map +1 -1
  396. package/dist/typescript/module/src/metro/injection-code.d.ts +4 -7
  397. package/dist/typescript/module/src/metro/injection-code.d.ts.map +1 -1
  398. package/dist/typescript/module/src/metro/metro-transformer.d.ts +4 -1
  399. package/dist/typescript/module/src/metro/metro-transformer.d.ts.map +1 -1
  400. package/dist/typescript/module/src/metro/resolver.d.ts.map +1 -1
  401. package/dist/typescript/module/src/poison.pill.d.ts.map +1 -1
  402. package/dist/typescript/module/src/runtime/native/api.d.ts +3 -1
  403. package/dist/typescript/module/src/runtime/native/api.d.ts.map +1 -1
  404. package/dist/typescript/module/src/runtime/native/conditions/attributes.d.ts +5 -0
  405. package/dist/typescript/module/src/runtime/native/conditions/attributes.d.ts.map +1 -0
  406. package/dist/typescript/module/src/runtime/native/conditions/container-query.d.ts +3 -3
  407. package/dist/typescript/module/src/runtime/native/conditions/container-query.d.ts.map +1 -1
  408. package/dist/typescript/module/src/runtime/native/conditions/guards.d.ts +2 -2
  409. package/dist/typescript/module/src/runtime/native/conditions/guards.d.ts.map +1 -1
  410. package/dist/typescript/module/src/runtime/native/conditions/index.d.ts +2 -2
  411. package/dist/typescript/module/src/runtime/native/conditions/index.d.ts.map +1 -1
  412. package/dist/typescript/module/src/runtime/native/conditions/media-query.d.ts +2 -2
  413. package/dist/typescript/module/src/runtime/native/conditions/media-query.d.ts.map +1 -1
  414. package/dist/typescript/module/src/runtime/native/react/interaction.d.ts +2 -2
  415. package/dist/typescript/module/src/runtime/native/react/interaction.d.ts.map +1 -1
  416. package/dist/typescript/module/src/runtime/native/react/rules.d.ts +2 -2
  417. package/dist/typescript/module/src/runtime/native/react/rules.d.ts.map +1 -1
  418. package/dist/typescript/module/src/runtime/native/react/useNativeCss.d.ts +2 -1
  419. package/dist/typescript/module/src/runtime/native/react/useNativeCss.d.ts.map +1 -1
  420. package/dist/typescript/module/src/runtime/native/reactivity.d.ts +2 -10
  421. package/dist/typescript/module/src/runtime/native/reactivity.d.ts.map +1 -1
  422. package/dist/typescript/module/src/runtime/native/reanimated.d.ts +5 -0
  423. package/dist/typescript/module/src/runtime/native/reanimated.d.ts.map +1 -0
  424. package/dist/typescript/module/src/runtime/native/styles/calculate-props.d.ts +1 -1
  425. package/dist/typescript/module/src/runtime/native/styles/calculate-props.d.ts.map +1 -1
  426. package/dist/typescript/module/src/runtime/native/styles/defaults.d.ts.map +1 -1
  427. package/dist/typescript/module/src/runtime/native/styles/functions/animation-timing.d.ts +4 -0
  428. package/dist/typescript/module/src/runtime/native/styles/functions/animation-timing.d.ts.map +1 -0
  429. package/dist/typescript/module/src/runtime/native/styles/functions/calc.d.ts +3 -0
  430. package/dist/typescript/module/src/runtime/native/styles/functions/calc.d.ts.map +1 -0
  431. package/dist/typescript/module/src/runtime/native/styles/{filters.d.ts → functions/filters.d.ts} +1 -1
  432. package/dist/typescript/module/src/runtime/native/styles/functions/filters.d.ts.map +1 -0
  433. package/dist/typescript/module/src/runtime/native/styles/functions/index.d.ts +8 -0
  434. package/dist/typescript/module/src/runtime/native/styles/functions/index.d.ts.map +1 -0
  435. package/dist/typescript/module/src/runtime/native/styles/functions/numeric-functions.d.ts +5 -0
  436. package/dist/typescript/module/src/runtime/native/styles/functions/numeric-functions.d.ts.map +1 -0
  437. package/dist/typescript/module/src/runtime/native/styles/{platform-functions.d.ts → functions/platform-functions.d.ts} +2 -2
  438. package/dist/typescript/module/src/runtime/native/styles/functions/platform-functions.d.ts.map +1 -0
  439. package/dist/typescript/module/src/runtime/native/styles/functions/string-functions.d.ts +3 -0
  440. package/dist/typescript/module/src/runtime/native/styles/functions/string-functions.d.ts.map +1 -0
  441. package/dist/typescript/module/src/runtime/native/styles/functions/transform-functions.d.ts +5 -0
  442. package/dist/typescript/module/src/runtime/native/styles/functions/transform-functions.d.ts.map +1 -0
  443. package/dist/typescript/module/src/runtime/native/styles/resolve.d.ts.map +1 -1
  444. package/dist/typescript/module/src/runtime/native/styles/{shorthand.d.ts → shorthands/_handler.d.ts} +2 -2
  445. package/dist/typescript/module/src/runtime/native/styles/shorthands/_handler.d.ts.map +1 -0
  446. package/dist/typescript/module/src/runtime/native/styles/shorthands/animation.d.ts +4 -0
  447. package/dist/typescript/module/src/runtime/native/styles/shorthands/animation.d.ts.map +1 -0
  448. package/dist/typescript/module/src/runtime/native/styles/shorthands/border.d.ts +2 -0
  449. package/dist/typescript/module/src/runtime/native/styles/shorthands/border.d.ts.map +1 -0
  450. package/dist/typescript/module/src/runtime/native/styles/shorthands/box-shadow.d.ts +3 -0
  451. package/dist/typescript/module/src/runtime/native/styles/shorthands/box-shadow.d.ts.map +1 -0
  452. package/dist/typescript/module/src/runtime/native/styles/shorthands/index.d.ts +6 -0
  453. package/dist/typescript/module/src/runtime/native/styles/shorthands/index.d.ts.map +1 -0
  454. package/dist/typescript/module/src/runtime/native/styles/shorthands/text-shadow.d.ts +2 -0
  455. package/dist/typescript/module/src/runtime/native/styles/shorthands/text-shadow.d.ts.map +1 -0
  456. package/dist/typescript/module/src/runtime/native/styles/{transform.d.ts → shorthands/transform.d.ts} +1 -1
  457. package/dist/typescript/module/src/runtime/native/styles/shorthands/transform.d.ts.map +1 -0
  458. package/dist/typescript/module/src/runtime/native/styles/units.d.ts.map +1 -1
  459. package/dist/typescript/module/src/runtime/native/styles/variables.d.ts.map +1 -1
  460. package/dist/typescript/module/src/runtime/utils/objects.d.ts.map +1 -1
  461. package/dist/typescript/module/src/runtime/utils/specificity.d.ts +1 -0
  462. package/dist/typescript/module/src/runtime/utils/specificity.d.ts.map +1 -1
  463. package/dist/typescript/module/src/runtime/web/api.d.ts +1 -1
  464. package/dist/typescript/module/src/runtime/web/api.d.ts.map +1 -1
  465. package/dist/typescript/module/src/style-collection/index.d.ts +14 -0
  466. package/dist/typescript/module/src/style-collection/index.d.ts.map +1 -0
  467. package/dist/typescript/module/src/style-collection/root.d.ts +11 -0
  468. package/dist/typescript/module/src/style-collection/root.d.ts.map +1 -0
  469. package/package.json +32 -16
  470. package/src/compiler/atRules.ts +17 -3
  471. package/src/compiler/compiler.ts +40 -33
  472. package/src/compiler/compiler.types.ts +18 -19
  473. package/src/compiler/declarations.ts +447 -192
  474. package/src/compiler/inheritance.test.ts +13 -13
  475. package/src/compiler/keyframes.ts +1 -1
  476. package/src/compiler/pseudo-elements.ts +54 -0
  477. package/src/compiler/selector-builder.ts +586 -0
  478. package/src/compiler/selectors.ts +20 -6
  479. package/src/compiler/stylesheet.ts +188 -53
  480. package/src/compiler/supports.ts +26 -0
  481. package/src/components/ActivityIndicator.tsx +27 -0
  482. package/src/components/Button.tsx +22 -0
  483. package/src/components/FlatList.tsx +21 -0
  484. package/src/components/Image.tsx +17 -0
  485. package/src/components/Switch.tsx +17 -0
  486. package/src/components/TextInput.tsx +17 -0
  487. package/src/components/index.tsx +6 -0
  488. package/src/components/react-native-safe-area-context.native.tsx +40 -0
  489. package/src/components/react-native-safe-area-context.tsx +1 -0
  490. package/src/jest/index.ts +35 -10
  491. package/src/metro/index.ts +12 -7
  492. package/src/metro/injection-code.ts +6 -10
  493. package/src/metro/metro-transformer.ts +27 -10
  494. package/src/metro/resolver.ts +8 -0
  495. package/src/poison.pill.ts +15 -11
  496. package/src/runtime/native/api.ts +3 -1
  497. package/src/runtime/native/conditions/attributes.ts +52 -0
  498. package/src/runtime/native/conditions/container-query.ts +27 -22
  499. package/src/runtime/native/conditions/guards.ts +1 -2
  500. package/src/runtime/native/conditions/index.ts +14 -66
  501. package/src/runtime/native/conditions/media-query.ts +29 -25
  502. package/src/runtime/native/react/interaction.ts +12 -12
  503. package/src/runtime/native/react/rules.ts +34 -24
  504. package/src/runtime/native/react/useNativeCss.ts +4 -1
  505. package/src/runtime/native/reactivity.ts +14 -21
  506. package/src/runtime/native/reanimated.ts +22 -0
  507. package/src/runtime/native/styles/calculate-props.ts +71 -39
  508. package/src/runtime/native/styles/defaults.ts +1 -0
  509. package/src/runtime/native/styles/functions/animation-timing.ts +44 -0
  510. package/src/runtime/native/styles/functions/calc.ts +121 -0
  511. package/src/runtime/native/styles/{filters.ts → functions/filters.ts} +3 -3
  512. package/src/runtime/native/styles/functions/index.ts +7 -0
  513. package/src/runtime/native/styles/functions/numeric-functions.ts +38 -0
  514. package/src/runtime/native/styles/{platform-functions.ts → functions/platform-functions.ts} +2 -2
  515. package/src/runtime/native/styles/functions/string-functions.ts +22 -0
  516. package/src/runtime/native/styles/functions/transform-functions.ts +84 -0
  517. package/src/runtime/native/styles/index.ts +12 -12
  518. package/src/runtime/native/styles/resolve.ts +20 -63
  519. package/src/runtime/native/styles/{shorthand.ts → shorthands/_handler.ts} +5 -5
  520. package/src/runtime/native/styles/{animation.ts → shorthands/animation.ts} +4 -62
  521. package/src/runtime/native/styles/{border.ts → shorthands/border.ts} +1 -1
  522. package/src/runtime/native/styles/shorthands/box-shadow.ts +74 -0
  523. package/src/runtime/native/styles/shorthands/index.ts +5 -0
  524. package/src/runtime/native/styles/{text-shadow.ts → shorthands/text-shadow.ts} +1 -1
  525. package/src/runtime/native/styles/{transform.ts → shorthands/transform.ts} +4 -2
  526. package/src/runtime/native/styles/units.ts +8 -4
  527. package/src/runtime/native/styles/variables.ts +5 -5
  528. package/src/runtime/utils/objects.ts +16 -4
  529. package/src/runtime/utils/specificity.ts +1 -0
  530. package/src/runtime/web/api.ts +1 -1
  531. package/src/style-collection/index.ts +142 -0
  532. package/src/style-collection/root.ts +35 -0
  533. package/dist/commonjs/compiler/attributes.test.js +0 -20
  534. package/dist/commonjs/compiler/attributes.test.js.map +0 -1
  535. package/dist/commonjs/doctor/index.js +0 -6
  536. package/dist/commonjs/doctor/index.js.map +0 -1
  537. package/dist/commonjs/runtime/native/injection.js +0 -98
  538. package/dist/commonjs/runtime/native/injection.js.map +0 -1
  539. package/dist/commonjs/runtime/native/styles/animation.js.map +0 -1
  540. package/dist/commonjs/runtime/native/styles/border.js.map +0 -1
  541. package/dist/commonjs/runtime/native/styles/box-shadow.js +0 -40
  542. package/dist/commonjs/runtime/native/styles/box-shadow.js.map +0 -1
  543. package/dist/commonjs/runtime/native/styles/calc.js +0 -85
  544. package/dist/commonjs/runtime/native/styles/calc.js.map +0 -1
  545. package/dist/commonjs/runtime/native/styles/filters.js.map +0 -1
  546. package/dist/commonjs/runtime/native/styles/platform-functions.js.map +0 -1
  547. package/dist/commonjs/runtime/native/styles/shorthand.js.map +0 -1
  548. package/dist/commonjs/runtime/native/styles/text-shadow.js.map +0 -1
  549. package/dist/commonjs/runtime/native/styles/transform.js.map +0 -1
  550. package/dist/module/compiler/attributes.test.js +0 -20
  551. package/dist/module/compiler/attributes.test.js.map +0 -1
  552. package/dist/module/doctor/index.js +0 -4
  553. package/dist/module/doctor/index.js.map +0 -1
  554. package/dist/module/runtime/native/injection.js +0 -93
  555. package/dist/module/runtime/native/injection.js.map +0 -1
  556. package/dist/module/runtime/native/styles/animation.js.map +0 -1
  557. package/dist/module/runtime/native/styles/border.js.map +0 -1
  558. package/dist/module/runtime/native/styles/box-shadow.js.map +0 -1
  559. package/dist/module/runtime/native/styles/calc.js +0 -79
  560. package/dist/module/runtime/native/styles/calc.js.map +0 -1
  561. package/dist/module/runtime/native/styles/filters.js.map +0 -1
  562. package/dist/module/runtime/native/styles/platform-functions.js.map +0 -1
  563. package/dist/module/runtime/native/styles/shorthand.js.map +0 -1
  564. package/dist/module/runtime/native/styles/text-shadow.js.map +0 -1
  565. package/dist/module/runtime/native/styles/transform.js.map +0 -1
  566. package/dist/typescript/commonjs/src/compiler/attributes.test.d.ts +0 -2
  567. package/dist/typescript/commonjs/src/compiler/attributes.test.d.ts.map +0 -1
  568. package/dist/typescript/commonjs/src/doctor/index.d.ts +0 -2
  569. package/dist/typescript/commonjs/src/doctor/index.d.ts.map +0 -1
  570. package/dist/typescript/commonjs/src/runtime/native/injection.d.ts +0 -16
  571. package/dist/typescript/commonjs/src/runtime/native/injection.d.ts.map +0 -1
  572. package/dist/typescript/commonjs/src/runtime/native/styles/animation.d.ts +0 -9
  573. package/dist/typescript/commonjs/src/runtime/native/styles/animation.d.ts.map +0 -1
  574. package/dist/typescript/commonjs/src/runtime/native/styles/border.d.ts +0 -2
  575. package/dist/typescript/commonjs/src/runtime/native/styles/border.d.ts.map +0 -1
  576. package/dist/typescript/commonjs/src/runtime/native/styles/box-shadow.d.ts +0 -3
  577. package/dist/typescript/commonjs/src/runtime/native/styles/box-shadow.d.ts.map +0 -1
  578. package/dist/typescript/commonjs/src/runtime/native/styles/calc.d.ts +0 -3
  579. package/dist/typescript/commonjs/src/runtime/native/styles/calc.d.ts.map +0 -1
  580. package/dist/typescript/commonjs/src/runtime/native/styles/filters.d.ts.map +0 -1
  581. package/dist/typescript/commonjs/src/runtime/native/styles/platform-functions.d.ts.map +0 -1
  582. package/dist/typescript/commonjs/src/runtime/native/styles/shorthand.d.ts.map +0 -1
  583. package/dist/typescript/commonjs/src/runtime/native/styles/text-shadow.d.ts +0 -2
  584. package/dist/typescript/commonjs/src/runtime/native/styles/text-shadow.d.ts.map +0 -1
  585. package/dist/typescript/commonjs/src/runtime/native/styles/transform.d.ts.map +0 -1
  586. package/dist/typescript/module/src/compiler/attributes.test.d.ts +0 -2
  587. package/dist/typescript/module/src/compiler/attributes.test.d.ts.map +0 -1
  588. package/dist/typescript/module/src/doctor/index.d.ts +0 -2
  589. package/dist/typescript/module/src/doctor/index.d.ts.map +0 -1
  590. package/dist/typescript/module/src/runtime/native/injection.d.ts +0 -16
  591. package/dist/typescript/module/src/runtime/native/injection.d.ts.map +0 -1
  592. package/dist/typescript/module/src/runtime/native/styles/animation.d.ts +0 -9
  593. package/dist/typescript/module/src/runtime/native/styles/animation.d.ts.map +0 -1
  594. package/dist/typescript/module/src/runtime/native/styles/border.d.ts +0 -2
  595. package/dist/typescript/module/src/runtime/native/styles/border.d.ts.map +0 -1
  596. package/dist/typescript/module/src/runtime/native/styles/box-shadow.d.ts +0 -3
  597. package/dist/typescript/module/src/runtime/native/styles/box-shadow.d.ts.map +0 -1
  598. package/dist/typescript/module/src/runtime/native/styles/calc.d.ts +0 -3
  599. package/dist/typescript/module/src/runtime/native/styles/calc.d.ts.map +0 -1
  600. package/dist/typescript/module/src/runtime/native/styles/filters.d.ts.map +0 -1
  601. package/dist/typescript/module/src/runtime/native/styles/platform-functions.d.ts.map +0 -1
  602. package/dist/typescript/module/src/runtime/native/styles/shorthand.d.ts.map +0 -1
  603. package/dist/typescript/module/src/runtime/native/styles/text-shadow.d.ts +0 -2
  604. package/dist/typescript/module/src/runtime/native/styles/text-shadow.d.ts.map +0 -1
  605. package/dist/typescript/module/src/runtime/native/styles/transform.d.ts.map +0 -1
  606. package/src/compiler/attributes.test.ts +0 -28
  607. package/src/doctor/index.ts +0 -1
  608. package/src/runtime/native/injection.ts +0 -131
  609. package/src/runtime/native/styles/box-shadow.ts +0 -54
  610. package/src/runtime/native/styles/calc.ts +0 -97
@@ -0,0 +1,7 @@
1
+ export * from "./animation-timing";
2
+ export * from "./calc";
3
+ export * from "./filters";
4
+ export * from "./numeric-functions";
5
+ export * from "./platform-functions";
6
+ export * from "./string-functions";
7
+ export * from "./transform-functions";
@@ -0,0 +1,38 @@
1
+ import type { StyleFunctionResolver } from "../resolve";
2
+
3
+ export const max: StyleFunctionResolver = (resolveValue, value) => {
4
+ const args = resolveValue(value[2]);
5
+
6
+ if (!Array.isArray(args) || args.some((arg) => typeof arg !== "number")) {
7
+ return;
8
+ }
9
+
10
+ return Math.max(...(args as number[]));
11
+ };
12
+
13
+ export const min: StyleFunctionResolver = (resolveValue, value) => {
14
+ const args = resolveValue(value[2]);
15
+
16
+ if (!Array.isArray(args) || args.some((arg) => typeof arg !== "number")) {
17
+ return;
18
+ }
19
+
20
+ return Math.min(...(args as number[]));
21
+ };
22
+
23
+ export const clamp: StyleFunctionResolver = (resolveValue, value) => {
24
+ const args = resolveValue(value[2]);
25
+
26
+ const [clampValue, min, max] = args as number[];
27
+
28
+ if (
29
+ !Array.isArray(args) ||
30
+ typeof clampValue !== "number" ||
31
+ typeof min !== "number" ||
32
+ typeof max !== "number"
33
+ ) {
34
+ return;
35
+ }
36
+
37
+ return Math.min(Math.max(clampValue, min), max);
38
+ };
@@ -1,6 +1,6 @@
1
1
  import { PixelRatio, PlatformColor, StyleSheet } from "react-native";
2
2
 
3
- import type { StyleFunctionResolver } from "./resolve";
3
+ import type { StyleFunctionResolver } from "../resolve";
4
4
 
5
5
  export const platformColor: StyleFunctionResolver = (resolveValue, value) => {
6
6
  const color: unknown = resolveValue(value[2]);
@@ -25,7 +25,7 @@ export const fontScale: StyleFunctionResolver = () => {
25
25
  return PixelRatio.getFontScale();
26
26
  };
27
27
 
28
- export const pixelSizeForLayoutSize: StyleFunctionResolver = (
28
+ export const getPixelSizeForLayoutSize: StyleFunctionResolver = (
29
29
  resolveValue,
30
30
  value,
31
31
  ) => {
@@ -0,0 +1,22 @@
1
+ import type { StyleFunctionResolver } from "../resolve";
2
+
3
+ export const join: StyleFunctionResolver = (resolveValue, value) => {
4
+ const args = resolveValue(value[2]);
5
+
6
+ if (!Array.isArray(args)) {
7
+ return args;
8
+ }
9
+
10
+ const array: unknown = args[0];
11
+ const separator: unknown = args[1] ?? ",";
12
+
13
+ if (!Array.isArray(array)) {
14
+ return array;
15
+ }
16
+
17
+ if (!separator || typeof separator !== "string") {
18
+ return array.join();
19
+ }
20
+
21
+ return array.join(separator);
22
+ };
@@ -0,0 +1,84 @@
1
+ import { isStyleDescriptorArray } from "../../../utils";
2
+ import type { StyleFunctionResolver } from "../resolve";
3
+
4
+ export const scale: StyleFunctionResolver = (resolveValue, descriptor) => {
5
+ const args = descriptor[2];
6
+
7
+ if (!isStyleDescriptorArray(args)) {
8
+ return { scale: resolveValue(args) };
9
+ }
10
+
11
+ const x = resolveValue(args[0]);
12
+ const y = resolveValue(args[1]);
13
+
14
+ const isXValid = typeof x === "string" || typeof x === "number";
15
+ const isYValid = typeof y === "string" || typeof y === "number";
16
+
17
+ if (isXValid && isYValid) {
18
+ return x === y ? { scale: x } : [{ scaleX: x }, { scaleY: y }];
19
+ } else if (isXValid) {
20
+ return { scaleX: x };
21
+ } else if (isYValid) {
22
+ return { scaleY: y };
23
+ }
24
+
25
+ return;
26
+ };
27
+
28
+ export const rotate: StyleFunctionResolver = (resolveValue, descriptor) => {
29
+ const args = descriptor[2];
30
+
31
+ if (!isStyleDescriptorArray(args)) {
32
+ return { rotate: resolveValue(args) };
33
+ }
34
+
35
+ const x = resolveValue(args[0]);
36
+ const y = resolveValue(args[1]);
37
+ const z = resolveValue(args[2]);
38
+
39
+ const isXValid = typeof x === "string" || typeof x === "number";
40
+ const isYValid = typeof y === "string" || typeof y === "number";
41
+ const isZValid = typeof z === "string" || typeof z === "number";
42
+
43
+ if (isXValid && isYValid && isZValid) {
44
+ return [{ rotateX: x }, { rotateY: y }, { rotateZ: z }];
45
+ } else if (isXValid && isYValid) {
46
+ return [{ rotateX: x }, { rotateY: y }];
47
+ } else if (isXValid && isZValid) {
48
+ return [{ rotateX: x }, { rotateZ: z }];
49
+ } else if (isYValid && isZValid) {
50
+ return [{ rotateY: y }, { rotateZ: z }];
51
+ } else if (isXValid) {
52
+ return { rotateX: x };
53
+ } else if (isYValid) {
54
+ return { rotateY: y };
55
+ } else if (isZValid) {
56
+ return { rotateZ: z };
57
+ }
58
+
59
+ return;
60
+ };
61
+
62
+ export const translate: StyleFunctionResolver = (resolveValue, descriptor) => {
63
+ const args = descriptor[2];
64
+
65
+ if (!isStyleDescriptorArray(args)) {
66
+ return;
67
+ }
68
+
69
+ const x = resolveValue(args[0]);
70
+ const y = resolveValue(args[1]);
71
+
72
+ const isXValid = typeof x === "string" || typeof x === "number";
73
+ const isYValid = typeof y === "string" || typeof y === "number";
74
+
75
+ if (isXValid && isYValid) {
76
+ return [{ translateX: x }, { translateY: y }];
77
+ } else if (isXValid) {
78
+ return { translateX: x };
79
+ } else if (isYValid) {
80
+ return { translateY: y };
81
+ }
82
+
83
+ return;
84
+ };
@@ -55,57 +55,57 @@ export function getStyledProps(
55
55
  }
56
56
 
57
57
  // Apply the handlers
58
- if (hoverFamily.has(state.ruleEffect)) {
58
+ if (hoverFamily.has(state.ruleEffectGetter)) {
59
59
  result ??= {};
60
60
  result.onHoverIn = getInteractionHandler(
61
- state.ruleEffect,
61
+ state.ruleEffectGetter,
62
62
  "onHoverIn",
63
63
  inline?.onHoverIn,
64
64
  );
65
65
  result.onHoverOut = getInteractionHandler(
66
- state.ruleEffect,
66
+ state.ruleEffectGetter,
67
67
  "onHoverOut",
68
68
  inline?.onHoverOut,
69
69
  );
70
70
  }
71
71
 
72
- if (activeFamily.has(state.ruleEffect)) {
72
+ if (activeFamily.has(state.ruleEffectGetter)) {
73
73
  result ??= {};
74
74
  result.onPress = getInteractionHandler(
75
- state.ruleEffect,
75
+ state.ruleEffectGetter,
76
76
  "onPress",
77
77
  inline?.onPress,
78
78
  );
79
79
  result.onPressIn = getInteractionHandler(
80
- state.ruleEffect,
80
+ state.ruleEffectGetter,
81
81
  "onPressIn",
82
82
  inline?.onPressIn,
83
83
  );
84
84
  result.onPressOut = getInteractionHandler(
85
- state.ruleEffect,
85
+ state.ruleEffectGetter,
86
86
  "onPressOut",
87
87
  inline?.onPressOut,
88
88
  );
89
89
  }
90
90
 
91
- if (focusFamily.has(state.ruleEffect)) {
91
+ if (focusFamily.has(state.ruleEffectGetter)) {
92
92
  result ??= {};
93
93
  result.onBlur = getInteractionHandler(
94
- state.ruleEffect,
94
+ state.ruleEffectGetter,
95
95
  "onBlur",
96
96
  inline?.onBlur,
97
97
  );
98
98
  result.onFocus = getInteractionHandler(
99
- state.ruleEffect,
99
+ state.ruleEffectGetter,
100
100
  "onFocus",
101
101
  inline?.onFocus,
102
102
  );
103
103
  }
104
104
 
105
- if (containerLayoutFamily.has(state.ruleEffect)) {
105
+ if (containerLayoutFamily.has(state.ruleEffectGetter)) {
106
106
  result ??= {};
107
107
  result.onLayout = getInteractionHandler(
108
- state.ruleEffect,
108
+ state.ruleEffectGetter,
109
109
  "onLayout",
110
110
  inline?.onLayout,
111
111
  );
@@ -7,34 +7,10 @@ import type {
7
7
  } from "../../../compiler";
8
8
  import type { RenderGuard } from "../conditions/guards";
9
9
  import { type Getter, type VariableContextValue } from "../reactivity";
10
- import { animation, timingFunctionResolver } from "./animation";
11
- import { border } from "./border";
12
- import { boxShadow } from "./box-shadow";
13
- import { calc } from "./calc";
14
10
  import type { calculateProps } from "./calculate-props";
15
11
  import { transformKeys } from "./defaults";
16
- import {
17
- blur,
18
- brightness,
19
- contrast,
20
- dropShadow,
21
- grayscale,
22
- hueRotate,
23
- invert,
24
- opacity,
25
- saturate,
26
- sepia,
27
- } from "./filters";
28
- import {
29
- fontScale,
30
- hairlineWidth,
31
- pixelRatio,
32
- pixelSizeForLayoutSize,
33
- platformColor,
34
- roundToNearestPixel,
35
- } from "./platform-functions";
36
- import { textShadow } from "./text-shadow";
37
- import { transform } from "./transform";
12
+ import * as functions from "./functions";
13
+ import * as shorthands from "./shorthands";
38
14
  import { em, rem, vh, vw } from "./units";
39
15
  import { varResolver } from "./variables";
40
16
 
@@ -57,34 +33,12 @@ export type StyleResolver = (
57
33
  options: ResolveValueOptions,
58
34
  ) => unknown;
59
35
 
60
- const functions: Record<string, StyleFunctionResolver> = {
61
- "@animation": animation,
62
- "@border": border,
63
- "@boxShadow": boxShadow,
64
- "@textShadow": textShadow,
65
- "@transform": transform,
66
- "animationName": animation,
67
- "cubic-bezier": timingFunctionResolver,
68
- "steps": timingFunctionResolver,
69
- "hue-rotate": hueRotate,
70
- "drop-shadow": dropShadow,
71
- blur,
72
- brightness,
73
- calc,
74
- contrast,
36
+ const functionResolvers = {
37
+ ...shorthands,
38
+ ...functions,
39
+ animationName: shorthands.animation,
75
40
  em,
76
- fontScale,
77
- grayscale,
78
- hairlineWidth,
79
- invert,
80
- opacity,
81
- pixelRatio,
82
- pixelSizeForLayoutSize,
83
- platformColor,
84
41
  rem,
85
- roundToNearestPixel,
86
- saturate,
87
- sepia,
88
42
  vh,
89
43
  vw,
90
44
  };
@@ -116,10 +70,16 @@ export function resolveValue(
116
70
  case "number":
117
71
  case "boolean":
118
72
  return value;
119
- case "string":
120
- return value.endsWith("px") // Inline vars() might set a value with a px suffix
121
- ? parseInt(value.slice(0, -2), 10)
122
- : value;
73
+ case "string": {
74
+ if (value === "unset") {
75
+ return null;
76
+ } else if (value.endsWith("px")) {
77
+ // Inline vars() might set a value with a px suffix
78
+ return parseInt(value.slice(0, -2), 10);
79
+ } else {
80
+ return value;
81
+ }
82
+ }
123
83
  case "object": {
124
84
  if (!Array.isArray(value)) {
125
85
  return value;
@@ -145,8 +105,8 @@ export function resolveValue(
145
105
 
146
106
  if (name === "var") {
147
107
  return varResolver(simpleResolve, value, get, options);
148
- } else if (name in functions) {
149
- const fn = functions[name];
108
+ } else if (name in functionResolvers) {
109
+ const fn = functionResolvers[name as keyof typeof functionResolvers];
150
110
 
151
111
  if (typeof fn !== "function") {
152
112
  throw new Error(`Unknown function: ${name}`);
@@ -160,11 +120,7 @@ export function resolveValue(
160
120
  ) as StyleDescriptor;
161
121
  } else if (transformKeys.has(name)) {
162
122
  // translate, rotate, scale, etc.
163
- const args = value[2];
164
- return simpleResolve(args, castToArray);
165
- } else if (transformKeys.has(name.slice(1))) {
166
- // @translate, @rotate, @scale, etc.
167
- return { [name.slice(1)]: simpleResolve(value[2], castToArray) };
123
+ return { [name]: simpleResolve(value[2], castToArray) };
168
124
  } else {
169
125
  let args = simpleResolve(value[2], castToArray);
170
126
 
@@ -178,6 +134,7 @@ export function resolveValue(
178
134
  }
179
135
  return arg;
180
136
  })
137
+ .filter((value) => value !== "/")
181
138
  .join(", ");
182
139
 
183
140
  if (name === "radial-gradient") {
@@ -1,9 +1,9 @@
1
1
  /* eslint-disable */
2
- import { setDeepPath } from "../../utils/objects";
3
- import { isStyleDescriptorArray } from "../../utils/style-value";
4
- import { ShortHandSymbol } from "./constants";
5
- import { defaultValues } from "./defaults";
6
- import type { StyleResolver } from "./resolve";
2
+ import { setDeepPath } from "../../../utils/objects";
3
+ import { isStyleDescriptorArray } from "../../../utils/style-value";
4
+ import { ShortHandSymbol } from "../constants";
5
+ import { defaultValues } from "../defaults";
6
+ import type { StyleResolver } from "../resolve";
7
7
 
8
8
  type ShorthandType =
9
9
  | "string"
@@ -1,11 +1,9 @@
1
1
  /* eslint-disable */
2
- import type { ComponentType } from "react";
2
+ import { StyleCollection } from "react-native-css/style-collection";
3
3
 
4
- import { applyShorthand } from "../../utils";
5
- import { StyleCollection } from "../injection";
6
- import { weakFamily } from "../reactivity";
7
- import type { StyleFunctionResolver } from "./resolve";
8
- import { shorthandHandler } from "./shorthand";
4
+ import { applyShorthand } from "../../../utils";
5
+ import type { StyleFunctionResolver } from "../resolve";
6
+ import { shorthandHandler } from "./_handler";
9
7
 
10
8
  const name = ["animationName", "string", "none"] as const;
11
9
  const delay = ["animationDelay", "number", 0] as const;
@@ -61,22 +59,6 @@ export const animationShorthand = shorthandHandler(
61
59
  "tuples",
62
60
  );
63
61
 
64
- export const animatedComponentFamily = weakFamily(
65
- (component: ComponentType) => {
66
- if (
67
- "displayName" in component &&
68
- component.displayName?.startsWith("Animated.")
69
- ) {
70
- return component;
71
- }
72
-
73
- const createAnimatedComponent =
74
- require("react-native-reanimated").createAnimatedComponent;
75
-
76
- return createAnimatedComponent(component);
77
- },
78
- );
79
-
80
62
  export const animation: StyleFunctionResolver = (
81
63
  resolveValue,
82
64
  value,
@@ -139,43 +121,3 @@ export const animation: StyleFunctionResolver = (
139
121
 
140
122
  return applyShorthand(animationShortHandTuples);
141
123
  };
142
-
143
- const advancedTimingFunctions: Record<
144
- string,
145
- () => (...args: any[]) => unknown
146
- > = {
147
- "cubic-bezier": () => {
148
- return (
149
- require("react-native-reanimated") as typeof import("react-native-reanimated")
150
- ).cubicBezier;
151
- },
152
- "steps": () => {
153
- return (
154
- require("react-native-reanimated") as typeof import("react-native-reanimated")
155
- ).steps;
156
- },
157
- };
158
-
159
- export const timingFunctionResolver: StyleFunctionResolver = (
160
- resolveValue,
161
- value,
162
- ) => {
163
- const name = value[1];
164
- const resolver = advancedTimingFunctions[name];
165
-
166
- if (!resolver) {
167
- return;
168
- }
169
-
170
- const args = resolveValue(value[2]);
171
-
172
- if (!Array.isArray(args)) {
173
- return;
174
- }
175
-
176
- const fn = resolver();
177
-
178
- const result = fn(...args);
179
-
180
- return result;
181
- };
@@ -1,4 +1,4 @@
1
- import { shorthandHandler } from "./shorthand";
1
+ import { shorthandHandler } from "./_handler";
2
2
 
3
3
  const width = ["borderWidth", "number"] as const;
4
4
  const style = ["borderStyle", "string"] as const;
@@ -0,0 +1,74 @@
1
+ import { isStyleDescriptorArray } from "../../../utils";
2
+ import type { StyleFunctionResolver } from "../resolve";
3
+ import { shorthandHandler } from "./_handler";
4
+
5
+ const color = ["color", "string"] as const;
6
+ const offsetX = ["offsetX", "number"] as const;
7
+ const offsetY = ["offsetY", "number"] as const;
8
+ const blurRadius = ["blurRadius", "number"] as const;
9
+ const spreadDistance = ["spreadDistance", "number"] as const;
10
+ // const inset = ["inset", "string"] as const;
11
+
12
+ const handler = shorthandHandler(
13
+ [
14
+ [offsetX, offsetY, blurRadius, spreadDistance, color],
15
+ [color, offsetX, offsetY],
16
+ [color, offsetX, offsetY, blurRadius],
17
+ [color, offsetX, offsetY, blurRadius, spreadDistance],
18
+ [offsetX, offsetY, color],
19
+ [offsetX, offsetY, blurRadius, color],
20
+ ],
21
+ [],
22
+ "object",
23
+ );
24
+
25
+ export const boxShadow: StyleFunctionResolver = (
26
+ resolveValue,
27
+ func,
28
+ get,
29
+ options,
30
+ ) => {
31
+ const args = resolveValue(func[2]);
32
+
33
+ if (!isStyleDescriptorArray(args)) {
34
+ return args;
35
+ } else {
36
+ return args
37
+ .flatMap((shadows) => {
38
+ if (shadows === undefined) {
39
+ return [];
40
+ } else if (isStyleDescriptorArray(shadows)) {
41
+ if (shadows.length === 0) {
42
+ return [];
43
+ } else if (Array.isArray(shadows[0])) {
44
+ return shadows
45
+ .map((shadow) => {
46
+ return omitTransparentShadows(
47
+ handler(resolveValue, shadow, get, options),
48
+ );
49
+ })
50
+ .filter((v) => v !== undefined);
51
+ } else {
52
+ return omitTransparentShadows(
53
+ handler(resolveValue, shadows, get, options),
54
+ );
55
+ }
56
+ } else {
57
+ return omitTransparentShadows(
58
+ handler(resolveValue, shadows, get, options),
59
+ );
60
+ }
61
+ })
62
+ .filter((v) => v !== undefined);
63
+ }
64
+ };
65
+
66
+ function omitTransparentShadows(style: unknown) {
67
+ if (typeof style === "object" && style && "color" in style) {
68
+ if (style.color === "#0000" || style.color === "transparent") {
69
+ return;
70
+ }
71
+ }
72
+
73
+ return style;
74
+ }
@@ -0,0 +1,5 @@
1
+ export * from "./animation";
2
+ export * from "./border";
3
+ export * from "./box-shadow";
4
+ export * from "./text-shadow";
5
+ export * from "./transform";
@@ -1,4 +1,4 @@
1
- import { shorthandHandler } from "./shorthand";
1
+ import { shorthandHandler } from "./_handler";
2
2
 
3
3
  const width = [["textShadowOffset", "width"], "number"] as const;
4
4
  const height = [["textShadowOffset", "height"], "number"] as const;
@@ -1,4 +1,4 @@
1
- import type { StyleFunctionResolver } from "./resolve";
1
+ import type { StyleFunctionResolver } from "../resolve";
2
2
 
3
3
  /**
4
4
  * Handle the unparsable transform property by converting its values into StyleDeclarations
@@ -11,7 +11,9 @@ export const transform: StyleFunctionResolver = (
11
11
  const transforms = resolveValue(transformDescriptor[2]);
12
12
 
13
13
  if (Array.isArray(transforms)) {
14
- return transforms.filter((transform) => transform !== undefined) as unknown;
14
+ return transforms.filter(
15
+ (transform) => transform !== undefined && transform !== "initial",
16
+ ) as unknown;
15
17
  } else if (transforms) {
16
18
  // If it's a single transform, wrap it in an array
17
19
  return [transforms];
@@ -2,17 +2,21 @@
2
2
  import { rem as remObs, vh as vhObs, vw as vwObs } from "../reactivity";
3
3
  import type { StyleFunctionResolver } from "./resolve";
4
4
 
5
- export const em: StyleFunctionResolver = (resolve, func) => {
5
+ export const em: StyleFunctionResolver = (resolve, func, get) => {
6
6
  let value = func[2];
7
7
 
8
- if (!value) {
8
+ if (typeof value !== "number") {
9
9
  return;
10
10
  }
11
11
 
12
- const emValue = resolve([{}, "var", ["__rn-css-em"]]);
12
+ let emValue = resolve([{}, "var", ["__rn-css-em"]]);
13
13
 
14
14
  if (typeof emValue !== "number") {
15
- return undefined;
15
+ emValue = get(remObs);
16
+ }
17
+
18
+ if (typeof emValue !== "number") {
19
+ return;
16
20
  }
17
21
 
18
22
  return round(Number(value) * emValue);
@@ -1,11 +1,11 @@
1
- import type { StyleDescriptor, StyleFunction } from "../../../compiler";
2
- import { isStyleDescriptorArray } from "../../utils";
3
1
  import {
4
2
  rootVariables,
5
3
  universalVariables,
6
- VAR_SYMBOL,
7
- type Getter,
8
- } from "../reactivity";
4
+ } from "react-native-css/style-collection";
5
+
6
+ import type { StyleDescriptor, StyleFunction } from "../../../compiler";
7
+ import { isStyleDescriptorArray } from "../../utils";
8
+ import { VAR_SYMBOL, type Getter } from "../reactivity";
9
9
  import type { ResolveValueOptions, SimpleResolveValue } from "./resolve";
10
10
 
11
11
  export function varResolver(
@@ -23,6 +23,10 @@ export function getDeepPath(source: any, paths: string | string[] | false) {
23
23
  }
24
24
 
25
25
  return target;
26
+ } else if (transformKeys.has(paths)) {
27
+ return Array.isArray(source?.transform)
28
+ ? source.transform.find((t: any) => t[paths] !== undefined)
29
+ : source.transform;
26
30
  } else {
27
31
  return source?.[paths];
28
32
  }
@@ -49,8 +53,13 @@ export function applyValue(
49
53
  prop: string,
50
54
  value: any,
51
55
  ) {
56
+ // This is confusing.
57
+ // An undefined value means "don't set anything" (something failed while parsing)
58
+ // While a null value means "remove this value", which in React Native means "set to undefined"
52
59
  if (value === undefined) {
53
60
  return;
61
+ } else if (value === null) {
62
+ value = undefined;
54
63
  }
55
64
 
56
65
  if (transformKeys.has(prop)) {
@@ -58,12 +67,15 @@ export function applyValue(
58
67
  target.transform = [];
59
68
  }
60
69
 
61
- const transform = target.transform.find((t: any) => t[prop] !== undefined);
70
+ const transformArray: Record<string, unknown>[] = target.transform;
62
71
 
63
- if (transform) {
64
- transform[prop] = value;
72
+ // Remove any existing values
73
+ target.transform = transformArray.filter((t) => !(prop in t));
74
+
75
+ if (Array.isArray(value)) {
76
+ target.transform.push(...value);
65
77
  } else {
66
- target.transform.push({ [prop]: value });
78
+ target.transform.push(value);
67
79
  }
68
80
  return;
69
81
  } else if (typeof value === "object" && value && ShortHandSymbol in value) {
@@ -8,6 +8,7 @@ export const Specificity = {
8
8
  Important: 2,
9
9
  Inline: 3,
10
10
  PseudoElements: 4,
11
+ PseudoClass: 1,
11
12
  // Id: 0, - We don't support ID yet
12
13
  // StyleSheet: 0, - We don't support multiple stylesheets
13
14
  };