react-native-css 3.0.0-nightly.4723140 → 3.0.0-nightly.61014be

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 (494) hide show
  1. package/README.md +184 -1
  2. package/dist/commonjs/babel/allowedModules.js +23 -0
  3. package/dist/commonjs/babel/allowedModules.js.map +1 -0
  4. package/dist/commonjs/babel/helpers.js +18 -122
  5. package/dist/commonjs/babel/helpers.js.map +1 -1
  6. package/dist/commonjs/babel/import-plugin.js +62 -58
  7. package/dist/commonjs/babel/import-plugin.js.map +1 -1
  8. package/dist/commonjs/babel/react-native-web.js +118 -0
  9. package/dist/commonjs/babel/react-native-web.js.map +1 -0
  10. package/dist/commonjs/babel/react-native.js +118 -0
  11. package/dist/commonjs/babel/react-native.js.map +1 -0
  12. package/dist/commonjs/compiler/atRules.js +101 -0
  13. package/dist/commonjs/compiler/atRules.js.map +1 -0
  14. package/dist/commonjs/compiler/attributes.test.js +20 -0
  15. package/dist/commonjs/compiler/attributes.test.js.map +1 -0
  16. package/dist/commonjs/compiler/compiler.js +143 -344
  17. package/dist/commonjs/compiler/compiler.js.map +1 -1
  18. package/dist/commonjs/compiler/compiler.types.js.map +1 -1
  19. package/dist/commonjs/compiler/container-query.js +10 -10
  20. package/dist/commonjs/compiler/container-query.js.map +1 -1
  21. package/dist/commonjs/compiler/declarations.js +1233 -988
  22. package/dist/commonjs/compiler/declarations.js.map +1 -1
  23. package/dist/commonjs/compiler/inheritance.test.js +78 -0
  24. package/dist/commonjs/compiler/inheritance.test.js.map +1 -0
  25. package/dist/commonjs/compiler/keyframes.js +15 -24
  26. package/dist/commonjs/compiler/keyframes.js.map +1 -1
  27. package/dist/commonjs/compiler/media-query.js +22 -22
  28. package/dist/commonjs/compiler/media-query.js.map +1 -1
  29. package/dist/commonjs/compiler/selectors.js +264 -184
  30. package/dist/commonjs/compiler/selectors.js.map +1 -1
  31. package/dist/commonjs/compiler/split-by-delimiter.js +21 -0
  32. package/dist/commonjs/compiler/split-by-delimiter.js.map +1 -0
  33. package/dist/commonjs/compiler/stylesheet.js +385 -0
  34. package/dist/commonjs/compiler/stylesheet.js.map +1 -0
  35. package/dist/commonjs/components/Text.js +2 -0
  36. package/dist/commonjs/components/Text.js.map +1 -1
  37. package/dist/commonjs/components/View.js +2 -0
  38. package/dist/commonjs/components/View.js.map +1 -1
  39. package/dist/commonjs/index.js +11 -0
  40. package/dist/commonjs/index.js.map +1 -1
  41. package/dist/commonjs/jest/index.js +2 -18
  42. package/dist/commonjs/jest/index.js.map +1 -1
  43. package/dist/commonjs/metro/index.js +111 -50
  44. package/dist/commonjs/metro/index.js.map +1 -1
  45. package/dist/commonjs/metro/injection-code.js +24 -4
  46. package/dist/commonjs/metro/injection-code.js.map +1 -1
  47. package/dist/commonjs/metro/resolver.js +62 -0
  48. package/dist/commonjs/metro/resolver.js.map +1 -0
  49. package/dist/commonjs/metro/typescript.js +1 -1
  50. package/dist/commonjs/poison.pill.js +36 -0
  51. package/dist/commonjs/poison.pill.js.map +1 -0
  52. package/dist/commonjs/runtime/native/conditions/guards.js +10 -4
  53. package/dist/commonjs/runtime/native/conditions/guards.js.map +1 -1
  54. package/dist/commonjs/runtime/native/conditions/media-query.js +2 -0
  55. package/dist/commonjs/runtime/native/conditions/media-query.js.map +1 -1
  56. package/dist/commonjs/runtime/native/index.js +11 -1
  57. package/dist/commonjs/runtime/native/index.js.map +1 -1
  58. package/dist/commonjs/runtime/native/injection.js +18 -0
  59. package/dist/commonjs/runtime/native/injection.js.map +1 -1
  60. package/dist/commonjs/runtime/native/react/rules.js +23 -27
  61. package/dist/commonjs/runtime/native/react/rules.js.map +1 -1
  62. package/dist/commonjs/runtime/native/reactivity.js +1 -5
  63. package/dist/commonjs/runtime/native/reactivity.js.map +1 -1
  64. package/dist/commonjs/runtime/native/styles/animation.js +70 -72
  65. package/dist/commonjs/runtime/native/styles/animation.js.map +1 -1
  66. package/dist/commonjs/runtime/native/styles/border.js +12 -0
  67. package/dist/commonjs/runtime/native/styles/border.js.map +1 -0
  68. package/dist/commonjs/runtime/native/styles/box-shadow.js +40 -0
  69. package/dist/commonjs/runtime/native/styles/box-shadow.js.map +1 -0
  70. package/dist/commonjs/runtime/native/styles/calc.js +33 -61
  71. package/dist/commonjs/runtime/native/styles/calc.js.map +1 -1
  72. package/dist/commonjs/runtime/native/styles/calculate-props.js +123 -0
  73. package/dist/commonjs/runtime/native/styles/calculate-props.js.map +1 -0
  74. package/dist/commonjs/runtime/native/styles/constants.js +2 -1
  75. package/dist/commonjs/runtime/native/styles/constants.js.map +1 -1
  76. package/dist/commonjs/runtime/native/styles/filters.js +84 -0
  77. package/dist/commonjs/runtime/native/styles/filters.js.map +1 -0
  78. package/dist/commonjs/runtime/native/styles/index.js +2 -110
  79. package/dist/commonjs/runtime/native/styles/index.js.map +1 -1
  80. package/dist/commonjs/runtime/native/styles/platform-functions.js +46 -0
  81. package/dist/commonjs/runtime/native/styles/platform-functions.js.map +1 -0
  82. package/dist/commonjs/runtime/native/styles/resolve.js +46 -13
  83. package/dist/commonjs/runtime/native/styles/resolve.js.map +1 -1
  84. package/dist/commonjs/runtime/native/styles/shorthand.js +34 -17
  85. package/dist/commonjs/runtime/native/styles/shorthand.js.map +1 -1
  86. package/dist/commonjs/runtime/native/styles/transform.js +9 -3
  87. package/dist/commonjs/runtime/native/styles/transform.js.map +1 -1
  88. package/dist/commonjs/runtime/native/styles/units.js +7 -4
  89. package/dist/commonjs/runtime/native/styles/units.js.map +1 -1
  90. package/dist/commonjs/runtime/native/styles/variables.js +57 -36
  91. package/dist/commonjs/runtime/native/styles/variables.js.map +1 -1
  92. package/dist/commonjs/runtime/utils/objects.js +18 -5
  93. package/dist/commonjs/runtime/utils/objects.js.map +1 -1
  94. package/dist/commonjs/runtime/utils/style-value.js +7 -0
  95. package/dist/commonjs/runtime/utils/style-value.js.map +1 -1
  96. package/dist/commonjs/runtime/web/index.js +1 -0
  97. package/dist/commonjs/runtime/web/index.js.map +1 -1
  98. package/dist/commonjs/runtime/web/metro.js +6 -0
  99. package/dist/commonjs/runtime/web/metro.js.map +1 -0
  100. package/dist/module/babel/allowedModules.js +19 -0
  101. package/dist/module/babel/allowedModules.js.map +1 -0
  102. package/dist/module/babel/helpers.js +17 -116
  103. package/dist/module/babel/helpers.js.map +1 -1
  104. package/dist/module/babel/import-plugin.js +63 -59
  105. package/dist/module/babel/import-plugin.js.map +1 -1
  106. package/dist/module/babel/react-native-web.js +112 -0
  107. package/dist/module/babel/react-native-web.js.map +1 -0
  108. package/dist/module/babel/react-native.js +112 -0
  109. package/dist/module/babel/react-native.js.map +1 -0
  110. package/dist/module/compiler/atRules.js +97 -0
  111. package/dist/module/compiler/atRules.js.map +1 -0
  112. package/dist/module/compiler/attributes.test.js +20 -0
  113. package/dist/module/compiler/attributes.test.js.map +1 -0
  114. package/dist/module/compiler/compiler.js +144 -345
  115. package/dist/module/compiler/compiler.js.map +1 -1
  116. package/dist/module/compiler/compiler.types.js +0 -12
  117. package/dist/module/compiler/compiler.types.js.map +1 -1
  118. package/dist/module/compiler/container-query.js +10 -10
  119. package/dist/module/compiler/container-query.js.map +1 -1
  120. package/dist/module/compiler/declarations.js +1172 -992
  121. package/dist/module/compiler/declarations.js.map +1 -1
  122. package/dist/module/compiler/inheritance.test.js +78 -0
  123. package/dist/module/compiler/inheritance.test.js.map +1 -0
  124. package/dist/module/compiler/keyframes.js +15 -24
  125. package/dist/module/compiler/keyframes.js.map +1 -1
  126. package/dist/module/compiler/media-query.js +22 -22
  127. package/dist/module/compiler/media-query.js.map +1 -1
  128. package/dist/module/compiler/selectors.js +264 -184
  129. package/dist/module/compiler/selectors.js.map +1 -1
  130. package/dist/module/compiler/split-by-delimiter.js +17 -0
  131. package/dist/module/compiler/split-by-delimiter.js.map +1 -0
  132. package/dist/module/compiler/stylesheet.js +380 -0
  133. package/dist/module/compiler/stylesheet.js.map +1 -0
  134. package/dist/module/components/Text.js +1 -0
  135. package/dist/module/components/Text.js.map +1 -1
  136. package/dist/module/components/View.js +1 -0
  137. package/dist/module/components/View.js.map +1 -1
  138. package/dist/module/index.js +1 -0
  139. package/dist/module/index.js.map +1 -1
  140. package/dist/module/jest/index.js +3 -3
  141. package/dist/module/jest/index.js.map +1 -1
  142. package/dist/module/metro/index.js +111 -50
  143. package/dist/module/metro/index.js.map +1 -1
  144. package/dist/module/metro/injection-code.js +22 -3
  145. package/dist/module/metro/injection-code.js.map +1 -1
  146. package/dist/module/metro/resolver.js +57 -0
  147. package/dist/module/metro/resolver.js.map +1 -0
  148. package/dist/module/metro/typescript.js +1 -1
  149. package/dist/module/poison.pill.js +34 -0
  150. package/dist/module/poison.pill.js.map +1 -0
  151. package/dist/module/runtime/native/conditions/guards.js +10 -4
  152. package/dist/module/runtime/native/conditions/guards.js.map +1 -1
  153. package/dist/module/runtime/native/conditions/media-query.js +2 -0
  154. package/dist/module/runtime/native/conditions/media-query.js.map +1 -1
  155. package/dist/module/runtime/native/index.js +1 -2
  156. package/dist/module/runtime/native/index.js.map +1 -1
  157. package/dist/module/runtime/native/injection.js +18 -0
  158. package/dist/module/runtime/native/injection.js.map +1 -1
  159. package/dist/module/runtime/native/react/rules.js +22 -27
  160. package/dist/module/runtime/native/react/rules.js.map +1 -1
  161. package/dist/module/runtime/native/reactivity.js +1 -5
  162. package/dist/module/runtime/native/reactivity.js.map +1 -1
  163. package/dist/module/runtime/native/styles/animation.js +68 -71
  164. package/dist/module/runtime/native/styles/animation.js.map +1 -1
  165. package/dist/module/runtime/native/styles/border.js +8 -0
  166. package/dist/module/runtime/native/styles/border.js.map +1 -0
  167. package/dist/module/runtime/native/styles/box-shadow.js +35 -0
  168. package/dist/module/runtime/native/styles/box-shadow.js.map +1 -0
  169. package/dist/module/runtime/native/styles/calc.js +33 -62
  170. package/dist/module/runtime/native/styles/calc.js.map +1 -1
  171. package/dist/module/runtime/native/styles/calculate-props.js +118 -0
  172. package/dist/module/runtime/native/styles/calculate-props.js.map +1 -0
  173. package/dist/module/runtime/native/styles/constants.js +1 -0
  174. package/dist/module/runtime/native/styles/constants.js.map +1 -1
  175. package/dist/module/runtime/native/styles/filters.js +70 -0
  176. package/dist/module/runtime/native/styles/filters.js.map +1 -0
  177. package/dist/module/runtime/native/styles/index.js +2 -110
  178. package/dist/module/runtime/native/styles/index.js.map +1 -1
  179. package/dist/module/runtime/native/styles/platform-functions.js +36 -0
  180. package/dist/module/runtime/native/styles/platform-functions.js.map +1 -0
  181. package/dist/module/runtime/native/styles/resolve.js +47 -14
  182. package/dist/module/runtime/native/styles/resolve.js.map +1 -1
  183. package/dist/module/runtime/native/styles/shorthand.js +34 -17
  184. package/dist/module/runtime/native/styles/shorthand.js.map +1 -1
  185. package/dist/module/runtime/native/styles/transform.js +9 -3
  186. package/dist/module/runtime/native/styles/transform.js.map +1 -1
  187. package/dist/module/runtime/native/styles/units.js +7 -4
  188. package/dist/module/runtime/native/styles/units.js.map +1 -1
  189. package/dist/module/runtime/native/styles/variables.js +57 -36
  190. package/dist/module/runtime/native/styles/variables.js.map +1 -1
  191. package/dist/module/runtime/utils/objects.js +16 -4
  192. package/dist/module/runtime/utils/objects.js.map +1 -1
  193. package/dist/module/runtime/utils/style-value.js +6 -0
  194. package/dist/module/runtime/utils/style-value.js.map +1 -1
  195. package/dist/module/runtime/web/index.js +2 -0
  196. package/dist/module/runtime/web/index.js.map +1 -1
  197. package/dist/module/runtime/web/metro.js +5 -0
  198. package/dist/module/runtime/web/metro.js.map +1 -0
  199. package/dist/typescript/commonjs/example/app.config.d.ts +4 -0
  200. package/dist/typescript/commonjs/example/app.config.d.ts.map +1 -0
  201. package/dist/typescript/commonjs/example/src/App.d.ts.map +1 -1
  202. package/dist/typescript/commonjs/src/babel/allowedModules.d.ts +2 -0
  203. package/dist/typescript/commonjs/src/babel/allowedModules.d.ts.map +1 -0
  204. package/dist/typescript/commonjs/src/babel/helpers.d.ts +3 -8
  205. package/dist/typescript/commonjs/src/babel/helpers.d.ts.map +1 -1
  206. package/dist/typescript/commonjs/src/babel/import-plugin.d.ts.map +1 -1
  207. package/dist/typescript/commonjs/src/babel/react-native-web.d.ts +8 -0
  208. package/dist/typescript/commonjs/src/babel/react-native-web.d.ts.map +1 -0
  209. package/dist/typescript/commonjs/src/babel/react-native.d.ts +8 -0
  210. package/dist/typescript/commonjs/src/babel/react-native.d.ts.map +1 -0
  211. package/dist/typescript/commonjs/src/compiler/atRules.d.ts +34 -0
  212. package/dist/typescript/commonjs/src/compiler/atRules.d.ts.map +1 -0
  213. package/dist/typescript/commonjs/src/compiler/attributes.test.d.ts +2 -0
  214. package/dist/typescript/commonjs/src/compiler/attributes.test.d.ts.map +1 -0
  215. package/dist/typescript/commonjs/src/compiler/compiler.d.ts +1 -1
  216. package/dist/typescript/commonjs/src/compiler/compiler.d.ts.map +1 -1
  217. package/dist/typescript/commonjs/src/compiler/compiler.types.d.ts +27 -108
  218. package/dist/typescript/commonjs/src/compiler/compiler.types.d.ts.map +1 -1
  219. package/dist/typescript/commonjs/src/compiler/container-query.d.ts +2 -2
  220. package/dist/typescript/commonjs/src/compiler/container-query.d.ts.map +1 -1
  221. package/dist/typescript/commonjs/src/compiler/declarations.d.ts +118 -25
  222. package/dist/typescript/commonjs/src/compiler/declarations.d.ts.map +1 -1
  223. package/dist/typescript/commonjs/src/compiler/inheritance.test.d.ts +2 -0
  224. package/dist/typescript/commonjs/src/compiler/inheritance.test.d.ts.map +1 -0
  225. package/dist/typescript/commonjs/src/compiler/keyframes.d.ts +5 -4
  226. package/dist/typescript/commonjs/src/compiler/keyframes.d.ts.map +1 -1
  227. package/dist/typescript/commonjs/src/compiler/media-query.d.ts +4 -4
  228. package/dist/typescript/commonjs/src/compiler/media-query.d.ts.map +1 -1
  229. package/dist/typescript/commonjs/src/compiler/selectors.d.ts +10 -5
  230. package/dist/typescript/commonjs/src/compiler/selectors.d.ts.map +1 -1
  231. package/dist/typescript/commonjs/src/compiler/split-by-delimiter.d.ts +2 -0
  232. package/dist/typescript/commonjs/src/compiler/split-by-delimiter.d.ts.map +1 -0
  233. package/dist/typescript/commonjs/src/compiler/stylesheet.d.ts +54 -0
  234. package/dist/typescript/commonjs/src/compiler/stylesheet.d.ts.map +1 -0
  235. package/dist/typescript/commonjs/src/components/Text.d.ts +1 -1
  236. package/dist/typescript/commonjs/src/components/Text.d.ts.map +1 -1
  237. package/dist/typescript/commonjs/src/components/View.d.ts +1 -1
  238. package/dist/typescript/commonjs/src/components/View.d.ts.map +1 -1
  239. package/dist/typescript/commonjs/src/index.d.ts +1 -0
  240. package/dist/typescript/commonjs/src/index.d.ts.map +1 -1
  241. package/dist/typescript/commonjs/src/jest/index.d.ts +2 -3
  242. package/dist/typescript/commonjs/src/jest/index.d.ts.map +1 -1
  243. package/dist/typescript/commonjs/src/metro/index.d.ts +5 -4
  244. package/dist/typescript/commonjs/src/metro/index.d.ts.map +1 -1
  245. package/dist/typescript/commonjs/src/metro/injection-code.d.ts +15 -1
  246. package/dist/typescript/commonjs/src/metro/injection-code.d.ts.map +1 -1
  247. package/dist/typescript/commonjs/src/metro/resolver.d.ts +4 -0
  248. package/dist/typescript/commonjs/src/metro/resolver.d.ts.map +1 -0
  249. package/dist/typescript/commonjs/src/poison.pill.d.ts +2 -0
  250. package/dist/typescript/commonjs/src/poison.pill.d.ts.map +1 -0
  251. package/dist/typescript/commonjs/src/runtime/native/api.d.ts +1 -1
  252. package/dist/typescript/commonjs/src/runtime/native/conditions/guards.d.ts.map +1 -1
  253. package/dist/typescript/commonjs/src/runtime/native/index.d.ts +1 -1
  254. package/dist/typescript/commonjs/src/runtime/native/index.d.ts.map +1 -1
  255. package/dist/typescript/commonjs/src/runtime/native/react/rules.d.ts +2 -1
  256. package/dist/typescript/commonjs/src/runtime/native/react/rules.d.ts.map +1 -1
  257. package/dist/typescript/commonjs/src/runtime/native/react/useNativeCss.d.ts +1 -1
  258. package/dist/typescript/commonjs/src/runtime/native/reactivity.d.ts +1 -1
  259. package/dist/typescript/commonjs/src/runtime/native/reactivity.d.ts.map +1 -1
  260. package/dist/typescript/commonjs/src/runtime/native/styles/animation.d.ts +3 -2
  261. package/dist/typescript/commonjs/src/runtime/native/styles/animation.d.ts.map +1 -1
  262. package/dist/typescript/commonjs/src/runtime/native/styles/border.d.ts +2 -0
  263. package/dist/typescript/commonjs/src/runtime/native/styles/border.d.ts.map +1 -0
  264. package/dist/typescript/commonjs/src/runtime/native/styles/box-shadow.d.ts +3 -0
  265. package/dist/typescript/commonjs/src/runtime/native/styles/box-shadow.d.ts.map +1 -0
  266. package/dist/typescript/commonjs/src/runtime/native/styles/calc.d.ts.map +1 -1
  267. package/dist/typescript/commonjs/src/runtime/native/styles/calculate-props.d.ts +10 -0
  268. package/dist/typescript/commonjs/src/runtime/native/styles/calculate-props.d.ts.map +1 -0
  269. package/dist/typescript/commonjs/src/runtime/native/styles/constants.d.ts +1 -0
  270. package/dist/typescript/commonjs/src/runtime/native/styles/constants.d.ts.map +1 -1
  271. package/dist/typescript/commonjs/src/runtime/native/styles/filters.d.ts +12 -0
  272. package/dist/typescript/commonjs/src/runtime/native/styles/filters.d.ts.map +1 -0
  273. package/dist/typescript/commonjs/src/runtime/native/styles/index.d.ts +3 -4
  274. package/dist/typescript/commonjs/src/runtime/native/styles/index.d.ts.map +1 -1
  275. package/dist/typescript/commonjs/src/runtime/native/styles/platform-functions.d.ts +8 -0
  276. package/dist/typescript/commonjs/src/runtime/native/styles/platform-functions.d.ts.map +1 -0
  277. package/dist/typescript/commonjs/src/runtime/native/styles/resolve.d.ts +6 -2
  278. package/dist/typescript/commonjs/src/runtime/native/styles/resolve.d.ts.map +1 -1
  279. package/dist/typescript/commonjs/src/runtime/native/styles/shorthand.d.ts +3 -4
  280. package/dist/typescript/commonjs/src/runtime/native/styles/shorthand.d.ts.map +1 -1
  281. package/dist/typescript/commonjs/src/runtime/native/styles/text-shadow.d.ts +1 -1
  282. package/dist/typescript/commonjs/src/runtime/native/styles/text-shadow.d.ts.map +1 -1
  283. package/dist/typescript/commonjs/src/runtime/native/styles/transform.d.ts.map +1 -1
  284. package/dist/typescript/commonjs/src/runtime/native/styles/units.d.ts.map +1 -1
  285. package/dist/typescript/commonjs/src/runtime/native/styles/variables.d.ts +1 -1
  286. package/dist/typescript/commonjs/src/runtime/native/styles/variables.d.ts.map +1 -1
  287. package/dist/typescript/commonjs/src/runtime/runtime.types.d.ts +0 -15
  288. package/dist/typescript/commonjs/src/runtime/runtime.types.d.ts.map +1 -1
  289. package/dist/typescript/commonjs/src/runtime/utils/components.d.ts +1 -1
  290. package/dist/typescript/commonjs/src/runtime/utils/objects.d.ts +2 -1
  291. package/dist/typescript/commonjs/src/runtime/utils/objects.d.ts.map +1 -1
  292. package/dist/typescript/commonjs/src/runtime/utils/style-value.d.ts +3 -2
  293. package/dist/typescript/commonjs/src/runtime/utils/style-value.d.ts.map +1 -1
  294. package/dist/typescript/commonjs/src/runtime/web/index.d.ts +1 -0
  295. package/dist/typescript/commonjs/src/runtime/web/index.d.ts.map +1 -1
  296. package/dist/typescript/commonjs/src/runtime/web/metro.d.ts +2 -0
  297. package/dist/typescript/commonjs/src/runtime/web/metro.d.ts.map +1 -0
  298. package/dist/typescript/module/example/app.config.d.ts +4 -0
  299. package/dist/typescript/module/example/app.config.d.ts.map +1 -0
  300. package/dist/typescript/module/example/src/App.d.ts.map +1 -1
  301. package/dist/typescript/module/src/babel/allowedModules.d.ts +2 -0
  302. package/dist/typescript/module/src/babel/allowedModules.d.ts.map +1 -0
  303. package/dist/typescript/module/src/babel/helpers.d.ts +3 -8
  304. package/dist/typescript/module/src/babel/helpers.d.ts.map +1 -1
  305. package/dist/typescript/module/src/babel/import-plugin.d.ts.map +1 -1
  306. package/dist/typescript/module/src/babel/react-native-web.d.ts +8 -0
  307. package/dist/typescript/module/src/babel/react-native-web.d.ts.map +1 -0
  308. package/dist/typescript/module/src/babel/react-native.d.ts +8 -0
  309. package/dist/typescript/module/src/babel/react-native.d.ts.map +1 -0
  310. package/dist/typescript/module/src/compiler/atRules.d.ts +34 -0
  311. package/dist/typescript/module/src/compiler/atRules.d.ts.map +1 -0
  312. package/dist/typescript/module/src/compiler/attributes.test.d.ts +2 -0
  313. package/dist/typescript/module/src/compiler/attributes.test.d.ts.map +1 -0
  314. package/dist/typescript/module/src/compiler/compiler.d.ts +1 -1
  315. package/dist/typescript/module/src/compiler/compiler.d.ts.map +1 -1
  316. package/dist/typescript/module/src/compiler/compiler.types.d.ts +27 -108
  317. package/dist/typescript/module/src/compiler/compiler.types.d.ts.map +1 -1
  318. package/dist/typescript/module/src/compiler/container-query.d.ts +2 -2
  319. package/dist/typescript/module/src/compiler/container-query.d.ts.map +1 -1
  320. package/dist/typescript/module/src/compiler/declarations.d.ts +118 -25
  321. package/dist/typescript/module/src/compiler/declarations.d.ts.map +1 -1
  322. package/dist/typescript/module/src/compiler/inheritance.test.d.ts +2 -0
  323. package/dist/typescript/module/src/compiler/inheritance.test.d.ts.map +1 -0
  324. package/dist/typescript/module/src/compiler/keyframes.d.ts +5 -4
  325. package/dist/typescript/module/src/compiler/keyframes.d.ts.map +1 -1
  326. package/dist/typescript/module/src/compiler/media-query.d.ts +4 -4
  327. package/dist/typescript/module/src/compiler/media-query.d.ts.map +1 -1
  328. package/dist/typescript/module/src/compiler/selectors.d.ts +10 -5
  329. package/dist/typescript/module/src/compiler/selectors.d.ts.map +1 -1
  330. package/dist/typescript/module/src/compiler/split-by-delimiter.d.ts +2 -0
  331. package/dist/typescript/module/src/compiler/split-by-delimiter.d.ts.map +1 -0
  332. package/dist/typescript/module/src/compiler/stylesheet.d.ts +54 -0
  333. package/dist/typescript/module/src/compiler/stylesheet.d.ts.map +1 -0
  334. package/dist/typescript/module/src/components/Text.d.ts +1 -1
  335. package/dist/typescript/module/src/components/Text.d.ts.map +1 -1
  336. package/dist/typescript/module/src/components/View.d.ts +1 -1
  337. package/dist/typescript/module/src/components/View.d.ts.map +1 -1
  338. package/dist/typescript/module/src/index.d.ts +1 -0
  339. package/dist/typescript/module/src/index.d.ts.map +1 -1
  340. package/dist/typescript/module/src/jest/index.d.ts +2 -3
  341. package/dist/typescript/module/src/jest/index.d.ts.map +1 -1
  342. package/dist/typescript/module/src/metro/index.d.ts +5 -4
  343. package/dist/typescript/module/src/metro/index.d.ts.map +1 -1
  344. package/dist/typescript/module/src/metro/injection-code.d.ts +15 -1
  345. package/dist/typescript/module/src/metro/injection-code.d.ts.map +1 -1
  346. package/dist/typescript/module/src/metro/resolver.d.ts +4 -0
  347. package/dist/typescript/module/src/metro/resolver.d.ts.map +1 -0
  348. package/dist/typescript/module/src/poison.pill.d.ts +2 -0
  349. package/dist/typescript/module/src/poison.pill.d.ts.map +1 -0
  350. package/dist/typescript/module/src/runtime/native/api.d.ts +1 -1
  351. package/dist/typescript/module/src/runtime/native/conditions/guards.d.ts.map +1 -1
  352. package/dist/typescript/module/src/runtime/native/index.d.ts +1 -1
  353. package/dist/typescript/module/src/runtime/native/index.d.ts.map +1 -1
  354. package/dist/typescript/module/src/runtime/native/react/rules.d.ts +2 -1
  355. package/dist/typescript/module/src/runtime/native/react/rules.d.ts.map +1 -1
  356. package/dist/typescript/module/src/runtime/native/react/useNativeCss.d.ts +1 -1
  357. package/dist/typescript/module/src/runtime/native/reactivity.d.ts +1 -1
  358. package/dist/typescript/module/src/runtime/native/reactivity.d.ts.map +1 -1
  359. package/dist/typescript/module/src/runtime/native/styles/animation.d.ts +3 -2
  360. package/dist/typescript/module/src/runtime/native/styles/animation.d.ts.map +1 -1
  361. package/dist/typescript/module/src/runtime/native/styles/border.d.ts +2 -0
  362. package/dist/typescript/module/src/runtime/native/styles/border.d.ts.map +1 -0
  363. package/dist/typescript/module/src/runtime/native/styles/box-shadow.d.ts +3 -0
  364. package/dist/typescript/module/src/runtime/native/styles/box-shadow.d.ts.map +1 -0
  365. package/dist/typescript/module/src/runtime/native/styles/calc.d.ts.map +1 -1
  366. package/dist/typescript/module/src/runtime/native/styles/calculate-props.d.ts +10 -0
  367. package/dist/typescript/module/src/runtime/native/styles/calculate-props.d.ts.map +1 -0
  368. package/dist/typescript/module/src/runtime/native/styles/constants.d.ts +1 -0
  369. package/dist/typescript/module/src/runtime/native/styles/constants.d.ts.map +1 -1
  370. package/dist/typescript/module/src/runtime/native/styles/filters.d.ts +12 -0
  371. package/dist/typescript/module/src/runtime/native/styles/filters.d.ts.map +1 -0
  372. package/dist/typescript/module/src/runtime/native/styles/index.d.ts +3 -4
  373. package/dist/typescript/module/src/runtime/native/styles/index.d.ts.map +1 -1
  374. package/dist/typescript/module/src/runtime/native/styles/platform-functions.d.ts +8 -0
  375. package/dist/typescript/module/src/runtime/native/styles/platform-functions.d.ts.map +1 -0
  376. package/dist/typescript/module/src/runtime/native/styles/resolve.d.ts +6 -2
  377. package/dist/typescript/module/src/runtime/native/styles/resolve.d.ts.map +1 -1
  378. package/dist/typescript/module/src/runtime/native/styles/shorthand.d.ts +3 -4
  379. package/dist/typescript/module/src/runtime/native/styles/shorthand.d.ts.map +1 -1
  380. package/dist/typescript/module/src/runtime/native/styles/text-shadow.d.ts +1 -1
  381. package/dist/typescript/module/src/runtime/native/styles/text-shadow.d.ts.map +1 -1
  382. package/dist/typescript/module/src/runtime/native/styles/transform.d.ts.map +1 -1
  383. package/dist/typescript/module/src/runtime/native/styles/units.d.ts.map +1 -1
  384. package/dist/typescript/module/src/runtime/native/styles/variables.d.ts +1 -1
  385. package/dist/typescript/module/src/runtime/native/styles/variables.d.ts.map +1 -1
  386. package/dist/typescript/module/src/runtime/runtime.types.d.ts +0 -15
  387. package/dist/typescript/module/src/runtime/runtime.types.d.ts.map +1 -1
  388. package/dist/typescript/module/src/runtime/utils/components.d.ts +1 -1
  389. package/dist/typescript/module/src/runtime/utils/objects.d.ts +2 -1
  390. package/dist/typescript/module/src/runtime/utils/objects.d.ts.map +1 -1
  391. package/dist/typescript/module/src/runtime/utils/style-value.d.ts +3 -2
  392. package/dist/typescript/module/src/runtime/utils/style-value.d.ts.map +1 -1
  393. package/dist/typescript/module/src/runtime/web/index.d.ts +1 -0
  394. package/dist/typescript/module/src/runtime/web/index.d.ts.map +1 -1
  395. package/dist/typescript/module/src/runtime/web/metro.d.ts +2 -0
  396. package/dist/typescript/module/src/runtime/web/metro.d.ts.map +1 -0
  397. package/package.json +67 -13
  398. package/src/babel/allowedModules.ts +24 -0
  399. package/src/babel/helpers.ts +16 -158
  400. package/src/babel/import-plugin.ts +125 -132
  401. package/src/babel/react-native-web.ts +226 -0
  402. package/src/babel/react-native.ts +226 -0
  403. package/src/compiler/atRules.ts +144 -0
  404. package/src/compiler/attributes.test.ts +28 -0
  405. package/src/compiler/compiler.ts +154 -482
  406. package/src/compiler/compiler.types.ts +30 -135
  407. package/src/compiler/container-query.ts +12 -12
  408. package/src/compiler/declarations.ts +1789 -1971
  409. package/src/compiler/inheritance.test.ts +121 -0
  410. package/src/compiler/keyframes.ts +28 -42
  411. package/src/compiler/media-query.ts +27 -26
  412. package/src/compiler/selectors.ts +289 -271
  413. package/src/compiler/split-by-delimiter.ts +19 -0
  414. package/src/compiler/stylesheet.ts +546 -0
  415. package/src/components/Text.tsx +2 -0
  416. package/src/components/View.tsx +2 -0
  417. package/src/index.ts +2 -0
  418. package/src/jest/index.ts +6 -5
  419. package/src/metro/index.ts +161 -64
  420. package/src/metro/injection-code.ts +33 -3
  421. package/src/metro/resolver.ts +89 -0
  422. package/src/metro/typescript.ts +1 -1
  423. package/src/poison.pill.ts +32 -0
  424. package/src/runtime/native/conditions/guards.ts +12 -4
  425. package/src/runtime/native/conditions/media-query.ts +2 -0
  426. package/src/runtime/native/index.ts +1 -2
  427. package/src/runtime/native/injection.ts +30 -0
  428. package/src/runtime/native/react/rules.ts +26 -33
  429. package/src/runtime/native/reactivity.ts +3 -7
  430. package/src/runtime/native/styles/animation.ts +143 -104
  431. package/src/runtime/native/styles/border.ts +10 -0
  432. package/src/runtime/native/styles/box-shadow.ts +54 -0
  433. package/src/runtime/native/styles/calc.ts +37 -60
  434. package/src/runtime/native/styles/calculate-props.ts +165 -0
  435. package/src/runtime/native/styles/constants.ts +1 -0
  436. package/src/runtime/native/styles/filters.ts +98 -0
  437. package/src/runtime/native/styles/index.ts +2 -138
  438. package/src/runtime/native/styles/platform-functions.ts +50 -0
  439. package/src/runtime/native/styles/resolve.ts +91 -17
  440. package/src/runtime/native/styles/shorthand.ts +61 -41
  441. package/src/runtime/native/styles/transform.ts +10 -4
  442. package/src/runtime/native/styles/units.ts +9 -4
  443. package/src/runtime/native/styles/variables.ts +51 -35
  444. package/src/runtime/runtime.types.ts +0 -25
  445. package/src/runtime/utils/objects.ts +20 -5
  446. package/src/runtime/utils/style-value.ts +14 -2
  447. package/src/runtime/web/index.ts +3 -0
  448. package/src/runtime/web/metro.ts +2 -0
  449. package/types.d.ts +70 -0
  450. package/dist/commonjs/compiler/add.js +0 -175
  451. package/dist/commonjs/compiler/add.js.map +0 -1
  452. package/dist/commonjs/components/ActivityIndicator.js +0 -20
  453. package/dist/commonjs/components/ActivityIndicator.js.map +0 -1
  454. package/dist/commonjs/components/SafeAreaProvider/index.js +0 -41
  455. package/dist/commonjs/components/SafeAreaProvider/index.js.map +0 -1
  456. package/dist/commonjs/components/SafeAreaProvider/index.web.js +0 -13
  457. package/dist/commonjs/components/SafeAreaProvider/index.web.js.map +0 -1
  458. package/dist/commonjs/components/TextInput.js +0 -20
  459. package/dist/commonjs/components/TextInput.js.map +0 -1
  460. package/dist/module/compiler/add.js +0 -168
  461. package/dist/module/compiler/add.js.map +0 -1
  462. package/dist/module/components/ActivityIndicator.js +0 -16
  463. package/dist/module/components/ActivityIndicator.js.map +0 -1
  464. package/dist/module/components/SafeAreaProvider/index.js +0 -36
  465. package/dist/module/components/SafeAreaProvider/index.js.map +0 -1
  466. package/dist/module/components/SafeAreaProvider/index.web.js +0 -4
  467. package/dist/module/components/SafeAreaProvider/index.web.js.map +0 -1
  468. package/dist/module/components/TextInput.js +0 -16
  469. package/dist/module/components/TextInput.js.map +0 -1
  470. package/dist/typescript/commonjs/src/compiler/add.d.ts +0 -10
  471. package/dist/typescript/commonjs/src/compiler/add.d.ts.map +0 -1
  472. package/dist/typescript/commonjs/src/components/ActivityIndicator.d.ts +0 -3
  473. package/dist/typescript/commonjs/src/components/ActivityIndicator.d.ts.map +0 -1
  474. package/dist/typescript/commonjs/src/components/SafeAreaProvider/index.d.ts +0 -4
  475. package/dist/typescript/commonjs/src/components/SafeAreaProvider/index.d.ts.map +0 -1
  476. package/dist/typescript/commonjs/src/components/SafeAreaProvider/index.web.d.ts +0 -2
  477. package/dist/typescript/commonjs/src/components/SafeAreaProvider/index.web.d.ts.map +0 -1
  478. package/dist/typescript/commonjs/src/components/TextInput.d.ts +0 -13
  479. package/dist/typescript/commonjs/src/components/TextInput.d.ts.map +0 -1
  480. package/dist/typescript/module/src/compiler/add.d.ts +0 -10
  481. package/dist/typescript/module/src/compiler/add.d.ts.map +0 -1
  482. package/dist/typescript/module/src/components/ActivityIndicator.d.ts +0 -3
  483. package/dist/typescript/module/src/components/ActivityIndicator.d.ts.map +0 -1
  484. package/dist/typescript/module/src/components/SafeAreaProvider/index.d.ts +0 -4
  485. package/dist/typescript/module/src/components/SafeAreaProvider/index.d.ts.map +0 -1
  486. package/dist/typescript/module/src/components/SafeAreaProvider/index.web.d.ts +0 -2
  487. package/dist/typescript/module/src/components/SafeAreaProvider/index.web.d.ts.map +0 -1
  488. package/dist/typescript/module/src/components/TextInput.d.ts +0 -13
  489. package/dist/typescript/module/src/components/TextInput.d.ts.map +0 -1
  490. package/src/compiler/add.ts +0 -257
  491. package/src/components/ActivityIndicator.tsx +0 -19
  492. package/src/components/SafeAreaProvider/index.tsx +0 -50
  493. package/src/components/SafeAreaProvider/index.web.tsx +0 -1
  494. package/src/components/TextInput.tsx +0 -20
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.handleReactNativeWebIdentifierRequire = handleReactNativeWebIdentifierRequire;
7
+ exports.handleReactNativeWebImport = handleReactNativeWebImport;
8
+ exports.handleReactNativeWebObjectPatternRequire = handleReactNativeWebObjectPatternRequire;
9
+ var _path = require("path");
10
+ var _allowedModules = require("./allowedModules.js");
11
+ function parseReactNativeWebSource(source, filename) {
12
+ if (source.startsWith(".")) {
13
+ source = (0, _path.resolve)(filename, source);
14
+ const internalPath = source.split("react-native-web/dist")[1];
15
+ if (!internalPath) {
16
+ return;
17
+ }
18
+
19
+ // Strip the absolute system filepath
20
+ source = `react-native-web/${internalPath}`;
21
+ }
22
+ if (source === "react-native-web") {
23
+ return {
24
+ source: "react-native-css/components"
25
+ };
26
+ } else if (source.startsWith("react-native-web/")) {
27
+ const name = source.split("/").at(-1);
28
+ if (!name || !_allowedModules.allowedModules.has(name)) {
29
+ return;
30
+ }
31
+ return {
32
+ source: `react-native-css/components/${name}`,
33
+ name
34
+ };
35
+ }
36
+ return;
37
+ }
38
+ function handleReactNativeWebImport(declaration, t, filename) {
39
+ const {
40
+ specifiers,
41
+ source
42
+ } = declaration;
43
+ const rnwSource = parseReactNativeWebSource(source.value, filename);
44
+ if (!rnwSource) {
45
+ return;
46
+ }
47
+ if (specifiers.length === 0) {
48
+ return [t.importDeclaration([], t.stringLiteral("react-native-css/components"))];
49
+ }
50
+ const statements = [];
51
+ for (const specifier of specifiers) {
52
+ if (t.isImportDefaultSpecifier(specifier)) {
53
+ const {
54
+ source: newSource,
55
+ name
56
+ } = rnwSource;
57
+ if (!name) {
58
+ statements.push(t.importDeclaration([t.importDefaultSpecifier(specifier.local)], t.stringLiteral(newSource)));
59
+ } else {
60
+ statements.push(t.importDeclaration([t.importSpecifier(specifier.local, specifier.local)], t.stringLiteral(`react-native-css/components/${name}`)));
61
+ }
62
+ } else if (t.isImportNamespaceSpecifier(specifier)) {
63
+ statements.push(t.importDeclaration([specifier], t.stringLiteral("react-native-css/components")));
64
+ } else {
65
+ const localName = t.isStringLiteral(specifier.imported) ? specifier.imported.value : specifier.imported.name;
66
+ if (!_allowedModules.allowedModules.has(localName)) {
67
+ statements.push(t.importDeclaration([specifier], source));
68
+ } else {
69
+ statements.push(t.importDeclaration([t.importSpecifier(specifier.local, specifier.imported)], t.stringLiteral(`react-native-css/components/${localName}`)));
70
+ }
71
+ }
72
+ }
73
+ return statements;
74
+ }
75
+ function handleReactNativeWebIdentifierRequire(path, t, id, source, filename) {
76
+ const parsedSource = parseReactNativeWebSource(source, filename);
77
+ if (!parsedSource) {
78
+ return;
79
+ }
80
+ const {
81
+ source: newSource,
82
+ name
83
+ } = parsedSource;
84
+ if (name) {
85
+ return [t.variableDeclaration(path.node.kind, [t.variableDeclarator(t.objectPattern([name === id ? t.objectProperty(t.identifier(name), t.identifier(id), false, true) : t.objectProperty(t.identifier(name), t.identifier(id))]), t.callExpression(t.identifier("require"), [t.stringLiteral(newSource)]))])];
86
+ } else {
87
+ return [t.variableDeclaration(path.node.kind, [t.variableDeclarator(t.identifier(id), t.callExpression(t.identifier("require"), [t.stringLiteral(newSource)]))])];
88
+ }
89
+ }
90
+ function handleReactNativeWebObjectPatternRequire(path, t, id, source, filename) {
91
+ const parsedSource = parseReactNativeWebSource(source, filename);
92
+
93
+ // Don't handle `const { Text } = require('react-native-web/dist/cjs/Text');` - we only handle package exports
94
+ if (!parsedSource || parsedSource.name) {
95
+ return;
96
+ }
97
+ const statements = [];
98
+ for (const identifier of id.properties) {
99
+ if (t.isRestElement(identifier)) {
100
+ // Bail out on `const { ...rest } = require('react-native-web');`
101
+ // We need to exit as we do not handle `const { Text, ...rest } = require('react-native-web');`
102
+ return;
103
+ } else if (!(t.isIdentifier(identifier.value) && t.isIdentifier(identifier.key))) {
104
+ // Bail out on anything that isn't `const { <key>: <identifier> } = require('react-native-web');`
105
+ return;
106
+ } else {
107
+ const name = identifier.key.name;
108
+ if (!_allowedModules.allowedModules.has(name)) {
109
+ statements.push(t.variableDeclaration(path.node.kind, [t.variableDeclarator(t.objectPattern([identifier]), t.callExpression(t.identifier("require"), [t.stringLiteral(source)]))]));
110
+ } else {
111
+ const newSourceWithName = `react-native-css/components/${name}`;
112
+ statements.push(t.variableDeclaration(path.node.kind, [t.variableDeclarator(t.objectPattern([t.objectProperty(t.identifier(name), t.identifier(identifier.value.name), false, true)]), t.callExpression(t.identifier("require"), [t.stringLiteral(newSourceWithName)]))]));
113
+ }
114
+ }
115
+ }
116
+ return statements;
117
+ }
118
+ //# sourceMappingURL=react-native-web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_path","require","_allowedModules","parseReactNativeWebSource","source","filename","startsWith","resolve","internalPath","split","name","at","allowedModules","has","handleReactNativeWebImport","declaration","t","specifiers","rnwSource","value","length","importDeclaration","stringLiteral","statements","specifier","isImportDefaultSpecifier","newSource","push","importDefaultSpecifier","local","importSpecifier","isImportNamespaceSpecifier","localName","isStringLiteral","imported","handleReactNativeWebIdentifierRequire","path","id","parsedSource","variableDeclaration","node","kind","variableDeclarator","objectPattern","objectProperty","identifier","callExpression","handleReactNativeWebObjectPatternRequire","properties","isRestElement","isIdentifier","key","newSourceWithName"],"sourceRoot":"../../../src","sources":["babel/react-native-web.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.handleReactNativeIdentifierRequire = handleReactNativeIdentifierRequire;
7
+ exports.handleReactNativeImport = handleReactNativeImport;
8
+ exports.handleReactNativeObjectPatternRequire = handleReactNativeObjectPatternRequire;
9
+ var _path = require("path");
10
+ var _allowedModules = require("./allowedModules.js");
11
+ function parseReactNativeSource(source, filename) {
12
+ if (source.startsWith(".")) {
13
+ source = (0, _path.resolve)((0, _path.dirname)(filename), source);
14
+ const internalPath = source.split("react-native/Libraries/Components/")[1];
15
+ if (!internalPath) {
16
+ return;
17
+ }
18
+
19
+ // Strip the absolute system filepath
20
+ source = `react-native/Libraries/Components/${internalPath}`;
21
+ }
22
+ if (source === "react-native") {
23
+ return {
24
+ source: "react-native-css/components"
25
+ };
26
+ } else if (source.startsWith("react-native/")) {
27
+ const name = source.split("/").at(-1);
28
+ if (!name || !_allowedModules.allowedModules.has(name)) {
29
+ return;
30
+ }
31
+ return {
32
+ source: `react-native-css/components/${name}`,
33
+ name
34
+ };
35
+ }
36
+ return;
37
+ }
38
+ function handleReactNativeImport(declaration, t, filename) {
39
+ const {
40
+ specifiers,
41
+ source
42
+ } = declaration;
43
+ const rnwSource = parseReactNativeSource(source.value, filename);
44
+ if (!rnwSource) {
45
+ return;
46
+ }
47
+ if (specifiers.length === 0) {
48
+ return [t.importDeclaration([], t.stringLiteral("react-native-css/components"))];
49
+ }
50
+ const statements = [];
51
+ for (const specifier of specifiers) {
52
+ if (t.isImportDefaultSpecifier(specifier)) {
53
+ const {
54
+ source: newSource,
55
+ name
56
+ } = rnwSource;
57
+ if (!name) {
58
+ statements.push(t.importDeclaration([t.importDefaultSpecifier(specifier.local)], t.stringLiteral(newSource)));
59
+ } else {
60
+ statements.push(t.importDeclaration([t.importSpecifier(specifier.local, specifier.local)], t.stringLiteral(`react-native-css/components/${name}`)));
61
+ }
62
+ } else if (t.isImportNamespaceSpecifier(specifier)) {
63
+ statements.push(t.importDeclaration([specifier], t.stringLiteral("react-native-css/components")));
64
+ } else {
65
+ const localName = t.isStringLiteral(specifier.imported) ? specifier.imported.value : specifier.imported.name;
66
+ if (!_allowedModules.allowedModules.has(localName)) {
67
+ statements.push(t.importDeclaration([specifier], source));
68
+ } else {
69
+ statements.push(t.importDeclaration([t.importSpecifier(specifier.local, specifier.imported)], t.stringLiteral(`react-native-css/components/${localName}`)));
70
+ }
71
+ }
72
+ }
73
+ return statements;
74
+ }
75
+ function handleReactNativeIdentifierRequire(path, t, id, source, filename) {
76
+ const parsedSource = parseReactNativeSource(source, filename);
77
+ if (!parsedSource) {
78
+ return;
79
+ }
80
+ const {
81
+ source: newSource,
82
+ name
83
+ } = parsedSource;
84
+ if (name) {
85
+ return [t.variableDeclaration(path.node.kind, [t.variableDeclarator(t.objectPattern([name === id ? t.objectProperty(t.identifier(name), t.identifier(id), false, true) : t.objectProperty(t.identifier(name), t.identifier(id))]), t.callExpression(t.identifier("require"), [t.stringLiteral(newSource)]))])];
86
+ } else {
87
+ return [t.variableDeclaration(path.node.kind, [t.variableDeclarator(t.identifier(id), t.callExpression(t.identifier("require"), [t.stringLiteral(newSource)]))])];
88
+ }
89
+ }
90
+ function handleReactNativeObjectPatternRequire(path, t, id, source, filename) {
91
+ const parsedSource = parseReactNativeSource(source, filename);
92
+
93
+ // Don't handle `const { Text } = require('react-native/Libraries/Text/Text');` - we only handle package exports
94
+ if (!parsedSource || parsedSource.name) {
95
+ return;
96
+ }
97
+ const statements = [];
98
+ for (const identifier of id.properties) {
99
+ if (t.isRestElement(identifier)) {
100
+ // Bail out on `const { ...rest } = require('react-native');`
101
+ // We need to exit as we do not handle `const { Text, ...rest } = require('react-native');`
102
+ return;
103
+ } else if (!(t.isIdentifier(identifier.value) && t.isIdentifier(identifier.key))) {
104
+ // Bail out on anything that isn't `const { <key>: <identifier> } = require('react-native');`
105
+ return;
106
+ } else {
107
+ const name = identifier.key.name;
108
+ if (!_allowedModules.allowedModules.has(name)) {
109
+ statements.push(t.variableDeclaration(path.node.kind, [t.variableDeclarator(t.objectPattern([identifier]), t.callExpression(t.identifier("require"), [t.stringLiteral(source)]))]));
110
+ } else {
111
+ const newSourceWithName = `react-native-css/components/${name}`;
112
+ statements.push(t.variableDeclaration(path.node.kind, [t.variableDeclarator(t.objectPattern([t.objectProperty(t.identifier(name), t.identifier(identifier.value.name), false, true)]), t.callExpression(t.identifier("require"), [t.stringLiteral(newSourceWithName)]))]));
113
+ }
114
+ }
115
+ }
116
+ return statements;
117
+ }
118
+ //# sourceMappingURL=react-native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_path","require","_allowedModules","parseReactNativeSource","source","filename","startsWith","resolve","dirname","internalPath","split","name","at","allowedModules","has","handleReactNativeImport","declaration","t","specifiers","rnwSource","value","length","importDeclaration","stringLiteral","statements","specifier","isImportDefaultSpecifier","newSource","push","importDefaultSpecifier","local","importSpecifier","isImportNamespaceSpecifier","localName","isStringLiteral","imported","handleReactNativeIdentifierRequire","path","id","parsedSource","variableDeclaration","node","kind","variableDeclarator","objectPattern","objectProperty","identifier","callExpression","handleReactNativeObjectPatternRequire","properties","isRestElement","isIdentifier","key","newSourceWithName"],"sourceRoot":"../../../src","sources":["babel/react-native.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.maybeMutateReactNativeOptions = maybeMutateReactNativeOptions;
7
+ exports.parsePropAtRule = parsePropAtRule;
8
+ var _selectors = require("./selectors.js");
9
+ var _splitByDelimiter = require("./split-by-delimiter.js");
10
+ /***********************************************
11
+ * @react-native *
12
+ ***********************************************/
13
+
14
+ function maybeMutateReactNativeOptions(rule, builder) {
15
+ if (rule.type !== "custom" || rule.value?.name !== "react-native") {
16
+ return;
17
+ }
18
+ const {
19
+ declarations
20
+ } = rule.value.body.value;
21
+ if (!declarations) return;
22
+ for (const declaration of declarations) {
23
+ if (declaration.property !== "custom") continue;
24
+ switch (declaration.value.name) {
25
+ case "preserve-variables":
26
+ {
27
+ declaration.value.value.forEach(token => {
28
+ if (token.type !== "dashed-ident") {
29
+ return;
30
+ }
31
+ if (token.value !== "true" && token.value !== "false") {
32
+ return;
33
+ }
34
+ builder.setOptions("preserveVariables", token.value === "true");
35
+ });
36
+ break;
37
+ }
38
+ default:
39
+ break;
40
+ }
41
+ }
42
+ }
43
+
44
+ /***********************************************
45
+ * @prop *
46
+ ***********************************************/
47
+
48
+ function isPropAtRule(rule) {
49
+ return rule.type === "unknown" && rule.value.name === "prop";
50
+ }
51
+ function parsePropAtRule(rules) {
52
+ const mapping = {};
53
+ if (!rules) return mapping;
54
+ for (const rule of rules) {
55
+ if (!isPropAtRule(rule)) continue;
56
+ if (rule.value.prelude.length > 0) {
57
+ const prelude = rule.value.prelude.filter(item => {
58
+ return item.value.type !== "white-space";
59
+ });
60
+ propAtRuleBlock(prelude, mapping);
61
+ } else if (rule.value.block) {
62
+ // Remove all whitespace tokens
63
+ const blocks = rule.value.block.filter(item => {
64
+ return item.value.type !== "white-space";
65
+ });
66
+
67
+ // Separate each rule, delimited by a semicolon
68
+ const blockRules = (0, _splitByDelimiter.splitByDelimiter)(blocks, item => {
69
+ return item.value.type === "semicolon";
70
+ });
71
+ for (const block of blockRules) {
72
+ propAtRuleBlock(block, mapping);
73
+ }
74
+ }
75
+ }
76
+ return mapping;
77
+ }
78
+ function propAtRuleBlock(token, mapping = {}) {
79
+ const [from, to] = (0, _splitByDelimiter.splitByDelimiter)(token, item => {
80
+ return item.value.type === "colon";
81
+ });
82
+ if (!from || from.length !== 1 || !to) {
83
+ return mapping;
84
+ }
85
+ const fromToken = from[0];
86
+ if (!fromToken || fromToken.value.type !== "ident") {
87
+ return mapping;
88
+ }
89
+ mapping[(0, _selectors.toRNProperty)(fromToken.value.value)] = to.flatMap((item, index) => {
90
+ switch (item.value.type) {
91
+ case "delim":
92
+ return index === 0 && item.value.value === "^" ? ["^"] : [];
93
+ case "ident":
94
+ return [(0, _selectors.toRNProperty)(item.value.value)];
95
+ default:
96
+ return [];
97
+ }
98
+ });
99
+ return mapping;
100
+ }
101
+ //# sourceMappingURL=atRules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_selectors","require","_splitByDelimiter","maybeMutateReactNativeOptions","rule","builder","type","value","name","declarations","body","declaration","property","forEach","token","setOptions","isPropAtRule","parsePropAtRule","rules","mapping","prelude","length","filter","item","propAtRuleBlock","block","blocks","blockRules","splitByDelimiter","from","to","fromToken","toRNProperty","flatMap","index"],"sourceRoot":"../../../src","sources":["compiler/atRules.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ var _index = require("../compiler/index.js");
4
+ test("multiple classes", () => {
5
+ const compiled = (0, _index.compile)(`
6
+ .my-class.test {
7
+ color: red;
8
+ }`);
9
+ expect(compiled).toStrictEqual({
10
+ s: [["test", [{
11
+ aq: [["a", "className", "*=", "my-class"]],
12
+ d: [{
13
+ color: "#f00"
14
+ }],
15
+ s: [1, 2],
16
+ v: [["__rn-css-color", "#f00"]]
17
+ }]]]
18
+ });
19
+ });
20
+ //# sourceMappingURL=attributes.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_index","require","test","compiled","compile","expect","toStrictEqual","s","aq","d","color","v"],"sourceRoot":"../../../src","sources":["compiler/attributes.test.ts"],"mappings":";;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEAC,IAAI,CAAC,kBAAkB,EAAE,MAAM;EAC7B,MAAMC,QAAQ,GAAG,IAAAC,cAAO,EAAC;AAC3B;AACA;AACA,EAAE,CAAC;EAEDC,MAAM,CAACF,QAAQ,CAAC,CAACG,aAAa,CAAC;IAC7BC,CAAC,EAAE,CACD,CACE,MAAM,EACN,CACE;MACEC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;MAC1CC,CAAC,EAAE,CACD;QACEC,KAAK,EAAE;MACT,CAAC,CACF;MACDH,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;MACTI,CAAC,EAAE,CAAC,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAChC,CAAC,CACF,CACF;EAEL,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}