rnwind 0.0.1 → 0.0.2

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 (330) hide show
  1. package/lib/cjs/core/parser/animation.cjs +427 -0
  2. package/lib/cjs/core/parser/animation.cjs.map +1 -0
  3. package/lib/cjs/core/parser/animation.d.ts +126 -0
  4. package/lib/cjs/core/parser/border-dispatcher.cjs +180 -0
  5. package/lib/cjs/core/parser/border-dispatcher.cjs.map +1 -0
  6. package/lib/cjs/core/parser/border-dispatcher.d.ts +15 -0
  7. package/lib/cjs/core/parser/case-convert.cjs +15 -0
  8. package/lib/cjs/core/parser/case-convert.cjs.map +1 -0
  9. package/lib/cjs/core/parser/case-convert.d.ts +6 -0
  10. package/lib/cjs/core/parser/color-properties-dispatcher.cjs +84 -0
  11. package/lib/cjs/core/parser/color-properties-dispatcher.cjs.map +1 -0
  12. package/lib/cjs/core/parser/color-properties-dispatcher.d.ts +19 -0
  13. package/lib/cjs/core/parser/color.cjs +164 -0
  14. package/lib/cjs/core/parser/color.cjs.map +1 -0
  15. package/lib/cjs/core/parser/color.d.ts +12 -0
  16. package/lib/cjs/core/parser/constants.cjs +21 -0
  17. package/lib/cjs/core/parser/constants.cjs.map +1 -0
  18. package/lib/cjs/core/parser/constants.d.ts +8 -0
  19. package/lib/cjs/core/parser/declaration.cjs +347 -0
  20. package/lib/cjs/core/parser/declaration.cjs.map +1 -0
  21. package/lib/cjs/core/parser/declaration.d.ts +15 -0
  22. package/lib/cjs/core/parser/gradient.cjs +132 -0
  23. package/lib/cjs/core/parser/gradient.cjs.map +1 -0
  24. package/lib/cjs/core/parser/gradient.d.ts +59 -0
  25. package/lib/cjs/core/parser/haptics.cjs +73 -0
  26. package/lib/cjs/core/parser/haptics.cjs.map +1 -0
  27. package/lib/cjs/core/parser/haptics.d.ts +47 -0
  28. package/lib/cjs/core/parser/index.d.ts +8 -0
  29. package/lib/cjs/core/parser/keyframes.cjs +95 -0
  30. package/lib/cjs/core/parser/keyframes.cjs.map +1 -0
  31. package/lib/cjs/core/parser/keyframes.d.ts +26 -0
  32. package/lib/cjs/core/parser/layout-dispatcher.cjs +100 -0
  33. package/lib/cjs/core/parser/layout-dispatcher.cjs.map +1 -0
  34. package/lib/cjs/core/parser/layout-dispatcher.d.ts +14 -0
  35. package/lib/cjs/core/parser/length.cjs +96 -0
  36. package/lib/cjs/core/parser/length.cjs.map +1 -0
  37. package/lib/cjs/core/parser/length.d.ts +48 -0
  38. package/lib/cjs/core/parser/motion-dispatcher.cjs +77 -0
  39. package/lib/cjs/core/parser/motion-dispatcher.cjs.map +1 -0
  40. package/lib/cjs/core/parser/motion-dispatcher.d.ts +11 -0
  41. package/lib/cjs/core/parser/property.cjs +22 -0
  42. package/lib/cjs/core/parser/property.cjs.map +1 -0
  43. package/lib/cjs/core/parser/property.d.ts +8 -0
  44. package/lib/cjs/core/parser/safe-area.cjs +404 -0
  45. package/lib/cjs/core/parser/safe-area.cjs.map +1 -0
  46. package/lib/cjs/core/parser/safe-area.d.ts +39 -0
  47. package/lib/cjs/core/parser/selector.cjs +22 -0
  48. package/lib/cjs/core/parser/selector.cjs.map +1 -0
  49. package/lib/cjs/core/parser/selector.d.ts +11 -0
  50. package/lib/cjs/core/parser/shorthand.cjs +156 -0
  51. package/lib/cjs/core/parser/shorthand.cjs.map +1 -0
  52. package/lib/cjs/core/parser/shorthand.d.ts +61 -0
  53. package/lib/cjs/core/parser/text-truncate.cjs +78 -0
  54. package/lib/cjs/core/parser/text-truncate.cjs.map +1 -0
  55. package/lib/cjs/core/parser/text-truncate.d.ts +44 -0
  56. package/lib/cjs/core/parser/theme-vars.cjs +414 -0
  57. package/lib/cjs/core/parser/theme-vars.cjs.map +1 -0
  58. package/lib/cjs/core/parser/theme-vars.d.ts +61 -0
  59. package/lib/cjs/core/parser/tokens.cjs +304 -0
  60. package/lib/cjs/core/parser/tokens.cjs.map +1 -0
  61. package/lib/cjs/core/parser/tokens.d.ts +45 -0
  62. package/lib/cjs/core/parser/transform.cjs +198 -0
  63. package/lib/cjs/core/parser/transform.cjs.map +1 -0
  64. package/lib/cjs/core/parser/transform.d.ts +36 -0
  65. package/lib/cjs/core/parser/tw-parser.cjs +1567 -0
  66. package/lib/cjs/core/parser/tw-parser.cjs.map +1 -0
  67. package/lib/cjs/core/parser/tw-parser.d.ts +194 -0
  68. package/lib/cjs/core/parser/types.d.ts +37 -0
  69. package/lib/cjs/core/parser/typography-dispatcher.cjs +93 -0
  70. package/lib/cjs/core/parser/typography-dispatcher.cjs.map +1 -0
  71. package/lib/cjs/core/parser/typography-dispatcher.d.ts +11 -0
  72. package/lib/cjs/core/parser/typography.cjs +97 -0
  73. package/lib/cjs/core/parser/typography.cjs.map +1 -0
  74. package/lib/cjs/core/parser/typography.d.ts +43 -0
  75. package/lib/cjs/core/style-builder/build-style.cjs +397 -0
  76. package/lib/cjs/core/style-builder/build-style.cjs.map +1 -0
  77. package/lib/cjs/core/style-builder/build-style.d.ts +54 -0
  78. package/lib/cjs/core/style-builder/index.d.ts +3 -0
  79. package/lib/cjs/core/style-builder/union-builder.cjs +326 -0
  80. package/lib/cjs/core/style-builder/union-builder.cjs.map +1 -0
  81. package/lib/cjs/core/style-builder/union-builder.d.ts +128 -0
  82. package/lib/cjs/core/types.d.ts +14 -0
  83. package/lib/cjs/metro/dts.cjs +127 -0
  84. package/lib/cjs/metro/dts.cjs.map +1 -0
  85. package/lib/cjs/metro/dts.d.ts +16 -0
  86. package/lib/cjs/metro/index.cjs +19 -0
  87. package/lib/cjs/metro/index.cjs.map +1 -0
  88. package/lib/cjs/metro/index.d.ts +9 -0
  89. package/lib/cjs/metro/resolver.cjs +47 -0
  90. package/lib/cjs/metro/resolver.cjs.map +1 -0
  91. package/lib/cjs/metro/resolver.d.ts +22 -0
  92. package/lib/cjs/metro/state.cjs +251 -0
  93. package/lib/cjs/metro/state.cjs.map +1 -0
  94. package/lib/cjs/metro/state.d.ts +72 -0
  95. package/lib/cjs/metro/transform-ast.cjs +1255 -0
  96. package/lib/cjs/metro/transform-ast.cjs.map +1 -0
  97. package/lib/cjs/metro/transform-ast.d.ts +73 -0
  98. package/lib/cjs/metro/transformer.cjs +345 -0
  99. package/lib/cjs/metro/transformer.cjs.map +1 -0
  100. package/lib/cjs/metro/transformer.d.ts +47 -0
  101. package/lib/cjs/metro/warn-unknown-classes.cjs +86 -0
  102. package/lib/cjs/metro/warn-unknown-classes.cjs.map +1 -0
  103. package/lib/cjs/metro/warn-unknown-classes.d.ts +21 -0
  104. package/lib/cjs/metro/with-config.cjs +196 -0
  105. package/lib/cjs/metro/with-config.cjs.map +1 -0
  106. package/lib/cjs/metro/with-config.d.ts +57 -0
  107. package/lib/cjs/runtime/chain-handlers.cjs +37 -0
  108. package/lib/cjs/runtime/chain-handlers.cjs.map +1 -0
  109. package/lib/cjs/runtime/chain-handlers.d.ts +33 -0
  110. package/lib/cjs/runtime/components/rnwind-provider.cjs +98 -0
  111. package/lib/cjs/runtime/components/rnwind-provider.cjs.map +1 -0
  112. package/lib/cjs/runtime/components/rnwind-provider.d.ts +84 -0
  113. package/lib/cjs/runtime/gradient-types.d.ts +58 -0
  114. package/lib/cjs/runtime/haptics.cjs +113 -0
  115. package/lib/cjs/runtime/haptics.cjs.map +1 -0
  116. package/lib/cjs/runtime/haptics.d.ts +48 -0
  117. package/lib/cjs/runtime/hooks/use-css.cjs +21 -0
  118. package/lib/cjs/runtime/hooks/use-css.cjs.map +1 -0
  119. package/lib/cjs/runtime/hooks/use-css.d.ts +11 -0
  120. package/lib/cjs/runtime/hooks/use-interact.cjs +46 -0
  121. package/lib/cjs/runtime/hooks/use-interact.cjs.map +1 -0
  122. package/lib/cjs/runtime/hooks/use-interact.d.ts +42 -0
  123. package/lib/cjs/runtime/hooks/use-scheme.cjs +68 -0
  124. package/lib/cjs/runtime/hooks/use-scheme.cjs.map +1 -0
  125. package/lib/cjs/runtime/hooks/use-scheme.d.ts +34 -0
  126. package/lib/cjs/runtime/index.cjs +45 -0
  127. package/lib/cjs/runtime/index.cjs.map +1 -0
  128. package/lib/cjs/runtime/index.d.ts +27 -0
  129. package/lib/cjs/runtime/interactive-box.cjs +35 -0
  130. package/lib/cjs/runtime/interactive-box.cjs.map +1 -0
  131. package/lib/cjs/runtime/interactive-box.d.ts +40 -0
  132. package/lib/cjs/runtime/lookup-css.cjs +542 -0
  133. package/lib/cjs/runtime/lookup-css.cjs.map +1 -0
  134. package/lib/cjs/runtime/lookup-css.d.ts +164 -0
  135. package/lib/cjs/runtime/types.d.ts +29 -0
  136. package/lib/cjs/testing/index.cjs +367 -0
  137. package/lib/cjs/testing/index.cjs.map +1 -0
  138. package/lib/cjs/testing/index.d.ts +145 -0
  139. package/lib/esm/core/parser/animation.d.ts +126 -0
  140. package/lib/esm/core/parser/animation.mjs +408 -0
  141. package/lib/esm/core/parser/animation.mjs.map +1 -0
  142. package/lib/esm/core/parser/border-dispatcher.d.ts +15 -0
  143. package/lib/esm/core/parser/border-dispatcher.mjs +178 -0
  144. package/lib/esm/core/parser/border-dispatcher.mjs.map +1 -0
  145. package/lib/esm/core/parser/case-convert.d.ts +6 -0
  146. package/lib/esm/core/parser/case-convert.mjs +13 -0
  147. package/lib/esm/core/parser/case-convert.mjs.map +1 -0
  148. package/lib/esm/core/parser/color-properties-dispatcher.d.ts +19 -0
  149. package/lib/esm/core/parser/color-properties-dispatcher.mjs +82 -0
  150. package/lib/esm/core/parser/color-properties-dispatcher.mjs.map +1 -0
  151. package/lib/esm/core/parser/color.d.ts +12 -0
  152. package/lib/esm/core/parser/color.mjs +162 -0
  153. package/lib/esm/core/parser/color.mjs.map +1 -0
  154. package/lib/esm/core/parser/constants.d.ts +8 -0
  155. package/lib/esm/core/parser/constants.mjs +13 -0
  156. package/lib/esm/core/parser/constants.mjs.map +1 -0
  157. package/lib/esm/core/parser/declaration.d.ts +15 -0
  158. package/lib/esm/core/parser/declaration.mjs +345 -0
  159. package/lib/esm/core/parser/declaration.mjs.map +1 -0
  160. package/lib/esm/core/parser/gradient.d.ts +59 -0
  161. package/lib/esm/core/parser/gradient.mjs +130 -0
  162. package/lib/esm/core/parser/gradient.mjs.map +1 -0
  163. package/lib/esm/core/parser/haptics.d.ts +47 -0
  164. package/lib/esm/core/parser/haptics.mjs +71 -0
  165. package/lib/esm/core/parser/haptics.mjs.map +1 -0
  166. package/lib/esm/core/parser/index.d.ts +8 -0
  167. package/lib/esm/core/parser/keyframes.d.ts +26 -0
  168. package/lib/esm/core/parser/keyframes.mjs +91 -0
  169. package/lib/esm/core/parser/keyframes.mjs.map +1 -0
  170. package/lib/esm/core/parser/layout-dispatcher.d.ts +14 -0
  171. package/lib/esm/core/parser/layout-dispatcher.mjs +98 -0
  172. package/lib/esm/core/parser/layout-dispatcher.mjs.map +1 -0
  173. package/lib/esm/core/parser/length.d.ts +48 -0
  174. package/lib/esm/core/parser/length.mjs +90 -0
  175. package/lib/esm/core/parser/length.mjs.map +1 -0
  176. package/lib/esm/core/parser/motion-dispatcher.d.ts +11 -0
  177. package/lib/esm/core/parser/motion-dispatcher.mjs +75 -0
  178. package/lib/esm/core/parser/motion-dispatcher.mjs.map +1 -0
  179. package/lib/esm/core/parser/property.d.ts +8 -0
  180. package/lib/esm/core/parser/property.mjs +20 -0
  181. package/lib/esm/core/parser/property.mjs.map +1 -0
  182. package/lib/esm/core/parser/safe-area.d.ts +39 -0
  183. package/lib/esm/core/parser/safe-area.mjs +402 -0
  184. package/lib/esm/core/parser/safe-area.mjs.map +1 -0
  185. package/lib/esm/core/parser/selector.d.ts +11 -0
  186. package/lib/esm/core/parser/selector.mjs +20 -0
  187. package/lib/esm/core/parser/selector.mjs.map +1 -0
  188. package/lib/esm/core/parser/shorthand.d.ts +61 -0
  189. package/lib/esm/core/parser/shorthand.mjs +148 -0
  190. package/lib/esm/core/parser/shorthand.mjs.map +1 -0
  191. package/lib/esm/core/parser/text-truncate.d.ts +44 -0
  192. package/lib/esm/core/parser/text-truncate.mjs +75 -0
  193. package/lib/esm/core/parser/text-truncate.mjs.map +1 -0
  194. package/lib/esm/core/parser/theme-vars.d.ts +61 -0
  195. package/lib/esm/core/parser/theme-vars.mjs +409 -0
  196. package/lib/esm/core/parser/theme-vars.mjs.map +1 -0
  197. package/lib/esm/core/parser/tokens.d.ts +45 -0
  198. package/lib/esm/core/parser/tokens.mjs +298 -0
  199. package/lib/esm/core/parser/tokens.mjs.map +1 -0
  200. package/lib/esm/core/parser/transform.d.ts +36 -0
  201. package/lib/esm/core/parser/transform.mjs +193 -0
  202. package/lib/esm/core/parser/transform.mjs.map +1 -0
  203. package/lib/esm/core/parser/tw-parser.d.ts +194 -0
  204. package/lib/esm/core/parser/tw-parser.mjs +1565 -0
  205. package/lib/esm/core/parser/tw-parser.mjs.map +1 -0
  206. package/lib/esm/core/parser/types.d.ts +37 -0
  207. package/lib/esm/core/parser/typography-dispatcher.d.ts +11 -0
  208. package/lib/esm/core/parser/typography-dispatcher.mjs +91 -0
  209. package/lib/esm/core/parser/typography-dispatcher.mjs.map +1 -0
  210. package/lib/esm/core/parser/typography.d.ts +43 -0
  211. package/lib/esm/core/parser/typography.mjs +91 -0
  212. package/lib/esm/core/parser/typography.mjs.map +1 -0
  213. package/lib/esm/core/style-builder/build-style.d.ts +54 -0
  214. package/lib/esm/core/style-builder/build-style.mjs +395 -0
  215. package/lib/esm/core/style-builder/build-style.mjs.map +1 -0
  216. package/lib/esm/core/style-builder/index.d.ts +3 -0
  217. package/lib/esm/core/style-builder/union-builder.d.ts +128 -0
  218. package/lib/esm/core/style-builder/union-builder.mjs +324 -0
  219. package/lib/esm/core/style-builder/union-builder.mjs.map +1 -0
  220. package/lib/esm/core/types.d.ts +14 -0
  221. package/lib/esm/metro/dts.d.ts +16 -0
  222. package/lib/esm/metro/dts.mjs +125 -0
  223. package/lib/esm/metro/dts.mjs.map +1 -0
  224. package/lib/esm/metro/index.d.ts +9 -0
  225. package/lib/esm/metro/index.mjs +6 -0
  226. package/lib/esm/metro/index.mjs.map +1 -0
  227. package/lib/esm/metro/resolver.d.ts +22 -0
  228. package/lib/esm/metro/resolver.mjs +43 -0
  229. package/lib/esm/metro/resolver.mjs.map +1 -0
  230. package/lib/esm/metro/state.d.ts +72 -0
  231. package/lib/esm/metro/state.mjs +243 -0
  232. package/lib/esm/metro/state.mjs.map +1 -0
  233. package/lib/esm/metro/transform-ast.d.ts +73 -0
  234. package/lib/esm/metro/transform-ast.mjs +1234 -0
  235. package/lib/esm/metro/transform-ast.mjs.map +1 -0
  236. package/lib/esm/metro/transformer.d.ts +47 -0
  237. package/lib/esm/metro/transformer.mjs +322 -0
  238. package/lib/esm/metro/transformer.mjs.map +1 -0
  239. package/lib/esm/metro/warn-unknown-classes.d.ts +21 -0
  240. package/lib/esm/metro/warn-unknown-classes.mjs +84 -0
  241. package/lib/esm/metro/warn-unknown-classes.mjs.map +1 -0
  242. package/lib/esm/metro/with-config.d.ts +57 -0
  243. package/lib/esm/metro/with-config.mjs +194 -0
  244. package/lib/esm/metro/with-config.mjs.map +1 -0
  245. package/lib/esm/runtime/chain-handlers.d.ts +33 -0
  246. package/lib/esm/runtime/chain-handlers.mjs +34 -0
  247. package/lib/esm/runtime/chain-handlers.mjs.map +1 -0
  248. package/lib/esm/runtime/components/rnwind-provider.d.ts +84 -0
  249. package/lib/esm/runtime/components/rnwind-provider.mjs +94 -0
  250. package/lib/esm/runtime/components/rnwind-provider.mjs.map +1 -0
  251. package/lib/esm/runtime/gradient-types.d.ts +58 -0
  252. package/lib/esm/runtime/haptics.d.ts +48 -0
  253. package/lib/esm/runtime/haptics.mjs +110 -0
  254. package/lib/esm/runtime/haptics.mjs.map +1 -0
  255. package/lib/esm/runtime/hooks/use-css.d.ts +11 -0
  256. package/lib/esm/runtime/hooks/use-css.mjs +19 -0
  257. package/lib/esm/runtime/hooks/use-css.mjs.map +1 -0
  258. package/lib/esm/runtime/hooks/use-interact.d.ts +42 -0
  259. package/lib/esm/runtime/hooks/use-interact.mjs +44 -0
  260. package/lib/esm/runtime/hooks/use-interact.mjs.map +1 -0
  261. package/lib/esm/runtime/hooks/use-scheme.d.ts +34 -0
  262. package/lib/esm/runtime/hooks/use-scheme.mjs +63 -0
  263. package/lib/esm/runtime/hooks/use-scheme.mjs.map +1 -0
  264. package/lib/esm/runtime/index.d.ts +27 -0
  265. package/lib/esm/runtime/index.mjs +18 -0
  266. package/lib/esm/runtime/index.mjs.map +1 -0
  267. package/lib/esm/runtime/interactive-box.d.ts +40 -0
  268. package/lib/esm/runtime/interactive-box.mjs +33 -0
  269. package/lib/esm/runtime/interactive-box.mjs.map +1 -0
  270. package/lib/esm/runtime/lookup-css.d.ts +164 -0
  271. package/lib/esm/runtime/lookup-css.mjs +531 -0
  272. package/lib/esm/runtime/lookup-css.mjs.map +1 -0
  273. package/lib/esm/runtime/types.d.ts +29 -0
  274. package/lib/esm/testing/index.d.ts +145 -0
  275. package/lib/esm/testing/index.mjs +344 -0
  276. package/lib/esm/testing/index.mjs.map +1 -0
  277. package/package.json +79 -13
  278. package/preset.css +1171 -0
  279. package/src/core/parser/animation.ts +404 -0
  280. package/src/core/parser/border-dispatcher.ts +176 -0
  281. package/src/core/parser/case-convert.ts +10 -0
  282. package/src/core/parser/color-properties-dispatcher.ts +78 -0
  283. package/src/core/parser/color.ts +157 -0
  284. package/src/core/parser/constants.ts +11 -0
  285. package/src/core/parser/declaration.ts +340 -0
  286. package/src/core/parser/gradient.ts +148 -0
  287. package/src/core/parser/haptics.ts +88 -0
  288. package/src/core/parser/index.ts +8 -0
  289. package/src/core/parser/keyframes.ts +84 -0
  290. package/src/core/parser/layout-dispatcher.ts +92 -0
  291. package/src/core/parser/length.ts +100 -0
  292. package/src/core/parser/motion-dispatcher.ts +89 -0
  293. package/src/core/parser/property.ts +15 -0
  294. package/src/core/parser/safe-area.ts +404 -0
  295. package/src/core/parser/selector.ts +17 -0
  296. package/src/core/parser/shorthand.ts +152 -0
  297. package/src/core/parser/text-truncate.ts +79 -0
  298. package/src/core/parser/theme-vars.ts +412 -0
  299. package/src/core/parser/tokens.ts +286 -0
  300. package/src/core/parser/transform.ts +195 -0
  301. package/src/core/parser/tw-parser.ts +1709 -0
  302. package/src/core/parser/types.ts +45 -0
  303. package/src/core/parser/typography-dispatcher.ts +83 -0
  304. package/src/core/parser/typography.ts +83 -0
  305. package/src/core/style-builder/build-style.ts +442 -0
  306. package/src/core/style-builder/index.ts +3 -0
  307. package/src/core/style-builder/union-builder.ts +328 -0
  308. package/src/core/types.ts +15 -0
  309. package/src/metro/dts.ts +128 -0
  310. package/src/metro/index.ts +9 -0
  311. package/src/metro/resolver.ts +42 -0
  312. package/src/metro/state.ts +257 -0
  313. package/src/metro/transform-ast.ts +1498 -0
  314. package/src/metro/transformer.ts +347 -0
  315. package/src/metro/warn-unknown-classes.ts +79 -0
  316. package/src/metro/with-config.ts +229 -0
  317. package/src/runtime/chain-handlers.ts +47 -0
  318. package/src/runtime/components/rnwind-provider.tsx +144 -0
  319. package/src/runtime/gradient-types.ts +60 -0
  320. package/src/runtime/haptics.ts +120 -0
  321. package/src/runtime/hooks/use-css.ts +16 -0
  322. package/src/runtime/hooks/use-interact.ts +65 -0
  323. package/src/runtime/hooks/use-scheme.ts +63 -0
  324. package/src/runtime/index.ts +54 -0
  325. package/src/runtime/interactive-box.tsx +57 -0
  326. package/src/runtime/lookup-css.ts +628 -0
  327. package/src/runtime/types.ts +32 -0
  328. package/src/testing/index.ts +507 -0
  329. package/src/types/tailwindcss-node.d.ts +33 -0
  330. package/src/index.ts +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../../src/runtime/index.ts"],"sourcesContent":["\n\n\n\nexport {\n lookupCss,\n registerAtoms,\n registerBreakpoints,\n registerSchemeLoader,\n setWindowHeightProvider,\n getBreakpoints,\n activeBreakpointFor,\n lookupCss as _l,\n} from './lookup-css'\nexport { useR_ } from './components/rnwind-provider'\nexport type { HoistedClassName, InteractState, LookupInsets, SafeMarkerSpec } from './lookup-css'\nexport { useCss } from './hooks/use-css'\nexport { useInteract } from './hooks/use-interact'\nexport type { UseInteractResult } from './hooks/use-interact'\nexport { chainPress, chainFocus } from './chain-handlers'\nexport { InteractiveBox, InteractiveBox as _ib } from './interactive-box'\nexport type { InteractiveBoxProps, InteractiveSpec } from './interactive-box'\nexport { RnwindProvider, useRnwind } from './components/rnwind-provider'\nexport type { RnwindProviderProps, RnwindState, Insets } from './components/rnwind-provider'\nexport { useMountHaptic, triggerHaptic, triggerHaptic as _ht, useMountHaptic as _hm } from './haptics'\n\n// ──────────────────────────────────────────────────────────────────────\n// Internal aliases the babel transformer uses. Underscore-prefixed so\n// user code (which imports the public names above) can never collide\n// with what we inject at JSX sites — even if the user shadows\n// `lookupCss` / `useHaptics` / `InteractiveBox` with a local symbol,\n// the transformer's emitted code still references the private alias.\n// Don't import these in app code.\n// ──────────────────────────────────────────────────────────────────────\n/** @internal */\n\n/** @internal */\n\n/** @internal */\n\n/** @internal */\n\nexport type { HapticRequest, HapticTrigger, OnHaptics } from '../core/parser/haptics'\nexport type { AsLinearGradientProps, LinearGradientPoint } from './gradient-types'\nexport type { ThemeTable, ThemeTables } from '../core/types'\nexport { useTheme, useToken, useColor, useSize } from './hooks/use-scheme'\nexport type { Scheme, RnwindConfig } from './types'\n\n/**\n * Installed rnwind version, inlined at publish time. Compare against a pinned\n * string when integrating with build tooling that may see multiple rnwind\n * copies (e.g. workspace overrides).\n */\nexport const VERSION = '0.0.1' as const\n"],"names":[],"mappings":";;;;;;;;;AAgDA;;;;AAIG;AACI,MAAM,OAAO,GAAG;;;;"}
@@ -0,0 +1,40 @@
1
+ import { type ElementType, type ReactElement } from 'react';
2
+ import { type HoistedClassName } from './lookup-css';
3
+ import type { RnwindState } from './components/rnwind-provider';
4
+ /**
5
+ * Per-element "interactive" spec the transformer packs into the `_rw`
6
+ * prop on every JSX site it rewrites for active/focus support. Carrying
7
+ * it as one object prop (rather than four sibling props) keeps the
8
+ * rewritten JSX legible and avoids colliding with any host component's
9
+ * own naming.
10
+ */
11
+ export interface InteractiveSpec {
12
+ /** The original JSX tag (`Pressable`, `TextInput`, `Animated.View`, …). */
13
+ readonly as: ElementType;
14
+ /** Hoisted atom-name array (or a dynamic classname string). */
15
+ readonly cn: HoistedClassName | string | null | undefined;
16
+ /** Full rnwind context — `_t = useRnwind___()` from the call site. */
17
+ readonly t: RnwindState;
18
+ /** Optional caller-supplied style forwarded as `lookupCss`'s 3rd arg. */
19
+ readonly us?: unknown;
20
+ }
21
+ /** Props InteractiveBox accepts — `_rw` plus anything to forward. */
22
+ export interface InteractiveBoxProps {
23
+ /** Compile-time spec packed by the transformer. */
24
+ readonly _rw: InteractiveSpec;
25
+ /** Every other prop passes through to the inner component. */
26
+ readonly [key: string]: unknown;
27
+ }
28
+ /**
29
+ * Per-instance wrapper that drives `active:` / `focus:` variants. One
30
+ * `useInteract()` hook per mounted `InteractiveBox` means each element
31
+ * owns its own state — siblings never share `active` / `focus` flags.
32
+ *
33
+ * The transformer replaces
34
+ * `<Pressable className="active:bg-sky-700" onPress={x} />`
35
+ * with
36
+ * `<InteractiveBox _rw={{as: Pressable, cn: _c0, t: _t}} onPress={x} />`.
37
+ * @param props `_rw` spec + any props to forward to the inner component.
38
+ * @returns Rendered element of the inner component with interact wiring.
39
+ */
40
+ export declare function InteractiveBox(props: InteractiveBoxProps): ReactElement;
@@ -0,0 +1,33 @@
1
+ import { createElement } from 'react';
2
+ import { chainFocus, chainPress } from './chain-handlers.mjs';
3
+ import { useInteract } from './hooks/use-interact.mjs';
4
+ import { lookupCss } from './lookup-css.mjs';
5
+
6
+ /**
7
+ * Per-instance wrapper that drives `active:` / `focus:` variants. One
8
+ * `useInteract()` hook per mounted `InteractiveBox` means each element
9
+ * owns its own state — siblings never share `active` / `focus` flags.
10
+ *
11
+ * The transformer replaces
12
+ * `<Pressable className="active:bg-sky-700" onPress={x} />`
13
+ * with
14
+ * `<InteractiveBox _rw={{as: Pressable, cn: _c0, t: _t}} onPress={x} />`.
15
+ * @param props `_rw` spec + any props to forward to the inner component.
16
+ * @returns Rendered element of the inner component with interact wiring.
17
+ */
18
+ function InteractiveBox(props) {
19
+ const { _rw, onPressIn, onPressOut, onFocus, onBlur, ...rest } = props;
20
+ const interact = useInteract();
21
+ const merged = {
22
+ ...rest,
23
+ style: lookupCss(_rw.cn, _rw.t, _rw.us, interact.state),
24
+ onPressIn: chainPress(onPressIn, interact.onPressIn),
25
+ onPressOut: chainPress(onPressOut, interact.onPressOut),
26
+ onFocus: chainFocus(onFocus, interact.onFocus),
27
+ onBlur: chainFocus(onBlur, interact.onBlur),
28
+ };
29
+ return createElement(_rw.as, merged);
30
+ }
31
+
32
+ export { InteractiveBox };
33
+ //# sourceMappingURL=interactive-box.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactive-box.mjs","sources":["../../../../src/runtime/interactive-box.tsx"],"sourcesContent":["import { createElement, type ComponentType, type ElementType, type ReactElement } from 'react'\nimport { chainFocus, chainPress } from './chain-handlers'\nimport { useInteract } from './hooks/use-interact'\nimport { lookupCss, type HoistedClassName } from './lookup-css'\nimport type { RnwindState } from './components/rnwind-provider'\n\n/**\n * Per-element \"interactive\" spec the transformer packs into the `_rw`\n * prop on every JSX site it rewrites for active/focus support. Carrying\n * it as one object prop (rather than four sibling props) keeps the\n * rewritten JSX legible and avoids colliding with any host component's\n * own naming.\n */\nexport interface InteractiveSpec {\n /** The original JSX tag (`Pressable`, `TextInput`, `Animated.View`, …). */\n readonly as: ElementType\n /** Hoisted atom-name array (or a dynamic classname string). */\n readonly cn: HoistedClassName | string | null | undefined\n /** Full rnwind context — `_t = useRnwind___()` from the call site. */\n readonly t: RnwindState\n /** Optional caller-supplied style forwarded as `lookupCss`'s 3rd arg. */\n readonly us?: unknown\n}\n\n/** Props InteractiveBox accepts — `_rw` plus anything to forward. */\nexport interface InteractiveBoxProps {\n /** Compile-time spec packed by the transformer. */\n readonly _rw: InteractiveSpec\n /** Every other prop passes through to the inner component. */\n readonly [key: string]: unknown\n}\n\n/**\n * Per-instance wrapper that drives `active:` / `focus:` variants. One\n * `useInteract()` hook per mounted `InteractiveBox` means each element\n * owns its own state — siblings never share `active` / `focus` flags.\n *\n * The transformer replaces\n * `<Pressable className=\"active:bg-sky-700\" onPress={x} />`\n * with\n * `<InteractiveBox _rw={{as: Pressable, cn: _c0, t: _t}} onPress={x} />`.\n * @param props `_rw` spec + any props to forward to the inner component.\n * @returns Rendered element of the inner component with interact wiring.\n */\nexport function InteractiveBox(props: InteractiveBoxProps): ReactElement {\n const { _rw, onPressIn, onPressOut, onFocus, onBlur, ...rest } = props\n const interact = useInteract()\n const merged: Record<string, unknown> = {\n ...rest,\n style: lookupCss(_rw.cn, _rw.t, _rw.us, interact.state),\n onPressIn: chainPress(onPressIn as Parameters<typeof chainPress>[0], interact.onPressIn),\n onPressOut: chainPress(onPressOut as Parameters<typeof chainPress>[0], interact.onPressOut),\n onFocus: chainFocus(onFocus as Parameters<typeof chainFocus>[0], interact.onFocus),\n onBlur: chainFocus(onBlur as Parameters<typeof chainFocus>[0], interact.onBlur),\n }\n return createElement(_rw.as as ComponentType<Record<string, unknown>>, merged)\n}\n"],"names":[],"mappings":";;;;;AAgCA;;;;;;;;;;;AAWG;AACG,SAAU,cAAc,CAAC,KAA0B,EAAA;AACvD,IAAA,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK;AACtE,IAAA,MAAM,QAAQ,GAAG,WAAW,EAAE;AAC9B,IAAA,MAAM,MAAM,GAA4B;AACtC,QAAA,GAAG,IAAI;AACP,QAAA,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC;QACvD,SAAS,EAAE,UAAU,CAAC,SAA6C,EAAE,QAAQ,CAAC,SAAS,CAAC;QACxF,UAAU,EAAE,UAAU,CAAC,UAA8C,EAAE,QAAQ,CAAC,UAAU,CAAC;QAC3F,OAAO,EAAE,UAAU,CAAC,OAA2C,EAAE,QAAQ,CAAC,OAAO,CAAC;QAClF,MAAM,EAAE,UAAU,CAAC,MAA0C,EAAE,QAAQ,CAAC,MAAM,CAAC;KAChF;IACD,OAAO,aAAa,CAAC,GAAG,CAAC,EAA4C,EAAE,MAAM,CAAC;AAChF;;;;"}
@@ -0,0 +1,164 @@
1
+ /**
2
+ * Runtime resolver for rnwind-transformed files.
3
+ *
4
+ * Hot path is ONE WeakMap.get + cached-array return for stable atoms
5
+ * (no `active:`/`focus:`/`*-safe` variance beyond what the cache key
6
+ * captures). First call per (hoist, scheme, stateIndex) walks the
7
+ * atoms once, looks each up as
8
+ *
9
+ * `cache.atoms[scheme]?.[atom] ?? cache.atoms.common?.[atom]`
10
+ *
11
+ * and caches the result. `registerAtoms(scheme, record)` bumps a
12
+ * version counter; the next lookup notices the mismatch and rebuilds.
13
+ *
14
+ * Keyframes are inlined directly into atom values via `animationName`
15
+ * at build time — no separate registry.
16
+ */
17
+ import type { RnwindState } from './components/rnwind-provider';
18
+ /**
19
+ * One entry in the sorted-by-threshold breakpoints array. The runtime
20
+ * derives an atom's threshold by matching its `<prefix>:` against
21
+ * `name`; the array form is preferred over a Map so the hot-path
22
+ * `tierFor(width)` walk is a tight numeric loop.
23
+ */
24
+ interface BreakpointEntry {
25
+ readonly name: string;
26
+ readonly minWidth: number;
27
+ }
28
+ /** Optional window-height provider for the `screen-minus-y` marker. */
29
+ type WindowHeightProvider = () => number;
30
+ /**
31
+ * Optional scheme loader. Registered by the generated manifest module
32
+ * (`rnwind/__generated/schemes`) once at import time. SchemeProvider
33
+ * calls it synchronously on every render with the active scheme name;
34
+ * first call per scheme pulls the scheme's style module in via an
35
+ * inline `require()` — subsequent calls are a no-op through Metro's
36
+ * module cache.
37
+ */
38
+ type SchemeLoader = (scheme: string) => void;
39
+ /**
40
+ * Per-render snapshot of which interactive states (active, focus) are
41
+ * currently engaged. Forwarded from the `useInteract()` hook the
42
+ * transformer injects.
43
+ */
44
+ export interface InteractState {
45
+ active?: boolean;
46
+ focus?: boolean;
47
+ }
48
+ /**
49
+ * Safe-area insets bundle the transformer passes to `lookupCss` when a
50
+ * file uses any `*-safe` utility.
51
+ */
52
+ export interface LookupInsets {
53
+ top: number;
54
+ right: number;
55
+ bottom: number;
56
+ left: number;
57
+ }
58
+ /**
59
+ * Precomputed safe-area marker spec emitted by the build-side
60
+ * `envelopeSafeMarkers`. Tuple form: `[cssKey, sideTag, or, offset]`.
61
+ */
62
+ export type SafeMarkerSpec = readonly [string, string, number | undefined, number | undefined];
63
+ /** Type alias: the atom-list build output the transformer emits. */
64
+ export type HoistedClassName = readonly string[];
65
+ /**
66
+ * Register a window-height provider used by the `screen-minus-y`
67
+ * safe-area variant. When not wired, `h-screen-safe` resolves to `0`.
68
+ * @param provider Callback returning the current window height in px.
69
+ */
70
+ export declare function setWindowHeightProvider(provider: WindowHeightProvider | null): void;
71
+ /**
72
+ * Register the scheme-loader function exported by the generated
73
+ * manifest module. Called once at manifest-module evaluation time —
74
+ * subsequent registrations override the previous loader (useful for
75
+ * tests).
76
+ * @param loader Manifest's `ensureSchemeLoaded` function, or null to
77
+ * detach (tests).
78
+ */
79
+ export declare function registerSchemeLoader(loader: SchemeLoader | null): void;
80
+ /**
81
+ * Ensure the given scheme's style module is loaded. Safe to call in
82
+ * render — zero-cost after the first call per scheme thanks to
83
+ * Metro's module cache, and a no-op when no loader is registered
84
+ * (tests, or a bundle without rnwind-transformed sources).
85
+ * @param scheme Active scheme name.
86
+ */
87
+ export declare function loadScheme(scheme: string): void;
88
+ /**
89
+ * Register (or re-register) one scheme's atoms in the global registry.
90
+ * Pure property assignment — no iteration, no allocation. The version
91
+ * counter bump invalidates every hoist-level result cache lazily on
92
+ * next read.
93
+ * @param scheme Registry key — `'common'` for the always-loaded
94
+ * fallback, or a variant name (`'dark'`, `'light'`, `'brand'`, ...).
95
+ * @param atoms Plain record keyed by atom name.
96
+ */
97
+ export declare function registerAtoms(scheme: string, atoms: Record<string, unknown>): void;
98
+ /**
99
+ * Register the responsive-breakpoint table the manifest module emits at
100
+ * load time. Replaces the prior table — calling with `{}` clears it.
101
+ * Bumps `atomVersion` so any cached lookup invalidates on next read,
102
+ * which matters during a theme HMR cycle that adds/removes breakpoints.
103
+ * @param breakpoints Breakpoint name → minimum-width threshold (px).
104
+ */
105
+ export declare function registerBreakpoints(breakpoints: Record<string, number>): void;
106
+ /**
107
+ * Snapshot of the registered breakpoints, for callers that want to
108
+ * compute their own derivations (e.g. the provider deriving the active
109
+ * breakpoint name). Returns a fresh array — callers can iterate without
110
+ * worrying about concurrent mutation from a manifest reload.
111
+ * @returns Breakpoints sorted by ascending min-width threshold.
112
+ */
113
+ export declare function getBreakpoints(): readonly BreakpointEntry[];
114
+ /**
115
+ * Sentinel name returned by {@link activeBreakpointFor} ONLY when no
116
+ * breakpoints are registered at all (bundle without rnwind-transformed
117
+ * sources, fresh test setup). When at least one breakpoint is
118
+ * registered, the function falls back to the smallest registered name
119
+ * instead — so phone-width devices (402 dp on a stock iPhone, well
120
+ * below `sm = 640`) report `activeBreakpoint === 'sm'` rather than the
121
+ * abstract `'base'`. This matches the user expectation that the value
122
+ * is always a real Tailwind breakpoint label they can branch on.
123
+ *
124
+ * Note: this is decoupled from the className filter. `sm:*` atoms
125
+ * still only fire at `windowWidth >= 640` per Tailwind's mobile-first
126
+ * spec — `activeBreakpoint === 'sm'` at 402 means "I'm in the smallest
127
+ * tier", not "`sm:` classes are firing".
128
+ */
129
+ export declare const BASE_BREAKPOINT = "base";
130
+ /**
131
+ * Resolve the currently-active breakpoint name for a width:
132
+ * - `windowWidth >= some threshold` → the highest matching breakpoint name.
133
+ * - below every registered threshold → the smallest registered name.
134
+ * - no breakpoints registered → {@link BASE_BREAKPOINT}.
135
+ * Always returns a string so consumers can branch on it without
136
+ * null-handling.
137
+ * @param windowWidth Live window width in px.
138
+ * @returns Active breakpoint name (never null).
139
+ */
140
+ export declare function activeBreakpointFor(windowWidth: number): string;
141
+ /**
142
+ * Resolve a className input against the active rnwind context. Hot
143
+ * path:
144
+ * - Array input (build hoist): ONE WeakMap.get + ONE record-access
145
+ * + cached array return. No per-render allocation when there's no
146
+ * userStyle and the hoist has no safe atoms.
147
+ * - String input (dynamic `className={expr}`): tokenise + walk.
148
+ * @param input Hoisted atom list or raw className string.
149
+ * @param ctx Rnwind context — `{scheme, fontScale, insets}` (extra
150
+ * fields ignored). Pass the result of `useRnwind()` directly.
151
+ * @param userStyle Optional caller-supplied style appended last.
152
+ * @param interactState Live active/focus flags from `useInteract()`.
153
+ * @returns Style array for React Native's `style` prop.
154
+ */
155
+ export declare function lookupCss(input: HoistedClassName | string | null | undefined, ctx: RnwindState, userStyle?: unknown, interactState?: InteractState): readonly unknown[];
156
+ /** Test-only — clear the global registry between suites. */
157
+ export declare function __resetLookupCssState(): void;
158
+ /**
159
+ * Test-only sugar: accept a single-scheme record and register it as the
160
+ * `common` table.
161
+ * @param record Atom name → value record (registered under `common`).
162
+ */
163
+ export declare function __registerAtomsFromRecord(record: Record<string, unknown>): void;
164
+ export {};