react-native-css 3.0.0-nightly.df0f885 → 3.0.0-preview.0

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 (575) 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 +13 -8
  4. package/dist/commonjs/compiler/compiler.js.map +1 -1
  5. package/dist/commonjs/compiler/declarations.js +238 -154
  6. package/dist/commonjs/compiler/declarations.js.map +1 -1
  7. package/dist/commonjs/compiler/inheritance.test.js +12 -12
  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 +100 -43
  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 +24 -17
  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 +10 -10
  50. package/dist/commonjs/runtime/native/api.js +8 -2
  51. package/dist/commonjs/runtime/native/api.js.map +1 -1
  52. package/dist/commonjs/runtime/native/conditions/attributes.js +42 -0
  53. package/dist/commonjs/runtime/native/conditions/attributes.js.map +1 -0
  54. package/dist/commonjs/runtime/native/conditions/container-query.js +7 -0
  55. package/dist/commonjs/runtime/native/conditions/container-query.js.map +1 -1
  56. package/dist/commonjs/runtime/native/conditions/index.js +6 -40
  57. package/dist/commonjs/runtime/native/conditions/index.js.map +1 -1
  58. package/dist/commonjs/runtime/native/conditions/media-query.js +16 -11
  59. package/dist/commonjs/runtime/native/conditions/media-query.js.map +1 -1
  60. package/dist/commonjs/runtime/native/react/rules.js +26 -20
  61. package/dist/commonjs/runtime/native/react/rules.js.map +1 -1
  62. package/dist/commonjs/runtime/native/react/useNativeCss.js +2 -2
  63. package/dist/commonjs/runtime/native/react/useNativeCss.js.map +1 -1
  64. package/dist/commonjs/runtime/native/reactivity.js +12 -21
  65. package/dist/commonjs/runtime/native/reactivity.js.map +1 -1
  66. package/dist/commonjs/runtime/native/reanimated.js +17 -0
  67. package/dist/commonjs/runtime/native/reanimated.js.map +1 -0
  68. package/dist/commonjs/runtime/native/styles/calculate-props.js +63 -38
  69. package/dist/commonjs/runtime/native/styles/calculate-props.js.map +1 -1
  70. package/dist/commonjs/runtime/native/styles/defaults.js +1 -1
  71. package/dist/commonjs/runtime/native/styles/defaults.js.map +1 -1
  72. package/dist/commonjs/runtime/native/styles/functions/animation-timing.js +34 -0
  73. package/dist/commonjs/runtime/native/styles/functions/animation-timing.js.map +1 -0
  74. package/dist/commonjs/runtime/native/styles/functions/calc.js +125 -0
  75. package/dist/commonjs/runtime/native/styles/functions/calc.js.map +1 -0
  76. package/dist/commonjs/runtime/native/styles/{filters.js → functions/filters.js} +3 -3
  77. package/dist/commonjs/runtime/native/styles/functions/filters.js.map +1 -0
  78. package/dist/commonjs/runtime/native/styles/functions/index.js +83 -0
  79. package/dist/commonjs/runtime/native/styles/functions/index.js.map +1 -0
  80. package/dist/commonjs/runtime/native/styles/functions/numeric-functions.js +32 -0
  81. package/dist/commonjs/runtime/native/styles/functions/numeric-functions.js.map +1 -0
  82. package/dist/commonjs/runtime/native/styles/{platform-functions.js → functions/platform-functions.js} +3 -3
  83. package/dist/commonjs/runtime/native/styles/functions/platform-functions.js.map +1 -0
  84. package/dist/commonjs/runtime/native/styles/functions/string-functions.js +23 -0
  85. package/dist/commonjs/runtime/native/styles/functions/string-functions.js.map +1 -0
  86. package/dist/commonjs/runtime/native/styles/functions/transform-functions.js +121 -0
  87. package/dist/commonjs/runtime/native/styles/functions/transform-functions.js.map +1 -0
  88. package/dist/commonjs/runtime/native/styles/resolve.js +21 -44
  89. package/dist/commonjs/runtime/native/styles/resolve.js.map +1 -1
  90. package/dist/commonjs/runtime/native/styles/{shorthand.js → shorthands/_handler.js} +5 -5
  91. package/dist/commonjs/runtime/native/styles/shorthands/_handler.js.map +1 -0
  92. package/dist/commonjs/runtime/native/styles/{animation.js → shorthands/animation.js} +6 -37
  93. package/dist/commonjs/runtime/native/styles/shorthands/animation.js.map +1 -0
  94. package/dist/commonjs/runtime/native/styles/{border.js → shorthands/border.js} +2 -2
  95. package/dist/commonjs/runtime/native/styles/shorthands/border.js.map +1 -0
  96. package/dist/commonjs/runtime/native/styles/shorthands/box-shadow.js +50 -0
  97. package/dist/commonjs/runtime/native/styles/shorthands/box-shadow.js.map +1 -0
  98. package/dist/commonjs/runtime/native/styles/shorthands/index.js +61 -0
  99. package/dist/commonjs/runtime/native/styles/shorthands/index.js.map +1 -0
  100. package/dist/commonjs/runtime/native/styles/{text-shadow.js → shorthands/text-shadow.js} +2 -2
  101. package/dist/commonjs/runtime/native/styles/shorthands/text-shadow.js.map +1 -0
  102. package/dist/commonjs/runtime/native/styles/{transform.js → shorthands/transform.js} +1 -1
  103. package/dist/commonjs/runtime/native/styles/shorthands/transform.js.map +1 -0
  104. package/dist/commonjs/runtime/native/styles/units.js +7 -4
  105. package/dist/commonjs/runtime/native/styles/units.js.map +1 -1
  106. package/dist/commonjs/runtime/native/styles/variables.js +3 -2
  107. package/dist/commonjs/runtime/native/styles/variables.js.map +1 -1
  108. package/dist/commonjs/runtime/utils/objects.js +14 -6
  109. package/dist/commonjs/runtime/utils/objects.js.map +1 -1
  110. package/dist/commonjs/runtime/utils/specificity.js +2 -1
  111. package/dist/commonjs/runtime/utils/specificity.js.map +1 -1
  112. package/dist/commonjs/runtime/web/api.js.map +1 -1
  113. package/dist/commonjs/style-collection/index.js +110 -0
  114. package/dist/commonjs/style-collection/index.js.map +1 -0
  115. package/dist/commonjs/style-collection/root.js +28 -0
  116. package/dist/commonjs/style-collection/root.js.map +1 -0
  117. package/dist/module/compiler/atRules.js +16 -3
  118. package/dist/module/compiler/atRules.js.map +1 -1
  119. package/dist/module/compiler/compiler.js +13 -8
  120. package/dist/module/compiler/compiler.js.map +1 -1
  121. package/dist/module/compiler/compiler.types.js +1 -1
  122. package/dist/module/compiler/compiler.types.js.map +1 -1
  123. package/dist/module/compiler/declarations.js +234 -150
  124. package/dist/module/compiler/declarations.js.map +1 -1
  125. package/dist/module/compiler/inheritance.test.js +12 -12
  126. package/dist/module/compiler/inheritance.test.js.map +1 -1
  127. package/dist/module/compiler/keyframes.js +1 -1
  128. package/dist/module/compiler/keyframes.js.map +1 -1
  129. package/dist/module/compiler/pseudo-elements.js +44 -0
  130. package/dist/module/compiler/pseudo-elements.js.map +1 -0
  131. package/dist/module/compiler/selector-builder.js +496 -0
  132. package/dist/module/compiler/selector-builder.js.map +1 -0
  133. package/dist/module/compiler/selectors.js +10 -6
  134. package/dist/module/compiler/selectors.js.map +1 -1
  135. package/dist/module/compiler/stylesheet.js +99 -42
  136. package/dist/module/compiler/stylesheet.js.map +1 -1
  137. package/dist/module/compiler/supports.js +23 -0
  138. package/dist/module/compiler/supports.js.map +1 -0
  139. package/dist/module/components/ActivityIndicator.js +17 -0
  140. package/dist/module/components/ActivityIndicator.js.map +1 -0
  141. package/dist/module/components/Button.js +17 -0
  142. package/dist/module/components/Button.js.map +1 -0
  143. package/dist/module/components/FlatList.js +14 -0
  144. package/dist/module/components/FlatList.js.map +1 -0
  145. package/dist/module/components/Image.js +12 -0
  146. package/dist/module/components/Image.js.map +1 -0
  147. package/dist/module/components/Switch.js +12 -0
  148. package/dist/module/components/Switch.js.map +1 -0
  149. package/dist/module/components/TextInput.js +12 -0
  150. package/dist/module/components/TextInput.js.map +1 -0
  151. package/dist/module/components/index.js +6 -0
  152. package/dist/module/components/index.js.map +1 -1
  153. package/dist/module/components/react-native-safe-area-context.js +4 -0
  154. package/dist/module/components/react-native-safe-area-context.js.map +1 -0
  155. package/dist/module/components/react-native-safe-area-context.native.js +36 -0
  156. package/dist/module/components/react-native-safe-area-context.native.js.map +1 -0
  157. package/dist/module/jest/index.js +22 -16
  158. package/dist/module/jest/index.js.map +1 -1
  159. package/dist/module/metro/index.js +7 -4
  160. package/dist/module/metro/index.js.map +1 -1
  161. package/dist/module/metro/injection-code.js +5 -10
  162. package/dist/module/metro/injection-code.js.map +1 -1
  163. package/dist/module/metro/metro-transformer.js +18 -8
  164. package/dist/module/metro/metro-transformer.js.map +1 -1
  165. package/dist/module/metro/resolver.js +3 -0
  166. package/dist/module/metro/resolver.js.map +1 -1
  167. package/dist/module/poison.pill.js +10 -10
  168. package/dist/module/runtime/native/api.js +2 -1
  169. package/dist/module/runtime/native/api.js.map +1 -1
  170. package/dist/module/runtime/native/conditions/attributes.js +38 -0
  171. package/dist/module/runtime/native/conditions/attributes.js.map +1 -0
  172. package/dist/module/runtime/native/conditions/container-query.js +7 -0
  173. package/dist/module/runtime/native/conditions/container-query.js.map +1 -1
  174. package/dist/module/runtime/native/conditions/index.js +6 -40
  175. package/dist/module/runtime/native/conditions/index.js.map +1 -1
  176. package/dist/module/runtime/native/conditions/media-query.js +17 -12
  177. package/dist/module/runtime/native/conditions/media-query.js.map +1 -1
  178. package/dist/module/runtime/native/react/rules.js +24 -19
  179. package/dist/module/runtime/native/react/rules.js.map +1 -1
  180. package/dist/module/runtime/native/react/useNativeCss.js +1 -1
  181. package/dist/module/runtime/native/react/useNativeCss.js.map +1 -1
  182. package/dist/module/runtime/native/reactivity.js +11 -20
  183. package/dist/module/runtime/native/reactivity.js.map +1 -1
  184. package/dist/module/runtime/native/reanimated.js +13 -0
  185. package/dist/module/runtime/native/reanimated.js.map +1 -0
  186. package/dist/module/runtime/native/styles/calculate-props.js +64 -39
  187. package/dist/module/runtime/native/styles/calculate-props.js.map +1 -1
  188. package/dist/module/runtime/native/styles/defaults.js +1 -1
  189. package/dist/module/runtime/native/styles/defaults.js.map +1 -1
  190. package/dist/module/runtime/native/styles/functions/animation-timing.js +30 -0
  191. package/dist/module/runtime/native/styles/functions/animation-timing.js.map +1 -0
  192. package/dist/module/runtime/native/styles/functions/calc.js +120 -0
  193. package/dist/module/runtime/native/styles/functions/calc.js.map +1 -0
  194. package/dist/module/runtime/native/styles/{filters.js → functions/filters.js} +2 -2
  195. package/dist/module/runtime/native/styles/functions/filters.js.map +1 -0
  196. package/dist/module/runtime/native/styles/functions/index.js +10 -0
  197. package/dist/module/runtime/native/styles/functions/index.js.map +1 -0
  198. package/dist/module/runtime/native/styles/functions/numeric-functions.js +25 -0
  199. package/dist/module/runtime/native/styles/functions/numeric-functions.js.map +1 -0
  200. package/dist/module/runtime/native/styles/{platform-functions.js → functions/platform-functions.js} +1 -1
  201. package/dist/module/runtime/native/styles/functions/platform-functions.js.map +1 -0
  202. package/dist/module/runtime/native/styles/functions/string-functions.js +18 -0
  203. package/dist/module/runtime/native/styles/functions/string-functions.js.map +1 -0
  204. package/dist/module/runtime/native/styles/functions/transform-functions.js +114 -0
  205. package/dist/module/runtime/native/styles/functions/transform-functions.js.map +1 -0
  206. package/dist/module/runtime/native/styles/resolve.js +20 -44
  207. package/dist/module/runtime/native/styles/resolve.js.map +1 -1
  208. package/dist/module/runtime/native/styles/{shorthand.js → shorthands/_handler.js} +5 -5
  209. package/dist/module/runtime/native/styles/shorthands/_handler.js.map +1 -0
  210. package/dist/module/runtime/native/styles/{animation.js → shorthands/animation.js} +3 -34
  211. package/dist/module/runtime/native/styles/shorthands/animation.js.map +1 -0
  212. package/dist/module/runtime/native/styles/{border.js → shorthands/border.js} +1 -1
  213. package/dist/module/runtime/native/styles/shorthands/border.js.map +1 -0
  214. package/dist/module/runtime/native/styles/{box-shadow.js → shorthands/box-shadow.js} +16 -6
  215. package/dist/module/runtime/native/styles/shorthands/box-shadow.js.map +1 -0
  216. package/dist/module/runtime/native/styles/shorthands/index.js +8 -0
  217. package/dist/module/runtime/native/styles/shorthands/index.js.map +1 -0
  218. package/dist/module/runtime/native/styles/{text-shadow.js → shorthands/text-shadow.js} +1 -1
  219. package/dist/module/runtime/native/styles/shorthands/text-shadow.js.map +1 -0
  220. package/dist/module/runtime/native/styles/{transform.js → shorthands/transform.js} +1 -1
  221. package/dist/module/runtime/native/styles/shorthands/transform.js.map +1 -0
  222. package/dist/module/runtime/native/styles/units.js +7 -4
  223. package/dist/module/runtime/native/styles/units.js.map +1 -1
  224. package/dist/module/runtime/native/styles/variables.js +2 -1
  225. package/dist/module/runtime/native/styles/variables.js.map +1 -1
  226. package/dist/module/runtime/utils/objects.js +14 -6
  227. package/dist/module/runtime/utils/objects.js.map +1 -1
  228. package/dist/module/runtime/utils/specificity.js +2 -1
  229. package/dist/module/runtime/utils/specificity.js.map +1 -1
  230. package/dist/module/runtime/web/api.js.map +1 -1
  231. package/dist/module/style-collection/index.js +95 -0
  232. package/dist/module/style-collection/index.js.map +1 -0
  233. package/dist/module/style-collection/root.js +24 -0
  234. package/dist/module/style-collection/root.js.map +1 -0
  235. package/dist/typescript/commonjs/src/compiler/atRules.d.ts.map +1 -1
  236. package/dist/typescript/commonjs/src/compiler/compiler.d.ts +4 -4
  237. package/dist/typescript/commonjs/src/compiler/compiler.d.ts.map +1 -1
  238. package/dist/typescript/commonjs/src/compiler/compiler.types.d.ts +11 -13
  239. package/dist/typescript/commonjs/src/compiler/compiler.types.d.ts.map +1 -1
  240. package/dist/typescript/commonjs/src/compiler/declarations.d.ts +16 -18
  241. package/dist/typescript/commonjs/src/compiler/declarations.d.ts.map +1 -1
  242. package/dist/typescript/commonjs/src/compiler/pseudo-elements.d.ts +4 -0
  243. package/dist/typescript/commonjs/src/compiler/pseudo-elements.d.ts.map +1 -0
  244. package/dist/typescript/commonjs/src/compiler/selector-builder.d.ts +24 -0
  245. package/dist/typescript/commonjs/src/compiler/selector-builder.d.ts.map +1 -0
  246. package/dist/typescript/commonjs/src/compiler/selectors.d.ts +3 -2
  247. package/dist/typescript/commonjs/src/compiler/selectors.d.ts.map +1 -1
  248. package/dist/typescript/commonjs/src/compiler/stylesheet.d.ts +16 -12
  249. package/dist/typescript/commonjs/src/compiler/stylesheet.d.ts.map +1 -1
  250. package/dist/typescript/commonjs/src/compiler/supports.d.ts +3 -0
  251. package/dist/typescript/commonjs/src/compiler/supports.d.ts.map +1 -0
  252. package/dist/typescript/commonjs/src/components/ActivityIndicator.d.ts +13 -0
  253. package/dist/typescript/commonjs/src/components/ActivityIndicator.d.ts.map +1 -0
  254. package/dist/typescript/commonjs/src/components/Button.d.ts +13 -0
  255. package/dist/typescript/commonjs/src/components/Button.d.ts.map +1 -0
  256. package/dist/typescript/commonjs/src/components/FlatList.d.ts +10 -0
  257. package/dist/typescript/commonjs/src/components/FlatList.d.ts.map +1 -0
  258. package/dist/typescript/commonjs/src/components/Image.d.ts +8 -0
  259. package/dist/typescript/commonjs/src/components/Image.d.ts.map +1 -0
  260. package/dist/typescript/commonjs/src/components/Switch.d.ts +8 -0
  261. package/dist/typescript/commonjs/src/components/Switch.d.ts.map +1 -0
  262. package/dist/typescript/commonjs/src/components/TextInput.d.ts +8 -0
  263. package/dist/typescript/commonjs/src/components/TextInput.d.ts.map +1 -0
  264. package/dist/typescript/commonjs/src/components/index.d.ts +6 -0
  265. package/dist/typescript/commonjs/src/components/index.d.ts.map +1 -1
  266. package/dist/typescript/commonjs/src/components/react-native-safe-area-context.d.ts +2 -0
  267. package/dist/typescript/commonjs/src/components/react-native-safe-area-context.d.ts.map +1 -0
  268. package/dist/typescript/commonjs/src/components/react-native-safe-area-context.native.d.ts +4 -0
  269. package/dist/typescript/commonjs/src/components/react-native-safe-area-context.native.d.ts.map +1 -0
  270. package/dist/typescript/commonjs/src/jest/index.d.ts +16 -6
  271. package/dist/typescript/commonjs/src/jest/index.d.ts.map +1 -1
  272. package/dist/typescript/commonjs/src/metro/index.d.ts.map +1 -1
  273. package/dist/typescript/commonjs/src/metro/injection-code.d.ts +4 -7
  274. package/dist/typescript/commonjs/src/metro/injection-code.d.ts.map +1 -1
  275. package/dist/typescript/commonjs/src/metro/metro-transformer.d.ts +4 -1
  276. package/dist/typescript/commonjs/src/metro/metro-transformer.d.ts.map +1 -1
  277. package/dist/typescript/commonjs/src/metro/resolver.d.ts.map +1 -1
  278. package/dist/typescript/commonjs/src/runtime/native/api.d.ts +3 -1
  279. package/dist/typescript/commonjs/src/runtime/native/api.d.ts.map +1 -1
  280. package/dist/typescript/commonjs/src/runtime/native/conditions/attributes.d.ts +5 -0
  281. package/dist/typescript/commonjs/src/runtime/native/conditions/attributes.d.ts.map +1 -0
  282. package/dist/typescript/commonjs/src/runtime/native/conditions/container-query.d.ts.map +1 -1
  283. package/dist/typescript/commonjs/src/runtime/native/conditions/index.d.ts.map +1 -1
  284. package/dist/typescript/commonjs/src/runtime/native/react/rules.d.ts +2 -2
  285. package/dist/typescript/commonjs/src/runtime/native/react/rules.d.ts.map +1 -1
  286. package/dist/typescript/commonjs/src/runtime/native/react/useNativeCss.d.ts.map +1 -1
  287. package/dist/typescript/commonjs/src/runtime/native/reactivity.d.ts +1 -9
  288. package/dist/typescript/commonjs/src/runtime/native/reactivity.d.ts.map +1 -1
  289. package/dist/typescript/commonjs/src/runtime/native/reanimated.d.ts +5 -0
  290. package/dist/typescript/commonjs/src/runtime/native/reanimated.d.ts.map +1 -0
  291. package/dist/typescript/commonjs/src/runtime/native/styles/calculate-props.d.ts +1 -1
  292. package/dist/typescript/commonjs/src/runtime/native/styles/calculate-props.d.ts.map +1 -1
  293. package/dist/typescript/commonjs/src/runtime/native/styles/defaults.d.ts.map +1 -1
  294. package/dist/typescript/commonjs/src/runtime/native/styles/functions/animation-timing.d.ts +4 -0
  295. package/dist/typescript/commonjs/src/runtime/native/styles/functions/animation-timing.d.ts.map +1 -0
  296. package/dist/typescript/commonjs/src/runtime/native/styles/functions/calc.d.ts +3 -0
  297. package/dist/typescript/commonjs/src/runtime/native/styles/functions/calc.d.ts.map +1 -0
  298. package/dist/typescript/commonjs/src/runtime/native/styles/{filters.d.ts → functions/filters.d.ts} +1 -1
  299. package/dist/typescript/commonjs/src/runtime/native/styles/functions/filters.d.ts.map +1 -0
  300. package/dist/typescript/commonjs/src/runtime/native/styles/functions/index.d.ts +8 -0
  301. package/dist/typescript/commonjs/src/runtime/native/styles/functions/index.d.ts.map +1 -0
  302. package/dist/typescript/commonjs/src/runtime/native/styles/functions/numeric-functions.d.ts +5 -0
  303. package/dist/typescript/commonjs/src/runtime/native/styles/functions/numeric-functions.d.ts.map +1 -0
  304. package/dist/typescript/commonjs/src/runtime/native/styles/{platform-functions.d.ts → functions/platform-functions.d.ts} +2 -2
  305. package/dist/typescript/commonjs/src/runtime/native/styles/functions/platform-functions.d.ts.map +1 -0
  306. package/dist/typescript/commonjs/src/runtime/native/styles/functions/string-functions.d.ts +3 -0
  307. package/dist/typescript/commonjs/src/runtime/native/styles/functions/string-functions.d.ts.map +1 -0
  308. package/dist/typescript/commonjs/src/runtime/native/styles/functions/transform-functions.d.ts +5 -0
  309. package/dist/typescript/commonjs/src/runtime/native/styles/functions/transform-functions.d.ts.map +1 -0
  310. package/dist/typescript/commonjs/src/runtime/native/styles/resolve.d.ts.map +1 -1
  311. package/dist/typescript/commonjs/src/runtime/native/styles/{shorthand.d.ts → shorthands/_handler.d.ts} +2 -2
  312. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/_handler.d.ts.map +1 -0
  313. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/animation.d.ts +4 -0
  314. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/animation.d.ts.map +1 -0
  315. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/border.d.ts +2 -0
  316. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/border.d.ts.map +1 -0
  317. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/box-shadow.d.ts +3 -0
  318. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/box-shadow.d.ts.map +1 -0
  319. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/index.d.ts +6 -0
  320. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/index.d.ts.map +1 -0
  321. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/text-shadow.d.ts +2 -0
  322. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/text-shadow.d.ts.map +1 -0
  323. package/dist/typescript/commonjs/src/runtime/native/styles/{transform.d.ts → shorthands/transform.d.ts} +1 -1
  324. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/transform.d.ts.map +1 -0
  325. package/dist/typescript/commonjs/src/runtime/native/styles/units.d.ts.map +1 -1
  326. package/dist/typescript/commonjs/src/runtime/native/styles/variables.d.ts.map +1 -1
  327. package/dist/typescript/commonjs/src/runtime/utils/objects.d.ts.map +1 -1
  328. package/dist/typescript/commonjs/src/runtime/utils/specificity.d.ts +1 -0
  329. package/dist/typescript/commonjs/src/runtime/utils/specificity.d.ts.map +1 -1
  330. package/dist/typescript/commonjs/src/runtime/web/api.d.ts +1 -1
  331. package/dist/typescript/commonjs/src/runtime/web/api.d.ts.map +1 -1
  332. package/dist/typescript/commonjs/src/style-collection/index.d.ts +14 -0
  333. package/dist/typescript/commonjs/src/style-collection/index.d.ts.map +1 -0
  334. package/dist/typescript/commonjs/src/style-collection/root.d.ts +11 -0
  335. package/dist/typescript/commonjs/src/style-collection/root.d.ts.map +1 -0
  336. package/dist/typescript/module/src/compiler/atRules.d.ts.map +1 -1
  337. package/dist/typescript/module/src/compiler/compiler.d.ts +4 -4
  338. package/dist/typescript/module/src/compiler/compiler.d.ts.map +1 -1
  339. package/dist/typescript/module/src/compiler/compiler.types.d.ts +11 -13
  340. package/dist/typescript/module/src/compiler/compiler.types.d.ts.map +1 -1
  341. package/dist/typescript/module/src/compiler/declarations.d.ts +16 -18
  342. package/dist/typescript/module/src/compiler/declarations.d.ts.map +1 -1
  343. package/dist/typescript/module/src/compiler/pseudo-elements.d.ts +4 -0
  344. package/dist/typescript/module/src/compiler/pseudo-elements.d.ts.map +1 -0
  345. package/dist/typescript/module/src/compiler/selector-builder.d.ts +24 -0
  346. package/dist/typescript/module/src/compiler/selector-builder.d.ts.map +1 -0
  347. package/dist/typescript/module/src/compiler/selectors.d.ts +3 -2
  348. package/dist/typescript/module/src/compiler/selectors.d.ts.map +1 -1
  349. package/dist/typescript/module/src/compiler/stylesheet.d.ts +16 -12
  350. package/dist/typescript/module/src/compiler/stylesheet.d.ts.map +1 -1
  351. package/dist/typescript/module/src/compiler/supports.d.ts +3 -0
  352. package/dist/typescript/module/src/compiler/supports.d.ts.map +1 -0
  353. package/dist/typescript/module/src/components/ActivityIndicator.d.ts +13 -0
  354. package/dist/typescript/module/src/components/ActivityIndicator.d.ts.map +1 -0
  355. package/dist/typescript/module/src/components/Button.d.ts +13 -0
  356. package/dist/typescript/module/src/components/Button.d.ts.map +1 -0
  357. package/dist/typescript/module/src/components/FlatList.d.ts +10 -0
  358. package/dist/typescript/module/src/components/FlatList.d.ts.map +1 -0
  359. package/dist/typescript/module/src/components/Image.d.ts +8 -0
  360. package/dist/typescript/module/src/components/Image.d.ts.map +1 -0
  361. package/dist/typescript/module/src/components/Switch.d.ts +8 -0
  362. package/dist/typescript/module/src/components/Switch.d.ts.map +1 -0
  363. package/dist/typescript/module/src/components/TextInput.d.ts +8 -0
  364. package/dist/typescript/module/src/components/TextInput.d.ts.map +1 -0
  365. package/dist/typescript/module/src/components/index.d.ts +6 -0
  366. package/dist/typescript/module/src/components/index.d.ts.map +1 -1
  367. package/dist/typescript/module/src/components/react-native-safe-area-context.d.ts +2 -0
  368. package/dist/typescript/module/src/components/react-native-safe-area-context.d.ts.map +1 -0
  369. package/dist/typescript/module/src/components/react-native-safe-area-context.native.d.ts +4 -0
  370. package/dist/typescript/module/src/components/react-native-safe-area-context.native.d.ts.map +1 -0
  371. package/dist/typescript/module/src/jest/index.d.ts +16 -6
  372. package/dist/typescript/module/src/jest/index.d.ts.map +1 -1
  373. package/dist/typescript/module/src/metro/index.d.ts.map +1 -1
  374. package/dist/typescript/module/src/metro/injection-code.d.ts +4 -7
  375. package/dist/typescript/module/src/metro/injection-code.d.ts.map +1 -1
  376. package/dist/typescript/module/src/metro/metro-transformer.d.ts +4 -1
  377. package/dist/typescript/module/src/metro/metro-transformer.d.ts.map +1 -1
  378. package/dist/typescript/module/src/metro/resolver.d.ts.map +1 -1
  379. package/dist/typescript/module/src/runtime/native/api.d.ts +3 -1
  380. package/dist/typescript/module/src/runtime/native/api.d.ts.map +1 -1
  381. package/dist/typescript/module/src/runtime/native/conditions/attributes.d.ts +5 -0
  382. package/dist/typescript/module/src/runtime/native/conditions/attributes.d.ts.map +1 -0
  383. package/dist/typescript/module/src/runtime/native/conditions/container-query.d.ts.map +1 -1
  384. package/dist/typescript/module/src/runtime/native/conditions/index.d.ts.map +1 -1
  385. package/dist/typescript/module/src/runtime/native/react/rules.d.ts +2 -2
  386. package/dist/typescript/module/src/runtime/native/react/rules.d.ts.map +1 -1
  387. package/dist/typescript/module/src/runtime/native/react/useNativeCss.d.ts.map +1 -1
  388. package/dist/typescript/module/src/runtime/native/reactivity.d.ts +1 -9
  389. package/dist/typescript/module/src/runtime/native/reactivity.d.ts.map +1 -1
  390. package/dist/typescript/module/src/runtime/native/reanimated.d.ts +5 -0
  391. package/dist/typescript/module/src/runtime/native/reanimated.d.ts.map +1 -0
  392. package/dist/typescript/module/src/runtime/native/styles/calculate-props.d.ts +1 -1
  393. package/dist/typescript/module/src/runtime/native/styles/calculate-props.d.ts.map +1 -1
  394. package/dist/typescript/module/src/runtime/native/styles/defaults.d.ts.map +1 -1
  395. package/dist/typescript/module/src/runtime/native/styles/functions/animation-timing.d.ts +4 -0
  396. package/dist/typescript/module/src/runtime/native/styles/functions/animation-timing.d.ts.map +1 -0
  397. package/dist/typescript/module/src/runtime/native/styles/functions/calc.d.ts +3 -0
  398. package/dist/typescript/module/src/runtime/native/styles/functions/calc.d.ts.map +1 -0
  399. package/dist/typescript/module/src/runtime/native/styles/{filters.d.ts → functions/filters.d.ts} +1 -1
  400. package/dist/typescript/module/src/runtime/native/styles/functions/filters.d.ts.map +1 -0
  401. package/dist/typescript/module/src/runtime/native/styles/functions/index.d.ts +8 -0
  402. package/dist/typescript/module/src/runtime/native/styles/functions/index.d.ts.map +1 -0
  403. package/dist/typescript/module/src/runtime/native/styles/functions/numeric-functions.d.ts +5 -0
  404. package/dist/typescript/module/src/runtime/native/styles/functions/numeric-functions.d.ts.map +1 -0
  405. package/dist/typescript/module/src/runtime/native/styles/{platform-functions.d.ts → functions/platform-functions.d.ts} +2 -2
  406. package/dist/typescript/module/src/runtime/native/styles/functions/platform-functions.d.ts.map +1 -0
  407. package/dist/typescript/module/src/runtime/native/styles/functions/string-functions.d.ts +3 -0
  408. package/dist/typescript/module/src/runtime/native/styles/functions/string-functions.d.ts.map +1 -0
  409. package/dist/typescript/module/src/runtime/native/styles/functions/transform-functions.d.ts +5 -0
  410. package/dist/typescript/module/src/runtime/native/styles/functions/transform-functions.d.ts.map +1 -0
  411. package/dist/typescript/module/src/runtime/native/styles/resolve.d.ts.map +1 -1
  412. package/dist/typescript/module/src/runtime/native/styles/{shorthand.d.ts → shorthands/_handler.d.ts} +2 -2
  413. package/dist/typescript/module/src/runtime/native/styles/shorthands/_handler.d.ts.map +1 -0
  414. package/dist/typescript/module/src/runtime/native/styles/shorthands/animation.d.ts +4 -0
  415. package/dist/typescript/module/src/runtime/native/styles/shorthands/animation.d.ts.map +1 -0
  416. package/dist/typescript/module/src/runtime/native/styles/shorthands/border.d.ts +2 -0
  417. package/dist/typescript/module/src/runtime/native/styles/shorthands/border.d.ts.map +1 -0
  418. package/dist/typescript/module/src/runtime/native/styles/shorthands/box-shadow.d.ts +3 -0
  419. package/dist/typescript/module/src/runtime/native/styles/shorthands/box-shadow.d.ts.map +1 -0
  420. package/dist/typescript/module/src/runtime/native/styles/shorthands/index.d.ts +6 -0
  421. package/dist/typescript/module/src/runtime/native/styles/shorthands/index.d.ts.map +1 -0
  422. package/dist/typescript/module/src/runtime/native/styles/shorthands/text-shadow.d.ts +2 -0
  423. package/dist/typescript/module/src/runtime/native/styles/shorthands/text-shadow.d.ts.map +1 -0
  424. package/dist/typescript/module/src/runtime/native/styles/{transform.d.ts → shorthands/transform.d.ts} +1 -1
  425. package/dist/typescript/module/src/runtime/native/styles/shorthands/transform.d.ts.map +1 -0
  426. package/dist/typescript/module/src/runtime/native/styles/units.d.ts.map +1 -1
  427. package/dist/typescript/module/src/runtime/native/styles/variables.d.ts.map +1 -1
  428. package/dist/typescript/module/src/runtime/utils/objects.d.ts.map +1 -1
  429. package/dist/typescript/module/src/runtime/utils/specificity.d.ts +1 -0
  430. package/dist/typescript/module/src/runtime/utils/specificity.d.ts.map +1 -1
  431. package/dist/typescript/module/src/runtime/web/api.d.ts +1 -1
  432. package/dist/typescript/module/src/runtime/web/api.d.ts.map +1 -1
  433. package/dist/typescript/module/src/style-collection/index.d.ts +14 -0
  434. package/dist/typescript/module/src/style-collection/index.d.ts.map +1 -0
  435. package/dist/typescript/module/src/style-collection/root.d.ts +11 -0
  436. package/dist/typescript/module/src/style-collection/root.d.ts.map +1 -0
  437. package/package.json +31 -15
  438. package/src/compiler/atRules.ts +17 -3
  439. package/src/compiler/compiler.ts +12 -10
  440. package/src/compiler/compiler.types.ts +11 -14
  441. package/src/compiler/declarations.ts +423 -194
  442. package/src/compiler/inheritance.test.ts +10 -10
  443. package/src/compiler/keyframes.ts +1 -1
  444. package/src/compiler/pseudo-elements.ts +54 -0
  445. package/src/compiler/selector-builder.ts +586 -0
  446. package/src/compiler/selectors.ts +20 -6
  447. package/src/compiler/stylesheet.ts +145 -57
  448. package/src/compiler/supports.ts +26 -0
  449. package/src/components/ActivityIndicator.tsx +27 -0
  450. package/src/components/Button.tsx +22 -0
  451. package/src/components/FlatList.tsx +21 -0
  452. package/src/components/Image.tsx +17 -0
  453. package/src/components/Switch.tsx +17 -0
  454. package/src/components/TextInput.tsx +17 -0
  455. package/src/components/index.tsx +6 -0
  456. package/src/components/react-native-safe-area-context.native.tsx +40 -0
  457. package/src/components/react-native-safe-area-context.tsx +1 -0
  458. package/src/jest/index.ts +25 -15
  459. package/src/metro/index.ts +12 -7
  460. package/src/metro/injection-code.ts +6 -10
  461. package/src/metro/metro-transformer.ts +27 -10
  462. package/src/metro/resolver.ts +8 -0
  463. package/src/poison.pill.ts +10 -10
  464. package/src/runtime/native/api.ts +3 -1
  465. package/src/runtime/native/conditions/attributes.ts +52 -0
  466. package/src/runtime/native/conditions/container-query.ts +5 -0
  467. package/src/runtime/native/conditions/index.ts +7 -59
  468. package/src/runtime/native/conditions/media-query.ts +18 -12
  469. package/src/runtime/native/react/rules.ts +27 -17
  470. package/src/runtime/native/react/useNativeCss.ts +1 -1
  471. package/src/runtime/native/reactivity.ts +13 -29
  472. package/src/runtime/native/reanimated.ts +22 -0
  473. package/src/runtime/native/styles/calculate-props.ts +71 -39
  474. package/src/runtime/native/styles/defaults.ts +1 -0
  475. package/src/runtime/native/styles/functions/animation-timing.ts +44 -0
  476. package/src/runtime/native/styles/functions/calc.ts +121 -0
  477. package/src/runtime/native/styles/{filters.ts → functions/filters.ts} +3 -3
  478. package/src/runtime/native/styles/functions/index.ts +7 -0
  479. package/src/runtime/native/styles/functions/numeric-functions.ts +38 -0
  480. package/src/runtime/native/styles/{platform-functions.ts → functions/platform-functions.ts} +2 -2
  481. package/src/runtime/native/styles/functions/string-functions.ts +22 -0
  482. package/src/runtime/native/styles/functions/transform-functions.ts +84 -0
  483. package/src/runtime/native/styles/resolve.ts +20 -63
  484. package/src/runtime/native/styles/{shorthand.ts → shorthands/_handler.ts} +5 -5
  485. package/src/runtime/native/styles/{animation.ts → shorthands/animation.ts} +4 -62
  486. package/src/runtime/native/styles/{border.ts → shorthands/border.ts} +1 -1
  487. package/src/runtime/native/styles/shorthands/box-shadow.ts +74 -0
  488. package/src/runtime/native/styles/shorthands/index.ts +5 -0
  489. package/src/runtime/native/styles/{text-shadow.ts → shorthands/text-shadow.ts} +1 -1
  490. package/src/runtime/native/styles/{transform.ts → shorthands/transform.ts} +4 -2
  491. package/src/runtime/native/styles/units.ts +8 -4
  492. package/src/runtime/native/styles/variables.ts +5 -5
  493. package/src/runtime/utils/objects.ts +16 -4
  494. package/src/runtime/utils/specificity.ts +1 -0
  495. package/src/runtime/web/api.ts +1 -1
  496. package/src/style-collection/index.ts +142 -0
  497. package/src/style-collection/root.ts +35 -0
  498. package/dist/commonjs/compiler/attributes.test.js +0 -20
  499. package/dist/commonjs/compiler/attributes.test.js.map +0 -1
  500. package/dist/commonjs/doctor/index.js +0 -6
  501. package/dist/commonjs/doctor/index.js.map +0 -1
  502. package/dist/commonjs/runtime/native/injection.js +0 -98
  503. package/dist/commonjs/runtime/native/injection.js.map +0 -1
  504. package/dist/commonjs/runtime/native/styles/animation.js.map +0 -1
  505. package/dist/commonjs/runtime/native/styles/border.js.map +0 -1
  506. package/dist/commonjs/runtime/native/styles/box-shadow.js +0 -40
  507. package/dist/commonjs/runtime/native/styles/box-shadow.js.map +0 -1
  508. package/dist/commonjs/runtime/native/styles/calc.js +0 -85
  509. package/dist/commonjs/runtime/native/styles/calc.js.map +0 -1
  510. package/dist/commonjs/runtime/native/styles/filters.js.map +0 -1
  511. package/dist/commonjs/runtime/native/styles/platform-functions.js.map +0 -1
  512. package/dist/commonjs/runtime/native/styles/shorthand.js.map +0 -1
  513. package/dist/commonjs/runtime/native/styles/text-shadow.js.map +0 -1
  514. package/dist/commonjs/runtime/native/styles/transform.js.map +0 -1
  515. package/dist/module/compiler/attributes.test.js +0 -20
  516. package/dist/module/compiler/attributes.test.js.map +0 -1
  517. package/dist/module/doctor/index.js +0 -4
  518. package/dist/module/doctor/index.js.map +0 -1
  519. package/dist/module/runtime/native/injection.js +0 -93
  520. package/dist/module/runtime/native/injection.js.map +0 -1
  521. package/dist/module/runtime/native/styles/animation.js.map +0 -1
  522. package/dist/module/runtime/native/styles/border.js.map +0 -1
  523. package/dist/module/runtime/native/styles/box-shadow.js.map +0 -1
  524. package/dist/module/runtime/native/styles/calc.js +0 -79
  525. package/dist/module/runtime/native/styles/calc.js.map +0 -1
  526. package/dist/module/runtime/native/styles/filters.js.map +0 -1
  527. package/dist/module/runtime/native/styles/platform-functions.js.map +0 -1
  528. package/dist/module/runtime/native/styles/shorthand.js.map +0 -1
  529. package/dist/module/runtime/native/styles/text-shadow.js.map +0 -1
  530. package/dist/module/runtime/native/styles/transform.js.map +0 -1
  531. package/dist/typescript/commonjs/src/compiler/attributes.test.d.ts +0 -2
  532. package/dist/typescript/commonjs/src/compiler/attributes.test.d.ts.map +0 -1
  533. package/dist/typescript/commonjs/src/doctor/index.d.ts +0 -2
  534. package/dist/typescript/commonjs/src/doctor/index.d.ts.map +0 -1
  535. package/dist/typescript/commonjs/src/runtime/native/injection.d.ts +0 -16
  536. package/dist/typescript/commonjs/src/runtime/native/injection.d.ts.map +0 -1
  537. package/dist/typescript/commonjs/src/runtime/native/styles/animation.d.ts +0 -9
  538. package/dist/typescript/commonjs/src/runtime/native/styles/animation.d.ts.map +0 -1
  539. package/dist/typescript/commonjs/src/runtime/native/styles/border.d.ts +0 -2
  540. package/dist/typescript/commonjs/src/runtime/native/styles/border.d.ts.map +0 -1
  541. package/dist/typescript/commonjs/src/runtime/native/styles/box-shadow.d.ts +0 -3
  542. package/dist/typescript/commonjs/src/runtime/native/styles/box-shadow.d.ts.map +0 -1
  543. package/dist/typescript/commonjs/src/runtime/native/styles/calc.d.ts +0 -3
  544. package/dist/typescript/commonjs/src/runtime/native/styles/calc.d.ts.map +0 -1
  545. package/dist/typescript/commonjs/src/runtime/native/styles/filters.d.ts.map +0 -1
  546. package/dist/typescript/commonjs/src/runtime/native/styles/platform-functions.d.ts.map +0 -1
  547. package/dist/typescript/commonjs/src/runtime/native/styles/shorthand.d.ts.map +0 -1
  548. package/dist/typescript/commonjs/src/runtime/native/styles/text-shadow.d.ts +0 -2
  549. package/dist/typescript/commonjs/src/runtime/native/styles/text-shadow.d.ts.map +0 -1
  550. package/dist/typescript/commonjs/src/runtime/native/styles/transform.d.ts.map +0 -1
  551. package/dist/typescript/module/src/compiler/attributes.test.d.ts +0 -2
  552. package/dist/typescript/module/src/compiler/attributes.test.d.ts.map +0 -1
  553. package/dist/typescript/module/src/doctor/index.d.ts +0 -2
  554. package/dist/typescript/module/src/doctor/index.d.ts.map +0 -1
  555. package/dist/typescript/module/src/runtime/native/injection.d.ts +0 -16
  556. package/dist/typescript/module/src/runtime/native/injection.d.ts.map +0 -1
  557. package/dist/typescript/module/src/runtime/native/styles/animation.d.ts +0 -9
  558. package/dist/typescript/module/src/runtime/native/styles/animation.d.ts.map +0 -1
  559. package/dist/typescript/module/src/runtime/native/styles/border.d.ts +0 -2
  560. package/dist/typescript/module/src/runtime/native/styles/border.d.ts.map +0 -1
  561. package/dist/typescript/module/src/runtime/native/styles/box-shadow.d.ts +0 -3
  562. package/dist/typescript/module/src/runtime/native/styles/box-shadow.d.ts.map +0 -1
  563. package/dist/typescript/module/src/runtime/native/styles/calc.d.ts +0 -3
  564. package/dist/typescript/module/src/runtime/native/styles/calc.d.ts.map +0 -1
  565. package/dist/typescript/module/src/runtime/native/styles/filters.d.ts.map +0 -1
  566. package/dist/typescript/module/src/runtime/native/styles/platform-functions.d.ts.map +0 -1
  567. package/dist/typescript/module/src/runtime/native/styles/shorthand.d.ts.map +0 -1
  568. package/dist/typescript/module/src/runtime/native/styles/text-shadow.d.ts +0 -2
  569. package/dist/typescript/module/src/runtime/native/styles/text-shadow.d.ts.map +0 -1
  570. package/dist/typescript/module/src/runtime/native/styles/transform.d.ts.map +0 -1
  571. package/src/compiler/attributes.test.ts +0 -28
  572. package/src/doctor/index.ts +0 -1
  573. package/src/runtime/native/injection.ts +0 -131
  574. package/src/runtime/native/styles/box-shadow.ts +0 -54
  575. package/src/runtime/native/styles/calc.ts +0 -97
@@ -0,0 +1,501 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getClassNameSelectors = getClassNameSelectors;
7
+ exports.toRNProperty = toRNProperty;
8
+ var _index = require("../runtime/utils/index.js");
9
+ const containerQueryMap = new WeakMap();
10
+ const attributeQueryMap = new WeakMap();
11
+ const mediaQueryMap = new WeakMap();
12
+ const pseudoClassesQueryMap = new WeakMap();
13
+ function getClassNameSelectors(selectors, options = {}, specificity = [0], root = {
14
+ type: "className",
15
+ specificity: []
16
+ }) {
17
+ if (!selectors.length) {
18
+ return [];
19
+ }
20
+ return selectors.flatMap(selector => {
21
+ if (isRootVariableSelector(selector)) {
22
+ return [{
23
+ type: "rootVariables"
24
+ }];
25
+ } else if (isUniversalSelector(selector)) {
26
+ return [{
27
+ type: "universalVariables"
28
+ }];
29
+ } else {
30
+ return parseComponents(selector.reverse(), options, root, root, specificity) ?? [];
31
+ }
32
+ });
33
+ }
34
+ function parseComponents([component, ...rest], options, root, ref, specificity) {
35
+ if (!component || Array.isArray(component.type)) {
36
+ // Merge the specificity with the root specificity
37
+ for (let i = 0; i < specificity.length; i++) {
38
+ const value = specificity[i];
39
+ if (value !== undefined) {
40
+ root.specificity[i] = (root.specificity[i] ?? 0) + value;
41
+ }
42
+ }
43
+
44
+ // Return the root
45
+ return [root];
46
+ }
47
+ switch (component.type) {
48
+ case "id": // #id
49
+ case "namespace": // @namespace
50
+ case "universal":
51
+ // * - universal selector
52
+ return null;
53
+ case "type":
54
+ {
55
+ // div, span
56
+ if (component.name === options.selectorPrefix || component.name === "html") {
57
+ return parseComponents(rest, options, root, ref, specificity);
58
+ } else {
59
+ return null;
60
+ }
61
+ }
62
+ case "nesting":
63
+ // &
64
+ // The SelectorList should be flattened, so we can skip these
65
+ return parseComponents(rest, options, root, ref, specificity);
66
+ case "combinator":
67
+ {
68
+ // We only support the descendant combinator
69
+ if (component.value === "descendant") {
70
+ // Switch to now parsing a container query
71
+ ref = {};
72
+ return parseComponents(rest, options, root, ref, specificity);
73
+ }
74
+ return [];
75
+ }
76
+ case "pseudo-element":
77
+ {
78
+ switch (component.kind) {
79
+ case "selection":
80
+ case "placeholder":
81
+ {
82
+ specificity[_index.Specificity.PseudoElements] = (specificity[_index.Specificity.PseudoElements] ?? 0) + 1;
83
+ root.pseudoElementQuery ??= [];
84
+ root.pseudoElementQuery.push(component.kind);
85
+ return parseComponents(rest, options, root, ref, specificity);
86
+ }
87
+ default:
88
+ {
89
+ return [];
90
+ }
91
+ }
92
+ }
93
+ case "pseudo-class":
94
+ {
95
+ switch (component.kind) {
96
+ case "hover":
97
+ {
98
+ getPseudoClassesQuery(ref).h = 1;
99
+ specificity[_index.Specificity.PseudoClass] = (specificity[_index.Specificity.PseudoClass] ?? 0) + 1;
100
+ return parseComponents(rest, options, root, ref, specificity);
101
+ }
102
+ case "active":
103
+ {
104
+ getPseudoClassesQuery(ref).a = 1;
105
+ specificity[_index.Specificity.PseudoClass] = (specificity[_index.Specificity.PseudoClass] ?? 0) + 1;
106
+ return parseComponents(rest, options, root, ref, specificity);
107
+ }
108
+ case "focus":
109
+ {
110
+ getPseudoClassesQuery(ref).f = 1;
111
+ specificity[_index.Specificity.PseudoClass] = (specificity[_index.Specificity.PseudoClass] ?? 0) + 1;
112
+ return parseComponents(rest, options, root, ref, specificity);
113
+ }
114
+ case "disabled":
115
+ {
116
+ getAttributeQuery(ref).push(["a", "disabled"]);
117
+ specificity[_index.Specificity.PseudoClass] = (specificity[_index.Specificity.PseudoClass] ?? 0) + 1;
118
+ return parseComponents(rest, options, root, ref, specificity);
119
+ }
120
+ case "empty":
121
+ {
122
+ getAttributeQuery(ref).push(["a", "children", "!"]);
123
+ specificity[_index.Specificity.PseudoClass] = (specificity[_index.Specificity.PseudoClass] ?? 0) + 1;
124
+ return parseComponents(rest, options, root, ref, specificity);
125
+ }
126
+ case "where":
127
+ case "is":
128
+ {
129
+ // Now get the selectors inside the `is` or `where` pseudo-class
130
+ const isWhereContainerQueries = component.selectors.flatMap(selector => {
131
+ return parseIsWhereComponents(component.kind, selector) ?? [];
132
+ });
133
+
134
+ // Remember we're looping in reverse order,
135
+ // So `rest` contains the selectors BEFORE this one
136
+ const parents = parseComponents(rest, options, root, ref, specificity);
137
+ if (!parents) {
138
+ return null;
139
+ }
140
+
141
+ // Each parent selector should be combined with each pseudo-class selector
142
+ return parents.flatMap(parent => {
143
+ const originalParent = {
144
+ ...parent
145
+ };
146
+ return isWhereContainerQueries.map(containerQuery => {
147
+ const {
148
+ specificity,
149
+ m,
150
+ ...query
151
+ } = containerQuery;
152
+ parent = {
153
+ ...originalParent
154
+ };
155
+ parent.specificity = [...originalParent.specificity];
156
+ if (m && m.length > 1) {
157
+ parent.mediaQuery = originalParent.mediaQuery ? [["&", [...originalParent.mediaQuery, m]]] : [m];
158
+ }
159
+ if (component.kind === "is") {
160
+ for (let i = 0; i < specificity.length; i++) {
161
+ const value = specificity[i];
162
+ if (value !== undefined) {
163
+ parent.specificity[i] = (parent.specificity[i] ?? 0) + value;
164
+ }
165
+ }
166
+ }
167
+ if (query.a || query.p || query.n !== undefined) {
168
+ parent.containerQuery = [...(originalParent.containerQuery ?? [])];
169
+ parent.containerQuery.push(query);
170
+ }
171
+ return parent;
172
+ });
173
+ });
174
+ }
175
+ default:
176
+ {
177
+ return [];
178
+ }
179
+ }
180
+ }
181
+ case "attribute":
182
+ {
183
+ if (component.name === "dir") {
184
+ if (!component.operation) {
185
+ return [];
186
+ }
187
+ const operator = operatorMap[component.operation.operator];
188
+ if (operator !== "=") {
189
+ return [];
190
+ }
191
+ getMediaQuery(ref).push([operator, "dir", component.operation.value]);
192
+ return parseComponents(rest, options, root, ref, specificity);
193
+ } else {
194
+ // specificity[Specificity.ClassName] =
195
+ // (specificity[Specificity.ClassName] ?? 0) + 1;
196
+ const attributeQuery = component.name.startsWith("data-") ?
197
+ // [data-*] are turned into `dataSet` queries
198
+ ["d", toRNProperty(component.name.replace("data-", ""))] :
199
+ // Everything else is turned into `attribute` queries
200
+ ["a", toRNProperty(component.name)];
201
+ if (component.operation) {
202
+ let operator;
203
+ switch (component.operation.operator) {
204
+ case "equal":
205
+ operator = "=";
206
+ break;
207
+ case "includes":
208
+ operator = "~=";
209
+ break;
210
+ case "dash-match":
211
+ operator = "|=";
212
+ break;
213
+ case "prefix":
214
+ operator = "^=";
215
+ break;
216
+ case "substring":
217
+ operator = "*=";
218
+ break;
219
+ case "suffix":
220
+ operator = "$=";
221
+ break;
222
+ default:
223
+ component.operation.operator;
224
+ break;
225
+ }
226
+ if (operator) {
227
+ // Append the operator onto the attribute query
228
+ attributeQuery.push(operator, component.operation.value);
229
+ }
230
+ }
231
+ getAttributeQuery(ref).push(attributeQuery);
232
+ specificity[_index.Specificity.ClassName] = (specificity[_index.Specificity.ClassName] ?? 0) + 1;
233
+ return parseComponents(rest, options, root, ref, specificity);
234
+ }
235
+ }
236
+ case "class":
237
+ {
238
+ if (component.name === options.selectorPrefix) {
239
+ // Skip this one
240
+ return parseComponents(rest, options, root, ref, specificity);
241
+ } else if (!isContainerQuery(ref) && !ref.className) {
242
+ ref.className = component.name;
243
+ specificity[_index.Specificity.ClassName] = (specificity[_index.Specificity.ClassName] ?? 0) + 1;
244
+ return parseComponents(rest, options, root, ref, specificity);
245
+ } else if (!isContainerQuery(ref)) {
246
+ // Only the first className is used, the rest are attribute queries
247
+ getAttributeQuery(ref).unshift(["a", "className", "*=", component.name]);
248
+ } else {
249
+ let containerQueries = containerQueryMap.get(root);
250
+ if (!containerQueries) {
251
+ containerQueries = [];
252
+ root.containerQuery = containerQueries;
253
+ containerQueryMap.set(root, containerQueries);
254
+ }
255
+ if (!ref.n) {
256
+ containerQueries.unshift(ref);
257
+ }
258
+ ref.n = ref.n ? `${ref.n}.${component.name}` : `g:${component.name}`;
259
+ }
260
+ specificity[_index.Specificity.ClassName] = (specificity[_index.Specificity.ClassName] ?? 0) + 1;
261
+ return parseComponents(rest, options, root, ref, specificity);
262
+ }
263
+ }
264
+ }
265
+ function parseIsWhereComponents(type, selector, index = 0, queries) {
266
+ const component = selector[index];
267
+ if (!component || Array.isArray(component.type)) {
268
+ return queries ?? [];
269
+ }
270
+ switch (component.type) {
271
+ // These are not allowed in `is()` or `where()`
272
+ case "id": // #id
273
+ case "namespace": // @namespace
274
+ case "type": // div, span
275
+ case "nesting": // &
276
+ case "pseudo-element":
277
+ // ::selection, ::placeholder, etc
278
+ return null;
279
+ case "combinator":
280
+ {
281
+ // We only support the descendant combinator
282
+ if (component.value === "descendant") {
283
+ // Each "block" is a new container query
284
+ const children = parseIsWhereComponents(type, selector, index + 1);
285
+ return children && queries ? [...queries, ...children] : children;
286
+ }
287
+ return null;
288
+ }
289
+ case "universal":
290
+ {
291
+ // * - universal selector
292
+ if (index !== selector.length - 1) {
293
+ // We only accept it in the last position
294
+ return null;
295
+ }
296
+
297
+ // This was the only component, so we return the ref
298
+ if (selector.length === 1) {
299
+ return queries ?? [{
300
+ specificity: []
301
+ }];
302
+ }
303
+ const previous = selector[index - 1];
304
+
305
+ // If the previous component is not a descendant combinator,
306
+ if (!previous || previous.type !== "combinator" || previous.value !== "descendant") {
307
+ return null;
308
+ }
309
+ return parseIsWhereComponents(type, selector, index + 1, queries);
310
+ }
311
+ case "pseudo-class":
312
+ {
313
+ // const specificity = ref.specificity;
314
+
315
+ // specificity[Specificity.ClassName] =
316
+ // (specificity[Specificity.ClassName] ?? 0) + 1;
317
+ switch (component.kind) {
318
+ case "dir":
319
+ {
320
+ queries ??= [{
321
+ specificity: []
322
+ }];
323
+ queries.forEach(query => {
324
+ getMediaQuery(query).push(["=", "dir", component.direction]);
325
+ });
326
+ return parseIsWhereComponents(type, selector, index + 1, queries);
327
+ }
328
+ case "hover":
329
+ {
330
+ queries ??= [{
331
+ specificity: []
332
+ }];
333
+ queries.forEach(query => {
334
+ getPseudoClassesQuery(query).h = 1;
335
+ });
336
+ return parseIsWhereComponents(type, selector, index + 1, queries);
337
+ }
338
+ case "active":
339
+ {
340
+ queries ??= [{
341
+ specificity: []
342
+ }];
343
+ queries.forEach(query => {
344
+ getPseudoClassesQuery(query).a = 1;
345
+ });
346
+ return parseIsWhereComponents(type, selector, index + 1, queries);
347
+ }
348
+ case "focus":
349
+ {
350
+ queries ??= [{
351
+ specificity: []
352
+ }];
353
+ queries.forEach(query => {
354
+ getPseudoClassesQuery(query).f = 1;
355
+ });
356
+ return parseIsWhereComponents(type, selector, index + 1, queries);
357
+ }
358
+ case "disabled":
359
+ {
360
+ queries ??= [{
361
+ specificity: []
362
+ }];
363
+ queries.forEach(query => {
364
+ getAttributeQuery(query).push(["a", "disabled"]);
365
+ });
366
+ return parseIsWhereComponents(type, selector, index + 1, queries);
367
+ }
368
+ case "empty":
369
+ {
370
+ queries ??= [{
371
+ specificity: []
372
+ }];
373
+ queries.forEach(query => {
374
+ getAttributeQuery(query).push(["a", "children", "!"]);
375
+ });
376
+ return parseIsWhereComponents(type, selector, index + 1, queries);
377
+ }
378
+ case "where":
379
+ case "is":
380
+ {
381
+ // Now get the selectors inside the `is` or `where` pseudo-class
382
+ queries = component.selectors.flatMap(selector => {
383
+ return parseIsWhereComponents(type, selector, 0, queries) ?? [];
384
+ });
385
+ return parseIsWhereComponents(type, selector, index + 1, queries);
386
+ }
387
+ default:
388
+ {
389
+ return null;
390
+ }
391
+ }
392
+ }
393
+ case "attribute":
394
+ {
395
+ if (component.name === "dir") {
396
+ return null;
397
+ }
398
+ if (type !== "where") {
399
+ // specificity[Specificity.ClassName] =
400
+ // (specificity[Specificity.ClassName] ?? 0) + 1;
401
+ }
402
+ const attributeQuery = component.name.startsWith("data-") ?
403
+ // [data-*] are turned into `dataSet` queries
404
+ ["d", toRNProperty(component.name.replace("data-", ""))] :
405
+ // Everything else is turned into `attribute` queries
406
+ ["a", toRNProperty(component.name)];
407
+ if (component.operation) {
408
+ const operator = operatorMap[component.operation.operator];
409
+ // Append the operator onto the attribute query
410
+ attributeQuery.push(operator, component.operation.value);
411
+ }
412
+ queries ??= [{
413
+ specificity: []
414
+ }];
415
+ for (const query of queries) {
416
+ if (type === "is") {
417
+ query.specificity[_index.Specificity.ClassName] = (query.specificity[_index.Specificity.ClassName] ?? 0) + 1;
418
+ }
419
+ getAttributeQuery(query).push(attributeQuery);
420
+ }
421
+ return parseIsWhereComponents(type, selector, index + 1, queries);
422
+ }
423
+ case "class":
424
+ {
425
+ // In `is` and `where` selectors, the ref will always be a container query
426
+ queries ??= [{
427
+ specificity: []
428
+ }];
429
+ for (const query of queries) {
430
+ if (type === "is") {
431
+ query.specificity[_index.Specificity.ClassName] = (query.specificity[_index.Specificity.ClassName] ?? 0) + 1;
432
+ }
433
+ query.n = query.n ? `${query.n}.${component.name}` : `g:${component.name}`;
434
+ }
435
+ return parseIsWhereComponents(type, selector, index + 1, queries);
436
+ }
437
+ }
438
+ }
439
+ function isContainerQuery(value) {
440
+ return !("type" in value);
441
+ }
442
+ function getPseudoClassesQuery(key) {
443
+ let pseudoClassesQuery = pseudoClassesQueryMap.get(key);
444
+ if (!pseudoClassesQuery) {
445
+ if ("type" in key) {
446
+ pseudoClassesQuery = {};
447
+ key.pseudoClassesQuery = pseudoClassesQuery;
448
+ } else {
449
+ key.p ??= {};
450
+ pseudoClassesQuery = key.p;
451
+ }
452
+ pseudoClassesQueryMap.set(key, pseudoClassesQuery);
453
+ }
454
+ return pseudoClassesQuery;
455
+ }
456
+ function getAttributeQuery(key) {
457
+ let attributeQuery = attributeQueryMap.get(key);
458
+ if (!attributeQuery) {
459
+ if ("type" in key) {
460
+ attributeQuery = [];
461
+ key.attributeQuery = attributeQuery;
462
+ } else {
463
+ key.a ??= [];
464
+ attributeQuery = key.a;
465
+ }
466
+ attributeQueryMap.set(key, attributeQuery);
467
+ }
468
+ return attributeQuery;
469
+ }
470
+ function getMediaQuery(key) {
471
+ let mediaQuery = mediaQueryMap.get(key);
472
+ if (!mediaQuery) {
473
+ if ("type" in key) {
474
+ mediaQuery = [];
475
+ key.mediaQuery = mediaQuery;
476
+ } else {
477
+ mediaQuery = [];
478
+ key.m ??= ["&", mediaQuery];
479
+ }
480
+ mediaQueryMap.set(key, mediaQuery);
481
+ }
482
+ return mediaQuery;
483
+ }
484
+ function isRootVariableSelector([first, second]) {
485
+ return first && !second && first.type === "pseudo-class" && first.kind === "root";
486
+ }
487
+ function isUniversalSelector([first, second]) {
488
+ return first && first.type === "universal" && !second;
489
+ }
490
+ function toRNProperty(str) {
491
+ return str.replace(/^-rn-/, "").replace(/-./g, x => x[1]?.toUpperCase() ?? "");
492
+ }
493
+ const operatorMap = {
494
+ "equal": "=",
495
+ "includes": "~=",
496
+ "dash-match": "|=",
497
+ "prefix": "^=",
498
+ "substring": "*=",
499
+ "suffix": "$="
500
+ };
501
+ //# sourceMappingURL=selector-builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_index","require","containerQueryMap","WeakMap","attributeQueryMap","mediaQueryMap","pseudoClassesQueryMap","getClassNameSelectors","selectors","options","specificity","root","type","length","flatMap","selector","isRootVariableSelector","isUniversalSelector","parseComponents","reverse","component","rest","ref","Array","isArray","i","value","undefined","name","selectorPrefix","kind","Specificity","PseudoElements","pseudoElementQuery","push","getPseudoClassesQuery","h","PseudoClass","a","f","getAttributeQuery","isWhereContainerQueries","parseIsWhereComponents","parents","parent","originalParent","map","containerQuery","m","query","mediaQuery","p","n","operation","operator","operatorMap","getMediaQuery","attributeQuery","startsWith","toRNProperty","replace","ClassName","isContainerQuery","className","unshift","containerQueries","get","set","index","queries","children","previous","forEach","direction","key","pseudoClassesQuery","first","second","str","x","toUpperCase"],"sourceRoot":"../../../src","sources":["compiler/selector-builder.ts"],"mappings":"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","ignoreList":[]}
@@ -11,11 +11,11 @@ var _specificity = require("../runtime/utils/specificity.js");
11
11
  /**
12
12
  * Turns a CSS selector into a `react-native-css` selector.
13
13
  */
14
- function getSelectors(selectorList, isDarkMode, options, selectors = []) {
14
+ function getSelectors(selectorList, isDarkMode, builder, selectors = []) {
15
15
  for (let cssSelector of selectorList) {
16
- // Ignore `:is()`, and just process its selectors
17
- if (isIsPseudoClass(cssSelector)) {
18
- getSelectors(cssSelector[0].selectors, isDarkMode, options, selectors);
16
+ // Ignore `:is()` & `:where()`, and just process its selectors
17
+ if (isIsPseudoClass(cssSelector) || isWherePseudoClass(cssSelector)) {
18
+ getSelectors(cssSelector[0].selectors, isDarkMode, builder, selectors);
19
19
  } else if (
20
20
  // Matches: :root {}
21
21
  isRootVariableSelector(cssSelector)) {
@@ -79,7 +79,7 @@ function getSelectors(selectorList, isDarkMode, options, selectors = []) {
79
79
  // ["=", "prefers-color-scheme", "dark"],
80
80
  // ]);
81
81
  } else {
82
- const selector = classNameSelector(cssSelector, options);
82
+ const selector = classNameSelector(cssSelector, builder.getOptions());
83
83
  if (selector === null) {
84
84
  continue;
85
85
  }
@@ -134,11 +134,12 @@ function classNameSelector(selector, options) {
134
134
  switch (component.type) {
135
135
  case "universal":
136
136
  case "namespace":
137
- case "nesting":
138
137
  case "id":
139
138
  case "pseudo-element":
140
139
  // We don't support these selectors at all
141
140
  return null;
141
+ case "nesting":
142
+ continue;
142
143
  case "class":
143
144
  {
144
145
  if (!primaryClassName) {
@@ -307,6 +308,9 @@ function classNameSelector(selector, options) {
307
308
  function isIsPseudoClass(selector) {
308
309
  return selector.length === 1 && selector[0]?.type === "pseudo-class" && selector[0].kind === "is";
309
310
  }
311
+ function isWherePseudoClass(selector) {
312
+ return selector.length === 1 && selector[0]?.type === "pseudo-class" && selector[0].kind === "where";
313
+ }
310
314
 
311
315
  // function isDarkModeMediaQuery(query?: MediaCondition): boolean {
312
316
  // if (!query) return false;
@@ -1 +1 @@
1
- {"version":3,"names":["_specificity","require","getSelectors","selectorList","isDarkMode","options","selectors","cssSelector","isIsPseudoClass","isRootVariableSelector","push","type","subtype","isRootDarkVariableSelector","isDefaultVariableSelector","selector","classNameSelector","primaryClassName","specificity","mediaQuery","containerQuery","attributeQuery","pseudoClassesQuery","currentContainerQuery","isInClassBlock","newBlock","getAttributeQuery","a","getPseudoClassesQuery","p","component","reverse","name","unshift","selectorPrefix","n","Specificity","ClassName","kind","h","f","startsWith","toRNProperty","replace","operation","operator","value","undefined","className","length","first","second","includes","str","x","toUpperCase"],"sourceRoot":"../../../src","sources":["compiler/selectors.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_specificity","require","getSelectors","selectorList","isDarkMode","builder","selectors","cssSelector","isIsPseudoClass","isWherePseudoClass","isRootVariableSelector","push","type","subtype","isRootDarkVariableSelector","isDefaultVariableSelector","selector","classNameSelector","getOptions","options","primaryClassName","specificity","mediaQuery","containerQuery","attributeQuery","pseudoClassesQuery","currentContainerQuery","isInClassBlock","newBlock","getAttributeQuery","a","getPseudoClassesQuery","p","component","reverse","name","unshift","selectorPrefix","n","Specificity","ClassName","kind","h","f","startsWith","toRNProperty","replace","operation","operator","value","undefined","className","length","first","second","includes","str","x","toUpperCase"],"sourceRoot":"../../../src","sources":["compiler/selectors.ts"],"mappings":"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","ignoreList":[]}