react-native-css 3.0.0-nightly.8dd703d → 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 (368) hide show
  1. package/dist/commonjs/compiler/compiler.js +12 -5
  2. package/dist/commonjs/compiler/compiler.js.map +1 -1
  3. package/dist/commonjs/compiler/declarations.js +89 -82
  4. package/dist/commonjs/compiler/declarations.js.map +1 -1
  5. package/dist/commonjs/compiler/inheritance.test.js +10 -10
  6. package/dist/commonjs/compiler/inheritance.test.js.map +1 -1
  7. package/dist/commonjs/compiler/pseudo-elements.js +49 -0
  8. package/dist/commonjs/compiler/pseudo-elements.js.map +1 -0
  9. package/dist/commonjs/compiler/selector-builder.js +124 -80
  10. package/dist/commonjs/compiler/selector-builder.js.map +1 -1
  11. package/dist/commonjs/compiler/stylesheet.js +18 -6
  12. package/dist/commonjs/compiler/stylesheet.js.map +1 -1
  13. package/dist/commonjs/compiler/supports.js +27 -0
  14. package/dist/commonjs/compiler/supports.js.map +1 -0
  15. package/dist/commonjs/components/ActivityIndicator.js +22 -0
  16. package/dist/commonjs/components/ActivityIndicator.js.map +1 -0
  17. package/dist/commonjs/components/Button.js +22 -0
  18. package/dist/commonjs/components/Button.js.map +1 -0
  19. package/dist/commonjs/components/FlatList.js +19 -0
  20. package/dist/commonjs/components/FlatList.js.map +1 -0
  21. package/dist/commonjs/components/Image.js +17 -0
  22. package/dist/commonjs/components/Image.js.map +1 -0
  23. package/dist/commonjs/components/Switch.js +17 -0
  24. package/dist/commonjs/components/Switch.js.map +1 -0
  25. package/dist/commonjs/components/TextInput.js +17 -0
  26. package/dist/commonjs/components/TextInput.js.map +1 -0
  27. package/dist/commonjs/components/index.js +48 -0
  28. package/dist/commonjs/components/index.js.map +1 -1
  29. package/dist/commonjs/components/react-native-safe-area-context.js +17 -0
  30. package/dist/commonjs/components/react-native-safe-area-context.js.map +1 -0
  31. package/dist/commonjs/components/react-native-safe-area-context.native.js +53 -0
  32. package/dist/commonjs/components/react-native-safe-area-context.native.js.map +1 -0
  33. package/dist/commonjs/jest/index.js +5 -5
  34. package/dist/commonjs/jest/index.js.map +1 -1
  35. package/dist/commonjs/metro/index.js +6 -3
  36. package/dist/commonjs/metro/index.js.map +1 -1
  37. package/dist/commonjs/metro/injection-code.js +5 -10
  38. package/dist/commonjs/metro/injection-code.js.map +1 -1
  39. package/dist/commonjs/metro/metro-transformer.js +18 -8
  40. package/dist/commonjs/metro/metro-transformer.js.map +1 -1
  41. package/dist/commonjs/metro/resolver.js +3 -0
  42. package/dist/commonjs/metro/resolver.js.map +1 -1
  43. package/dist/commonjs/poison.pill.js +10 -10
  44. package/dist/commonjs/runtime/native/api.js +8 -2
  45. package/dist/commonjs/runtime/native/api.js.map +1 -1
  46. package/dist/commonjs/runtime/native/conditions/index.js +4 -2
  47. package/dist/commonjs/runtime/native/conditions/index.js.map +1 -1
  48. package/dist/commonjs/runtime/native/conditions/media-query.js +14 -11
  49. package/dist/commonjs/runtime/native/conditions/media-query.js.map +1 -1
  50. package/dist/commonjs/runtime/native/react/rules.js +26 -20
  51. package/dist/commonjs/runtime/native/react/rules.js.map +1 -1
  52. package/dist/commonjs/runtime/native/reactivity.js +11 -0
  53. package/dist/commonjs/runtime/native/reactivity.js.map +1 -1
  54. package/dist/commonjs/runtime/native/styles/calculate-props.js +25 -8
  55. package/dist/commonjs/runtime/native/styles/calculate-props.js.map +1 -1
  56. package/dist/commonjs/runtime/native/styles/functions/calc.js +97 -57
  57. package/dist/commonjs/runtime/native/styles/functions/calc.js.map +1 -1
  58. package/dist/commonjs/runtime/native/styles/functions/index.js +22 -0
  59. package/dist/commonjs/runtime/native/styles/functions/index.js.map +1 -1
  60. package/dist/commonjs/runtime/native/styles/functions/numeric-functions.js +32 -0
  61. package/dist/commonjs/runtime/native/styles/functions/numeric-functions.js.map +1 -0
  62. package/dist/commonjs/runtime/native/styles/functions/string-functions.js +23 -0
  63. package/dist/commonjs/runtime/native/styles/functions/string-functions.js.map +1 -0
  64. package/dist/commonjs/runtime/native/styles/functions/transform-functions.js +91 -53
  65. package/dist/commonjs/runtime/native/styles/functions/transform-functions.js.map +1 -1
  66. package/dist/commonjs/runtime/native/styles/shorthands/animation.js +2 -2
  67. package/dist/commonjs/runtime/native/styles/shorthands/animation.js.map +1 -1
  68. package/dist/commonjs/runtime/native/styles/shorthands/box-shadow.js +14 -4
  69. package/dist/commonjs/runtime/native/styles/shorthands/box-shadow.js.map +1 -1
  70. package/dist/commonjs/runtime/native/styles/shorthands/transform.js +1 -1
  71. package/dist/commonjs/runtime/native/styles/shorthands/transform.js.map +1 -1
  72. package/dist/commonjs/runtime/native/styles/variables.js +3 -3
  73. package/dist/commonjs/runtime/native/styles/variables.js.map +1 -1
  74. package/dist/commonjs/runtime/utils/objects.js +6 -18
  75. package/dist/commonjs/runtime/utils/objects.js.map +1 -1
  76. package/dist/commonjs/runtime/web/api.js.map +1 -1
  77. package/dist/commonjs/style-collection/index.js +110 -0
  78. package/dist/commonjs/style-collection/index.js.map +1 -0
  79. package/dist/commonjs/{runtime/native → style-collection}/root.js +2 -2
  80. package/dist/commonjs/style-collection/root.js.map +1 -0
  81. package/dist/module/compiler/compiler.js +12 -5
  82. package/dist/module/compiler/compiler.js.map +1 -1
  83. package/dist/module/compiler/compiler.types.js +1 -1
  84. package/dist/module/compiler/compiler.types.js.map +1 -1
  85. package/dist/module/compiler/declarations.js +89 -82
  86. package/dist/module/compiler/declarations.js.map +1 -1
  87. package/dist/module/compiler/inheritance.test.js +10 -10
  88. package/dist/module/compiler/inheritance.test.js.map +1 -1
  89. package/dist/module/compiler/pseudo-elements.js +44 -0
  90. package/dist/module/compiler/pseudo-elements.js.map +1 -0
  91. package/dist/module/compiler/selector-builder.js +124 -80
  92. package/dist/module/compiler/selector-builder.js.map +1 -1
  93. package/dist/module/compiler/stylesheet.js +18 -6
  94. package/dist/module/compiler/stylesheet.js.map +1 -1
  95. package/dist/module/compiler/supports.js +23 -0
  96. package/dist/module/compiler/supports.js.map +1 -0
  97. package/dist/module/components/ActivityIndicator.js +17 -0
  98. package/dist/module/components/ActivityIndicator.js.map +1 -0
  99. package/dist/module/components/Button.js +17 -0
  100. package/dist/module/components/Button.js.map +1 -0
  101. package/dist/module/components/FlatList.js +14 -0
  102. package/dist/module/components/FlatList.js.map +1 -0
  103. package/dist/module/components/Image.js +12 -0
  104. package/dist/module/components/Image.js.map +1 -0
  105. package/dist/module/components/Switch.js +12 -0
  106. package/dist/module/components/Switch.js.map +1 -0
  107. package/dist/module/components/TextInput.js +12 -0
  108. package/dist/module/components/TextInput.js.map +1 -0
  109. package/dist/module/components/index.js +6 -0
  110. package/dist/module/components/index.js.map +1 -1
  111. package/dist/module/components/react-native-safe-area-context.js +4 -0
  112. package/dist/module/components/react-native-safe-area-context.js.map +1 -0
  113. package/dist/module/components/react-native-safe-area-context.native.js +36 -0
  114. package/dist/module/components/react-native-safe-area-context.native.js.map +1 -0
  115. package/dist/module/jest/index.js +2 -2
  116. package/dist/module/jest/index.js.map +1 -1
  117. package/dist/module/metro/index.js +6 -3
  118. package/dist/module/metro/index.js.map +1 -1
  119. package/dist/module/metro/injection-code.js +5 -10
  120. package/dist/module/metro/injection-code.js.map +1 -1
  121. package/dist/module/metro/metro-transformer.js +18 -8
  122. package/dist/module/metro/metro-transformer.js.map +1 -1
  123. package/dist/module/metro/resolver.js +3 -0
  124. package/dist/module/metro/resolver.js.map +1 -1
  125. package/dist/module/poison.pill.js +10 -10
  126. package/dist/module/runtime/native/api.js +2 -1
  127. package/dist/module/runtime/native/api.js.map +1 -1
  128. package/dist/module/runtime/native/conditions/index.js +4 -2
  129. package/dist/module/runtime/native/conditions/index.js.map +1 -1
  130. package/dist/module/runtime/native/conditions/media-query.js +15 -12
  131. package/dist/module/runtime/native/conditions/media-query.js.map +1 -1
  132. package/dist/module/runtime/native/react/rules.js +24 -19
  133. package/dist/module/runtime/native/react/rules.js.map +1 -1
  134. package/dist/module/runtime/native/reactivity.js +11 -0
  135. package/dist/module/runtime/native/reactivity.js.map +1 -1
  136. package/dist/module/runtime/native/styles/calculate-props.js +25 -8
  137. package/dist/module/runtime/native/styles/calculate-props.js.map +1 -1
  138. package/dist/module/runtime/native/styles/functions/calc.js +97 -56
  139. package/dist/module/runtime/native/styles/functions/calc.js.map +1 -1
  140. package/dist/module/runtime/native/styles/functions/index.js +2 -0
  141. package/dist/module/runtime/native/styles/functions/index.js.map +1 -1
  142. package/dist/module/runtime/native/styles/functions/numeric-functions.js +25 -0
  143. package/dist/module/runtime/native/styles/functions/numeric-functions.js.map +1 -0
  144. package/dist/module/runtime/native/styles/functions/string-functions.js +18 -0
  145. package/dist/module/runtime/native/styles/functions/string-functions.js.map +1 -0
  146. package/dist/module/runtime/native/styles/functions/transform-functions.js +91 -53
  147. package/dist/module/runtime/native/styles/functions/transform-functions.js.map +1 -1
  148. package/dist/module/runtime/native/styles/shorthands/animation.js +1 -1
  149. package/dist/module/runtime/native/styles/shorthands/animation.js.map +1 -1
  150. package/dist/module/runtime/native/styles/shorthands/box-shadow.js +14 -4
  151. package/dist/module/runtime/native/styles/shorthands/box-shadow.js.map +1 -1
  152. package/dist/module/runtime/native/styles/shorthands/transform.js +1 -1
  153. package/dist/module/runtime/native/styles/shorthands/transform.js.map +1 -1
  154. package/dist/module/runtime/native/styles/variables.js +1 -1
  155. package/dist/module/runtime/native/styles/variables.js.map +1 -1
  156. package/dist/module/runtime/utils/objects.js +6 -18
  157. package/dist/module/runtime/utils/objects.js.map +1 -1
  158. package/dist/module/runtime/web/api.js.map +1 -1
  159. package/dist/module/style-collection/index.js +95 -0
  160. package/dist/module/style-collection/index.js.map +1 -0
  161. package/dist/module/{runtime/native → style-collection}/root.js +2 -2
  162. package/dist/module/style-collection/root.js.map +1 -0
  163. package/dist/typescript/commonjs/src/compiler/compiler.d.ts +1 -1
  164. package/dist/typescript/commonjs/src/compiler/compiler.d.ts.map +1 -1
  165. package/dist/typescript/commonjs/src/compiler/compiler.types.d.ts +11 -13
  166. package/dist/typescript/commonjs/src/compiler/compiler.types.d.ts.map +1 -1
  167. package/dist/typescript/commonjs/src/compiler/declarations.d.ts +4 -2
  168. package/dist/typescript/commonjs/src/compiler/declarations.d.ts.map +1 -1
  169. package/dist/typescript/commonjs/src/compiler/pseudo-elements.d.ts +4 -0
  170. package/dist/typescript/commonjs/src/compiler/pseudo-elements.d.ts.map +1 -0
  171. package/dist/typescript/commonjs/src/compiler/selector-builder.d.ts +1 -0
  172. package/dist/typescript/commonjs/src/compiler/selector-builder.d.ts.map +1 -1
  173. package/dist/typescript/commonjs/src/compiler/stylesheet.d.ts +2 -2
  174. package/dist/typescript/commonjs/src/compiler/stylesheet.d.ts.map +1 -1
  175. package/dist/typescript/commonjs/src/compiler/supports.d.ts +3 -0
  176. package/dist/typescript/commonjs/src/compiler/supports.d.ts.map +1 -0
  177. package/dist/typescript/commonjs/src/components/ActivityIndicator.d.ts +13 -0
  178. package/dist/typescript/commonjs/src/components/ActivityIndicator.d.ts.map +1 -0
  179. package/dist/typescript/commonjs/src/components/Button.d.ts +13 -0
  180. package/dist/typescript/commonjs/src/components/Button.d.ts.map +1 -0
  181. package/dist/typescript/commonjs/src/components/FlatList.d.ts +10 -0
  182. package/dist/typescript/commonjs/src/components/FlatList.d.ts.map +1 -0
  183. package/dist/typescript/commonjs/src/components/Image.d.ts +8 -0
  184. package/dist/typescript/commonjs/src/components/Image.d.ts.map +1 -0
  185. package/dist/typescript/commonjs/src/components/Switch.d.ts +8 -0
  186. package/dist/typescript/commonjs/src/components/Switch.d.ts.map +1 -0
  187. package/dist/typescript/commonjs/src/components/TextInput.d.ts +8 -0
  188. package/dist/typescript/commonjs/src/components/TextInput.d.ts.map +1 -0
  189. package/dist/typescript/commonjs/src/components/index.d.ts +6 -0
  190. package/dist/typescript/commonjs/src/components/index.d.ts.map +1 -1
  191. package/dist/typescript/commonjs/src/components/react-native-safe-area-context.d.ts +2 -0
  192. package/dist/typescript/commonjs/src/components/react-native-safe-area-context.d.ts.map +1 -0
  193. package/dist/typescript/commonjs/src/components/react-native-safe-area-context.native.d.ts +4 -0
  194. package/dist/typescript/commonjs/src/components/react-native-safe-area-context.native.d.ts.map +1 -0
  195. package/dist/typescript/commonjs/src/jest/index.d.ts +3 -3
  196. package/dist/typescript/commonjs/src/jest/index.d.ts.map +1 -1
  197. package/dist/typescript/commonjs/src/metro/index.d.ts.map +1 -1
  198. package/dist/typescript/commonjs/src/metro/injection-code.d.ts +4 -7
  199. package/dist/typescript/commonjs/src/metro/injection-code.d.ts.map +1 -1
  200. package/dist/typescript/commonjs/src/metro/metro-transformer.d.ts +4 -1
  201. package/dist/typescript/commonjs/src/metro/metro-transformer.d.ts.map +1 -1
  202. package/dist/typescript/commonjs/src/metro/resolver.d.ts.map +1 -1
  203. package/dist/typescript/commonjs/src/runtime/native/api.d.ts +3 -1
  204. package/dist/typescript/commonjs/src/runtime/native/api.d.ts.map +1 -1
  205. package/dist/typescript/commonjs/src/runtime/native/react/rules.d.ts +2 -2
  206. package/dist/typescript/commonjs/src/runtime/native/react/rules.d.ts.map +1 -1
  207. package/dist/typescript/commonjs/src/runtime/native/reactivity.d.ts.map +1 -1
  208. package/dist/typescript/commonjs/src/runtime/native/styles/calculate-props.d.ts +1 -1
  209. package/dist/typescript/commonjs/src/runtime/native/styles/calculate-props.d.ts.map +1 -1
  210. package/dist/typescript/commonjs/src/runtime/native/styles/functions/calc.d.ts.map +1 -1
  211. package/dist/typescript/commonjs/src/runtime/native/styles/functions/index.d.ts +2 -0
  212. package/dist/typescript/commonjs/src/runtime/native/styles/functions/index.d.ts.map +1 -1
  213. package/dist/typescript/commonjs/src/runtime/native/styles/functions/numeric-functions.d.ts +5 -0
  214. package/dist/typescript/commonjs/src/runtime/native/styles/functions/numeric-functions.d.ts.map +1 -0
  215. package/dist/typescript/commonjs/src/runtime/native/styles/functions/string-functions.d.ts +3 -0
  216. package/dist/typescript/commonjs/src/runtime/native/styles/functions/string-functions.d.ts.map +1 -0
  217. package/dist/typescript/commonjs/src/runtime/native/styles/functions/transform-functions.d.ts.map +1 -1
  218. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/animation.d.ts.map +1 -1
  219. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/box-shadow.d.ts.map +1 -1
  220. package/dist/typescript/commonjs/src/runtime/native/styles/shorthands/transform.d.ts.map +1 -1
  221. package/dist/typescript/commonjs/src/runtime/native/styles/variables.d.ts.map +1 -1
  222. package/dist/typescript/commonjs/src/runtime/utils/objects.d.ts.map +1 -1
  223. package/dist/typescript/commonjs/src/runtime/web/api.d.ts +1 -1
  224. package/dist/typescript/commonjs/src/runtime/web/api.d.ts.map +1 -1
  225. package/dist/typescript/commonjs/src/style-collection/index.d.ts +14 -0
  226. package/dist/typescript/commonjs/src/style-collection/index.d.ts.map +1 -0
  227. package/dist/typescript/commonjs/src/{runtime/native → style-collection}/root.d.ts +1 -1
  228. package/dist/typescript/commonjs/src/style-collection/root.d.ts.map +1 -0
  229. package/dist/typescript/module/src/compiler/compiler.d.ts +1 -1
  230. package/dist/typescript/module/src/compiler/compiler.d.ts.map +1 -1
  231. package/dist/typescript/module/src/compiler/compiler.types.d.ts +11 -13
  232. package/dist/typescript/module/src/compiler/compiler.types.d.ts.map +1 -1
  233. package/dist/typescript/module/src/compiler/declarations.d.ts +4 -2
  234. package/dist/typescript/module/src/compiler/declarations.d.ts.map +1 -1
  235. package/dist/typescript/module/src/compiler/pseudo-elements.d.ts +4 -0
  236. package/dist/typescript/module/src/compiler/pseudo-elements.d.ts.map +1 -0
  237. package/dist/typescript/module/src/compiler/selector-builder.d.ts +1 -0
  238. package/dist/typescript/module/src/compiler/selector-builder.d.ts.map +1 -1
  239. package/dist/typescript/module/src/compiler/stylesheet.d.ts +2 -2
  240. package/dist/typescript/module/src/compiler/stylesheet.d.ts.map +1 -1
  241. package/dist/typescript/module/src/compiler/supports.d.ts +3 -0
  242. package/dist/typescript/module/src/compiler/supports.d.ts.map +1 -0
  243. package/dist/typescript/module/src/components/ActivityIndicator.d.ts +13 -0
  244. package/dist/typescript/module/src/components/ActivityIndicator.d.ts.map +1 -0
  245. package/dist/typescript/module/src/components/Button.d.ts +13 -0
  246. package/dist/typescript/module/src/components/Button.d.ts.map +1 -0
  247. package/dist/typescript/module/src/components/FlatList.d.ts +10 -0
  248. package/dist/typescript/module/src/components/FlatList.d.ts.map +1 -0
  249. package/dist/typescript/module/src/components/Image.d.ts +8 -0
  250. package/dist/typescript/module/src/components/Image.d.ts.map +1 -0
  251. package/dist/typescript/module/src/components/Switch.d.ts +8 -0
  252. package/dist/typescript/module/src/components/Switch.d.ts.map +1 -0
  253. package/dist/typescript/module/src/components/TextInput.d.ts +8 -0
  254. package/dist/typescript/module/src/components/TextInput.d.ts.map +1 -0
  255. package/dist/typescript/module/src/components/index.d.ts +6 -0
  256. package/dist/typescript/module/src/components/index.d.ts.map +1 -1
  257. package/dist/typescript/module/src/components/react-native-safe-area-context.d.ts +2 -0
  258. package/dist/typescript/module/src/components/react-native-safe-area-context.d.ts.map +1 -0
  259. package/dist/typescript/module/src/components/react-native-safe-area-context.native.d.ts +4 -0
  260. package/dist/typescript/module/src/components/react-native-safe-area-context.native.d.ts.map +1 -0
  261. package/dist/typescript/module/src/jest/index.d.ts +3 -3
  262. package/dist/typescript/module/src/jest/index.d.ts.map +1 -1
  263. package/dist/typescript/module/src/metro/index.d.ts.map +1 -1
  264. package/dist/typescript/module/src/metro/injection-code.d.ts +4 -7
  265. package/dist/typescript/module/src/metro/injection-code.d.ts.map +1 -1
  266. package/dist/typescript/module/src/metro/metro-transformer.d.ts +4 -1
  267. package/dist/typescript/module/src/metro/metro-transformer.d.ts.map +1 -1
  268. package/dist/typescript/module/src/metro/resolver.d.ts.map +1 -1
  269. package/dist/typescript/module/src/runtime/native/api.d.ts +3 -1
  270. package/dist/typescript/module/src/runtime/native/api.d.ts.map +1 -1
  271. package/dist/typescript/module/src/runtime/native/react/rules.d.ts +2 -2
  272. package/dist/typescript/module/src/runtime/native/react/rules.d.ts.map +1 -1
  273. package/dist/typescript/module/src/runtime/native/reactivity.d.ts.map +1 -1
  274. package/dist/typescript/module/src/runtime/native/styles/calculate-props.d.ts +1 -1
  275. package/dist/typescript/module/src/runtime/native/styles/calculate-props.d.ts.map +1 -1
  276. package/dist/typescript/module/src/runtime/native/styles/functions/calc.d.ts.map +1 -1
  277. package/dist/typescript/module/src/runtime/native/styles/functions/index.d.ts +2 -0
  278. package/dist/typescript/module/src/runtime/native/styles/functions/index.d.ts.map +1 -1
  279. package/dist/typescript/module/src/runtime/native/styles/functions/numeric-functions.d.ts +5 -0
  280. package/dist/typescript/module/src/runtime/native/styles/functions/numeric-functions.d.ts.map +1 -0
  281. package/dist/typescript/module/src/runtime/native/styles/functions/string-functions.d.ts +3 -0
  282. package/dist/typescript/module/src/runtime/native/styles/functions/string-functions.d.ts.map +1 -0
  283. package/dist/typescript/module/src/runtime/native/styles/functions/transform-functions.d.ts.map +1 -1
  284. package/dist/typescript/module/src/runtime/native/styles/shorthands/animation.d.ts.map +1 -1
  285. package/dist/typescript/module/src/runtime/native/styles/shorthands/box-shadow.d.ts.map +1 -1
  286. package/dist/typescript/module/src/runtime/native/styles/shorthands/transform.d.ts.map +1 -1
  287. package/dist/typescript/module/src/runtime/native/styles/variables.d.ts.map +1 -1
  288. package/dist/typescript/module/src/runtime/utils/objects.d.ts.map +1 -1
  289. package/dist/typescript/module/src/runtime/web/api.d.ts +1 -1
  290. package/dist/typescript/module/src/runtime/web/api.d.ts.map +1 -1
  291. package/dist/typescript/module/src/style-collection/index.d.ts +14 -0
  292. package/dist/typescript/module/src/style-collection/index.d.ts.map +1 -0
  293. package/dist/typescript/module/src/{runtime/native → style-collection}/root.d.ts +1 -1
  294. package/dist/typescript/module/src/style-collection/root.d.ts.map +1 -0
  295. package/package.json +30 -14
  296. package/src/compiler/compiler.ts +11 -3
  297. package/src/compiler/compiler.types.ts +11 -14
  298. package/src/compiler/declarations.ts +157 -121
  299. package/src/compiler/inheritance.test.ts +9 -9
  300. package/src/compiler/pseudo-elements.ts +54 -0
  301. package/src/compiler/selector-builder.ts +136 -81
  302. package/src/compiler/stylesheet.ts +26 -11
  303. package/src/compiler/supports.ts +26 -0
  304. package/src/components/ActivityIndicator.tsx +27 -0
  305. package/src/components/Button.tsx +22 -0
  306. package/src/components/FlatList.tsx +21 -0
  307. package/src/components/Image.tsx +17 -0
  308. package/src/components/Switch.tsx +17 -0
  309. package/src/components/TextInput.tsx +17 -0
  310. package/src/components/index.tsx +6 -0
  311. package/src/components/react-native-safe-area-context.native.tsx +40 -0
  312. package/src/components/react-native-safe-area-context.tsx +1 -0
  313. package/src/jest/index.ts +3 -2
  314. package/src/metro/index.ts +8 -6
  315. package/src/metro/injection-code.ts +6 -10
  316. package/src/metro/metro-transformer.ts +27 -10
  317. package/src/metro/resolver.ts +8 -0
  318. package/src/poison.pill.ts +10 -10
  319. package/src/runtime/native/api.ts +3 -1
  320. package/src/runtime/native/conditions/index.ts +4 -2
  321. package/src/runtime/native/conditions/media-query.ts +16 -12
  322. package/src/runtime/native/react/rules.ts +27 -17
  323. package/src/runtime/native/reactivity.ts +12 -0
  324. package/src/runtime/native/styles/calculate-props.ts +27 -6
  325. package/src/runtime/native/styles/functions/calc.ts +94 -70
  326. package/src/runtime/native/styles/functions/index.ts +2 -0
  327. package/src/runtime/native/styles/functions/numeric-functions.ts +38 -0
  328. package/src/runtime/native/styles/functions/string-functions.ts +22 -0
  329. package/src/runtime/native/styles/functions/transform-functions.ts +68 -35
  330. package/src/runtime/native/styles/shorthands/animation.ts +2 -1
  331. package/src/runtime/native/styles/shorthands/box-shadow.ts +34 -14
  332. package/src/runtime/native/styles/shorthands/transform.ts +3 -1
  333. package/src/runtime/native/styles/variables.ts +5 -1
  334. package/src/runtime/utils/objects.ts +10 -19
  335. package/src/runtime/web/api.ts +1 -1
  336. package/src/style-collection/index.ts +142 -0
  337. package/src/{runtime/native → style-collection}/root.ts +6 -2
  338. package/dist/commonjs/compiler/attributes.test.js +0 -20
  339. package/dist/commonjs/compiler/attributes.test.js.map +0 -1
  340. package/dist/commonjs/doctor/index.js +0 -6
  341. package/dist/commonjs/doctor/index.js.map +0 -1
  342. package/dist/commonjs/runtime/native/injection.js +0 -99
  343. package/dist/commonjs/runtime/native/injection.js.map +0 -1
  344. package/dist/commonjs/runtime/native/root.js.map +0 -1
  345. package/dist/module/compiler/attributes.test.js +0 -20
  346. package/dist/module/compiler/attributes.test.js.map +0 -1
  347. package/dist/module/doctor/index.js +0 -4
  348. package/dist/module/doctor/index.js.map +0 -1
  349. package/dist/module/runtime/native/injection.js +0 -94
  350. package/dist/module/runtime/native/injection.js.map +0 -1
  351. package/dist/module/runtime/native/root.js.map +0 -1
  352. package/dist/typescript/commonjs/src/compiler/attributes.test.d.ts +0 -2
  353. package/dist/typescript/commonjs/src/compiler/attributes.test.d.ts.map +0 -1
  354. package/dist/typescript/commonjs/src/doctor/index.d.ts +0 -2
  355. package/dist/typescript/commonjs/src/doctor/index.d.ts.map +0 -1
  356. package/dist/typescript/commonjs/src/runtime/native/injection.d.ts +0 -16
  357. package/dist/typescript/commonjs/src/runtime/native/injection.d.ts.map +0 -1
  358. package/dist/typescript/commonjs/src/runtime/native/root.d.ts.map +0 -1
  359. package/dist/typescript/module/src/compiler/attributes.test.d.ts +0 -2
  360. package/dist/typescript/module/src/compiler/attributes.test.d.ts.map +0 -1
  361. package/dist/typescript/module/src/doctor/index.d.ts +0 -2
  362. package/dist/typescript/module/src/doctor/index.d.ts.map +0 -1
  363. package/dist/typescript/module/src/runtime/native/injection.d.ts +0 -16
  364. package/dist/typescript/module/src/runtime/native/injection.d.ts.map +0 -1
  365. package/dist/typescript/module/src/runtime/native/root.d.ts.map +0 -1
  366. package/src/compiler/attributes.test.ts +0 -28
  367. package/src/doctor/index.ts +0 -1
  368. package/src/runtime/native/injection.ts +0 -131
@@ -13,6 +13,7 @@ var _declarations = require("./declarations.js");
13
13
  var _keyframes = require("./keyframes.js");
14
14
  var _mediaQuery = require("./media-query.js");
15
15
  var _stylesheet = require("./stylesheet.js");
16
+ var _supports = require("./supports.js");
16
17
  /* eslint-disable */
17
18
 
18
19
  const defaultLogger = (0, _debug.debug)("react-native-css:compiler");
@@ -89,10 +90,10 @@ function compile(code, options = {}) {
89
90
 
90
91
  // Use the lightningcss library to traverse the CSS AST and extract style declarations and animations
91
92
  (0, _lightningcss.transform)({
92
- filename: "style.css",
93
- // This is ignored, but required
94
93
  code: typeof code === "string" ? new TextEncoder().encode(code) : code,
95
- visitor
94
+ visitor,
95
+ filename: options.filename ?? "style.css",
96
+ projectRoot: options.projectRoot ?? process.cwd()
96
97
  });
97
98
  return {
98
99
  stylesheet: () => builder.getNativeStyleSheet(),
@@ -186,6 +187,13 @@ function extractRule(rule, builder) {
186
187
  extractRule(layerRule, builder);
187
188
  }
188
189
  break;
190
+ case "supports":
191
+ if ((0, _supports.supportsConditionValid)(rule.value.condition)) {
192
+ for (const layerRule of rule.value.rules) {
193
+ extractRule(layerRule, builder);
194
+ }
195
+ }
196
+ break;
189
197
  case "custom":
190
198
  case "font-face":
191
199
  case "font-palette-values":
@@ -198,7 +206,6 @@ function extractRule(rule, builder) {
198
206
  case "unknown":
199
207
  case "import":
200
208
  case "page":
201
- case "supports":
202
209
  case "counter-style":
203
210
  case "moz-document":
204
211
  case "nesting":
@@ -264,7 +271,7 @@ function extractContainer(containerRule, builder) {
264
271
  m: (0, _containerQuery.parseContainerCondition)(containerRule.condition, builder)
265
272
  };
266
273
  if (containerRule.name) {
267
- query.n = containerRule.name;
274
+ query.n = `c:${containerRule.name}`;
268
275
  }
269
276
  builder.addContainerQuery(query);
270
277
  for (const rule of containerRule.rules) {
@@ -1 +1 @@
1
- {"version":3,"names":["_nodeUtil","require","_debug","_lightningcss","_atRules","_containerQuery","_declarations","_keyframes","_mediaQuery","_stylesheet","defaultLogger","debug","compile","code","options","logger","isLoggerEnabled","enabled","Boolean","features","Object","assign","selectorPrefix","startsWith","slice","JSON","stringify","process","env","NODE_ENV","toString","builder","StylesheetBuilder","customAtRules","body","visitor","Rule","rule","maybeMutateReactNativeOptions","StyleSheetExit","sheet","rules","length","inspect","depth","colors","compact","extractRule","stripUnusedVariables","onVarUsage","token","type","value","arguments","forEach","varUsage","add","name","ident","fallback","fallbackValues","varObj","Declaration","decl","property","lightningcss","filename","TextEncoder","encode","stylesheet","getNativeStyleSheet","warnings","getWarnings","extractKeyFrames","extractContainer","extractMedia","declarationBlock","declarations","newNestedRule","declaration","parseDeclaration","applyRuleToSelectors","importantDeclarations","important","mapping","parsePropAtRule","fork","selectors","newRule","nestedRule","layerRule","mediaRule","media","mediaQuery","query","mediaQueries","mediaType","qualifier","condition","push","m","parseMediaQuery","containerRule","parseContainerCondition","n","addContainerQuery"],"sourceRoot":"../../../src","sources":["compiler/compiler.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_nodeUtil","require","_debug","_lightningcss","_atRules","_containerQuery","_declarations","_keyframes","_mediaQuery","_stylesheet","_supports","defaultLogger","debug","compile","code","options","logger","isLoggerEnabled","enabled","Boolean","features","Object","assign","selectorPrefix","startsWith","slice","JSON","stringify","process","env","NODE_ENV","toString","builder","StylesheetBuilder","customAtRules","body","visitor","Rule","rule","maybeMutateReactNativeOptions","StyleSheetExit","sheet","rules","length","inspect","depth","colors","compact","extractRule","stripUnusedVariables","onVarUsage","token","type","value","arguments","forEach","varUsage","add","name","ident","fallback","fallbackValues","varObj","Declaration","decl","property","lightningcss","TextEncoder","encode","filename","projectRoot","cwd","stylesheet","getNativeStyleSheet","warnings","getWarnings","extractKeyFrames","extractContainer","extractMedia","declarationBlock","declarations","newNestedRule","declaration","parseDeclaration","applyRuleToSelectors","importantDeclarations","important","mapping","parsePropAtRule","fork","selectors","newRule","nestedRule","layerRule","supportsConditionValid","condition","mediaRule","media","mediaQuery","query","mediaQueries","mediaType","qualifier","push","m","parseMediaQuery","containerRule","parseContainerCondition","n","addContainerQuery"],"sourceRoot":"../../../src","sources":["compiler/compiler.ts"],"mappings":"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","ignoreList":[]}
@@ -112,6 +112,7 @@ const parsers = {
112
112
  "border-block-end-width": parseBorderSideWidthDeclaration,
113
113
  "border-block-start": parseBorderBlockStart,
114
114
  "border-block-start-color": parseColorDeclaration,
115
+ "border-block-start-style": parseBorderStyleDeclaration,
115
116
  "border-block-start-width": parseBorderSideWidthDeclaration,
116
117
  "border-block-style": parseBorderBlockStyle,
117
118
  "border-block-width": parseBorderBlockWidth,
@@ -261,6 +262,7 @@ const parsers = {
261
262
  "translate": parseTranslate,
262
263
  "user-select": parseUserSelect,
263
264
  "vertical-align": parseVerticalAlign,
265
+ "visibility": parseVisibility,
264
266
  "width": parseSizeDeclaration,
265
267
  "z-index": parseZIndex
266
268
  };
@@ -381,54 +383,54 @@ function parseBorderSide({
381
383
  function parseBorderBlock({
382
384
  value
383
385
  }, builder) {
384
- builder.addDescriptor("border-top-color", parseColor(value.color, builder));
385
- builder.addDescriptor("border-bottom-color", parseColor(value.color, builder));
386
- builder.addDescriptor("border-top-width", parseBorderSideWidth(value.width, builder));
387
- builder.addDescriptor("border-bottom-width", parseBorderSideWidth(value.width, builder));
386
+ builder.addDescriptor("border-block-color", parseColor(value.color, builder));
387
+ builder.addDescriptor("border-block-width", parseBorderSideWidth(value.width, builder));
388
+ builder.addDescriptor("border-block-style", parseBorderStyle(value.style, builder));
388
389
  }
389
390
  function parseBorderBlockStart({
390
391
  value
391
392
  }, builder) {
392
- builder.addDescriptor("border-top-color", parseColor(value.color, builder));
393
- builder.addDescriptor("border-top-width", parseBorderSideWidth(value.width, builder));
393
+ builder.addDescriptor("border-block-start-color", parseColor(value.color, builder));
394
+ builder.addDescriptor("border-block-start-width", parseBorderSideWidth(value.width, builder));
394
395
  }
395
396
  function parseBorderBlockEnd({
396
397
  value
397
398
  }, builder) {
398
- builder.addDescriptor("border-bottom-color", parseColor(value.color, builder));
399
- builder.addDescriptor("border-bottom-width", parseBorderSideWidth(value.width, builder));
399
+ builder.addDescriptor("border-block-end-color", parseColor(value.color, builder));
400
+ builder.addDescriptor("border-block-end-width", parseBorderSideWidth(value.width, builder));
400
401
  }
401
402
  function parseBorderInline({
402
403
  value
403
404
  }, builder) {
404
- builder.addDescriptor("border-left-color", parseColor(value.color, builder));
405
- builder.addDescriptor("border-right-color", parseColor(value.color, builder));
406
- builder.addDescriptor("border-left-width", parseBorderSideWidth(value.width, builder));
407
- builder.addDescriptor("border-right-width", parseBorderSideWidth(value.width, builder));
405
+ builder.addDescriptor("border-inline-color", parseColor(value.color, builder));
406
+ builder.addDescriptor("border-inline-width", parseBorderSideWidth(value.width, builder));
407
+ builder.addDescriptor("border-inline-style", parseBorderStyle(value.style, builder));
408
408
  }
409
409
  function parseBorderInlineStart({
410
410
  value
411
411
  }, builder) {
412
- builder.addDescriptor("border-left-color", parseColor(value.color, builder));
413
- builder.addDescriptor("border-left-width", parseBorderSideWidth(value.width, builder));
412
+ builder.addDescriptor("border-inline-start-color", parseColor(value.color, builder));
413
+ builder.addDescriptor("border-inline-start-width", parseBorderSideWidth(value.width, builder));
414
+ builder.addDescriptor("border-inline-start-style", parseBorderStyle(value.style, builder));
414
415
  }
415
416
  function parseBorderInlineEnd({
416
417
  value
417
418
  }, builder) {
418
- builder.addDescriptor("border-right-color", parseColor(value.color, builder));
419
- builder.addDescriptor("border-right-width", parseBorderSideWidth(value.width, builder));
419
+ builder.addDescriptor("border-inline-end-color", parseColor(value.color, builder));
420
+ builder.addDescriptor("border-inline-end-width", parseBorderSideWidth(value.width, builder));
421
+ builder.addDescriptor("border-inline-end-style", parseBorderStyle(value.style, builder));
420
422
  }
421
423
  function parseBorderInlineWidth(declaration, builder) {
422
- builder.addDescriptor("border-left-width", parseBorderSideWidth(declaration.value.start, builder));
423
- builder.addDescriptor("border-right-width", parseBorderSideWidth(declaration.value.end, builder));
424
+ builder.addDescriptor("border-inline-width", parseBorderSideWidth(declaration.value.start, builder));
424
425
  }
425
426
  function parseBorderInlineStyle(declaration, builder) {
426
427
  if (typeof declaration.value === "string") {
427
- builder.addDescriptor("border-style", parseBorderStyle(declaration.value, builder));
428
+ builder.addDescriptor(declaration.property, parseBorderStyle(declaration.value, builder));
428
429
  } else if (declaration.value.start === declaration.value.end) {
429
- builder.addDescriptor("border-style", parseBorderStyle(declaration.value.start, builder));
430
+ builder.addDescriptor(declaration.property, parseBorderStyle(declaration.value.start, builder));
430
431
  } else {
431
- builder.addWarning("property", "border-inline-style");
432
+ builder.addDescriptor("border-inline-start-style", parseBorderStyle(declaration.value.start, builder));
433
+ builder.addDescriptor("border-inline-end-style", parseBorderStyle(declaration.value.end, builder));
432
434
  }
433
435
  }
434
436
  function parseFlexFlow({
@@ -678,6 +680,12 @@ function parseCustomDeclaration(declaration, builder) {
678
680
  builder.addDescriptor(property, parseUnparsed(declaration.value.value, builder, property));
679
681
  } else if (property === "-rn-ripple-style") {
680
682
  builder.addDescriptor(property, parseUnparsed(declaration.value.value, builder, property) === "borderless");
683
+ } else if (property === "object-fit") {
684
+ // https://github.com/parcel-bundler/lightningcss/issues/1046
685
+ parseObjectFit(declaration.value, builder);
686
+ } else if (property === "object-position") {
687
+ // https://github.com/parcel-bundler/lightningcss/issues/1047
688
+ parseObjectPosition(declaration.value, builder);
681
689
  } else if (validProperties.has(property) || property.startsWith("--") || property.startsWith("-rn-")) {
682
690
  builder.addDescriptor(property, parseUnparsed(declaration.value.value, builder, property));
683
691
  } else {
@@ -775,43 +783,44 @@ function parseUnparsed(tokenOrValue, builder, property, allowAuto = allowAutoPro
775
783
  case "function":
776
784
  {
777
785
  switch (tokenOrValue.value.name) {
778
- case "translate":
779
- case "rotate":
780
- case "rotateX":
781
- case "rotateY":
782
- case "skewX":
783
- case "skewY":
784
- case "scale":
785
- case "scaleX":
786
- case "scaleY":
787
- case "translateX":
788
- case "translateY":
789
- return unparsedFunction(tokenOrValue, builder, property, allowAuto);
790
786
  case "blur":
791
787
  case "brightness":
792
788
  case "contrast":
793
789
  case "cubic-bezier":
794
790
  case "drop-shadow":
795
791
  case "fontScale":
792
+ case "getPixelSizeForLayoutSize":
796
793
  case "grayscale":
797
794
  case "hsl":
798
795
  case "hsla":
799
796
  case "hue-rotate":
800
797
  case "invert":
801
- case "linear-gradient":
802
798
  case "opacity":
803
799
  case "pixelScale":
804
- case "getPixelSizeForLayoutSize":
805
800
  case "platformColor":
806
- case "radial-gradient":
807
801
  case "rgb":
808
802
  case "rgba":
803
+ case "rotate":
804
+ case "rotateX":
805
+ case "rotateY":
809
806
  case "roundToNearestPixel":
810
807
  case "saturate":
808
+ case "scale":
809
+ case "scaleX":
810
+ case "scaleY":
811
811
  case "sepia":
812
812
  case "shadow":
813
+ case "skewX":
814
+ case "skewY":
813
815
  case "steps":
816
+ case "translate":
817
+ case "translateX":
818
+ case "translateY":
814
819
  return unparsedFunction(tokenOrValue, builder, property, allowAuto);
820
+ case "linear-gradient":
821
+ case "radial-gradient":
822
+ // These are special as React Native requires the '-' in their name
823
+ return [{}, tokenOrValue.value.name, reduceParseUnparsed(tokenOrValue.value.arguments, builder, property, allowAuto)];
815
824
  case "hairlineWidth":
816
825
  return [{}, tokenOrValue.value.name, []];
817
826
  case "calc":
@@ -840,7 +849,7 @@ function parseUnparsed(tokenOrValue, builder, property, allowAuto = allowAutoPro
840
849
  builder.addWarning("value", value);
841
850
  return;
842
851
  }
843
- if (value === "inherit") {
852
+ if (value === "inherit" || value === "initial") {
844
853
  builder.addWarning("value", value);
845
854
  return;
846
855
  } else if (value === "currentcolor") {
@@ -1491,26 +1500,27 @@ function parseBorderStyle(value, builder) {
1491
1500
  return undefined;
1492
1501
  }
1493
1502
  function parseBorderBlockWidth(declaration, builder) {
1494
- builder.addDescriptor("border-top-width", parseBorderSideWidth(declaration.value.start, builder));
1495
- builder.addDescriptor("border-bottom-width", parseBorderSideWidth(declaration.value.end, builder));
1503
+ const start = parseBorderSideWidth(declaration.value.start, builder);
1504
+ const end = parseBorderSideWidth(declaration.value.end, builder);
1505
+ if (start === end) {
1506
+ builder.addDescriptor("border-block-width", start);
1507
+ } else {
1508
+ builder.addDescriptor("border-block-start-width", start);
1509
+ builder.addDescriptor("border-block-end-width", end);
1510
+ }
1496
1511
  }
1497
1512
  function parseBorderBlockStyle(declaration, builder) {
1498
- if (declaration.value.start === declaration.value.end) {
1499
- builder.addDescriptor("border-style", parseBorderStyle(declaration.value.start, builder));
1513
+ const start = parseBorderStyle(declaration.value.start, builder);
1514
+ const end = parseBorderStyle(declaration.value.end, builder);
1515
+ if (start == end) {
1516
+ builder.addDescriptor("border-block-style", start);
1500
1517
  } else {
1501
- builder.addWarning("property", "border-block-style");
1518
+ builder.addDescriptor("border-block-start-style", start);
1519
+ builder.addDescriptor("border-block-end-style", end);
1502
1520
  }
1503
1521
  }
1504
1522
  function parseBorderSideWidthDeclaration(declaration, builder) {
1505
- if (declaration.property.includes("block")) {
1506
- builder.addDescriptor(`border-${declaration.property.includes("start") ? "top" : "bottom"}-width`, parseBorderSideWidth(declaration.value, builder));
1507
- return;
1508
- } else if (declaration.property.includes("inline")) {
1509
- builder.addDescriptor(`border-${declaration.property.includes("start") ? "left" : "right"}-width`, parseBorderSideWidth(declaration.value, builder));
1510
- return;
1511
- } else {
1512
- return parseBorderSideWidth(declaration.value, builder);
1513
- }
1523
+ builder.addDescriptor(declaration.property, parseBorderSideWidth(declaration.value, builder));
1514
1524
  }
1515
1525
  function parseBorderSideWidth(value, builder) {
1516
1526
  if (value.type === "length") {
@@ -1828,8 +1838,7 @@ function parseCalcFn(name, tokens, builder, property) {
1828
1838
  }
1829
1839
  function parseCalcArguments([...args], builder, property) {
1830
1840
  const parsed = [];
1831
- let mode;
1832
- for (const [currentIndex, arg] of args.entries()) {
1841
+ for (const arg of args) {
1833
1842
  switch (arg.type) {
1834
1843
  case "env":
1835
1844
  {
@@ -1875,44 +1884,21 @@ function parseCalcArguments([...args], builder, property) {
1875
1884
  }
1876
1885
  break;
1877
1886
  case "percentage":
1878
- mode ??= "percentage";
1879
- if (mode !== "percentage") return;
1880
- parsed.push(`${arg.value.value * 100}%`);
1887
+ parsed.push(`${round(arg.value.value * 100)}%`);
1881
1888
  break;
1882
1889
  case "number":
1883
1890
  {
1884
- mode ??= "number";
1885
- if (mode !== "number") return;
1886
- parsed.push(arg.value.value);
1891
+ parsed.push(round(arg.value.value));
1887
1892
  break;
1888
1893
  }
1889
1894
  case "parenthesis-block":
1890
1895
  {
1891
- /**
1892
- * If we have a parenthesis block, we just treat it as a nested calc function
1893
- * Because there could be multiple parenthesis blocks, this is recursive
1894
- */
1895
- let closeParenthesisIndex = -1;
1896
- for (let index = args.length - 1; index > 0; index--) {
1897
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
1898
- const value = args[index];
1899
- if (value.type === "token" && value.value.type === "close-parenthesis") {
1900
- closeParenthesisIndex = index;
1901
- break;
1902
- }
1903
- }
1904
- if (closeParenthesisIndex === -1) {
1905
- return;
1906
- }
1907
- const innerCalcArgs = args
1908
- // Extract the inner calcArgs including the parenthesis. This mutates args
1909
- .splice(currentIndex, closeParenthesisIndex - currentIndex + 1)
1910
- // Then drop the surrounding parenthesis
1911
- .slice(1, -1);
1912
- parsed.push(parseCalcFn("calc", innerCalcArgs, builder, property));
1896
+ parsed.push("(");
1913
1897
  break;
1914
1898
  }
1915
1899
  case "close-parenthesis":
1900
+ parsed.push(")");
1901
+ break;
1916
1902
  case "string":
1917
1903
  case "function":
1918
1904
  case "ident":
@@ -2025,7 +2011,7 @@ function addTransitionValue(declaration, builder) {
2025
2011
  }
2026
2012
  case "transition-property":
2027
2013
  {
2028
- builder.addDescriptor(declaration.property, declaration.value.map(v => v.property).filter(v => v in parsers || v === "all" || v === "none").map(v => (0, _selectors.toRNProperty)(v)));
2014
+ builder.addDescriptor(declaration.property, declaration.value.map(v => v.property).filter(v => v in parsers && !["visibility"].includes(v) || v === "all" || v === "none").map(v => (0, _selectors.toRNProperty)(v)));
2029
2015
  return;
2030
2016
  }
2031
2017
  case "transition-duration":
@@ -2157,6 +2143,27 @@ function parseGradientItem(item, builder) {
2157
2143
  return parseLength(item.value, builder);
2158
2144
  }
2159
2145
  }
2146
+ function parseObjectFit(declaration, builder) {
2147
+ builder.addMapping({
2148
+ "object-fit": "contentFit"
2149
+ });
2150
+ builder.addDescriptor("object-fit", parseUnparsed(declaration.value, builder, "object-fit"));
2151
+ }
2152
+ function parseObjectPosition(declaration, builder) {
2153
+ builder.addMapping({
2154
+ "object-position": "contentPosition"
2155
+ });
2156
+ builder.addDescriptor("object-position", [{}, "join", [parseUnparsed(declaration.value, builder, "object-position"), " "]]);
2157
+ }
2158
+ function parseVisibility(declaration, builder) {
2159
+ if (declaration.value === "visible") {
2160
+ builder.addDescriptor("opacity", 1);
2161
+ } else if (declaration.value === "hidden") {
2162
+ builder.addDescriptor("opacity", 0);
2163
+ } else {
2164
+ builder.addWarning("value", declaration.value);
2165
+ }
2166
+ }
2160
2167
  function parseFilter(declaration, builder) {
2161
2168
  if (declaration.value.type === "none") {
2162
2169
  return "unset";