@niibase/uniwind 1.6.4 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (342) hide show
  1. package/CHANGELOG.md +71 -0
  2. package/dist/cli/index.cjs +91 -0
  3. package/dist/cli/index.mjs +84 -0
  4. package/dist/common/{css → bundler/artifacts/css}/index.js +1 -4
  5. package/dist/common/{css → bundler/artifacts/css}/themes.js +4 -1
  6. package/dist/common/{utils/buildDtsFile.js → bundler/artifacts/dts.js} +1 -2
  7. package/dist/common/bundler/cli/index.js +76 -0
  8. package/dist/common/bundler/config.js +75 -0
  9. package/dist/common/bundler/css-compiler/compileCSS.js +18 -0
  10. package/dist/common/bundler/css-compiler/compileNativeCSS.js +19 -0
  11. package/dist/common/bundler/css-compiler/compileTailwind.js +27 -0
  12. package/dist/common/bundler/css-compiler/compileWebCSS.js +15 -0
  13. package/dist/common/{vite → bundler/css-compiler}/index.js +4 -4
  14. package/dist/common/bundler/css-processor/addMetaToStylesTemplate.js +130 -0
  15. package/dist/common/bundler/css-processor/animation.js +112 -0
  16. package/dist/common/bundler/css-processor/color.js +66 -0
  17. package/dist/common/bundler/css-processor/css.js +510 -0
  18. package/dist/common/bundler/css-processor/functions.js +145 -0
  19. package/dist/common/bundler/css-processor/index.js +38 -0
  20. package/dist/common/bundler/css-processor/mq.js +87 -0
  21. package/dist/common/bundler/css-processor/processor.js +353 -0
  22. package/dist/common/bundler/css-processor/rn.js +356 -0
  23. package/dist/common/bundler/css-processor/serialize.js +86 -0
  24. package/dist/common/bundler/css-processor/types.js +1 -0
  25. package/dist/common/bundler/css-processor/units.js +55 -0
  26. package/dist/common/bundler/css-processor/utils.js +61 -0
  27. package/dist/common/bundler/css-processor/var.js +20 -0
  28. package/dist/common/{css-visitor → bundler/css-visitor}/rule-visitor.js +7 -7
  29. package/dist/common/{css-visitor → bundler/css-visitor}/visitor.js +5 -6
  30. package/dist/common/bundler/logger.js +44 -0
  31. package/dist/common/bundler/types.js +1 -0
  32. package/dist/common/common/consts.js +26 -2
  33. package/dist/common/components/web/rnw.js +2 -2
  34. package/dist/common/core/config/config.common.js +9 -9
  35. package/dist/common/core/config/config.js +2 -2
  36. package/dist/common/core/config/config.native.js +4 -8
  37. package/dist/common/core/listener.js +10 -10
  38. package/dist/common/core/native/native-utils.js +1 -8
  39. package/dist/common/core/native/parsers/textShadow.js +6 -18
  40. package/dist/common/core/native/parsers/transforms.js +1 -5
  41. package/dist/common/core/native/runtime.js +7 -3
  42. package/dist/common/core/native/store.js +22 -69
  43. package/dist/common/core/web/cssListener.js +2 -2
  44. package/dist/common/hoc/withUniwind.js +5 -5
  45. package/dist/common/hoc/withUniwind.native.js +5 -5
  46. package/dist/common/hooks/useCSSVariable/getVariableValue.native.js +4 -1
  47. package/dist/common/hooks/useCSSVariable/useCSSVariable.js +6 -2
  48. package/dist/common/hooks/useUniwind.js +2 -2
  49. package/dist/metro/index.cjs +40 -34
  50. package/dist/metro/index.d.ts +2 -0
  51. package/dist/metro/index.mjs +28 -22
  52. package/dist/metro/{metro-transformer.cjs → transformer.cjs} +316 -200
  53. package/dist/metro/{metro-transformer.mjs → transformer.mjs} +254 -138
  54. package/dist/module/{css → bundler/artifacts/css}/index.d.ts +1 -1
  55. package/dist/module/{css → bundler/artifacts/css}/index.js +1 -4
  56. package/dist/module/{css → bundler/artifacts/css}/themes.js +4 -1
  57. package/dist/module/{utils/buildDtsFile.js → bundler/artifacts/dts.js} +3 -4
  58. package/dist/module/bundler/cli/index.d.ts +2 -0
  59. package/dist/module/bundler/cli/index.js +81 -0
  60. package/dist/module/bundler/config.d.ts +17 -0
  61. package/dist/module/bundler/config.js +77 -0
  62. package/dist/module/bundler/css-compiler/compileCSS.d.ts +2 -0
  63. package/dist/module/bundler/css-compiler/compileCSS.js +11 -0
  64. package/dist/module/bundler/css-compiler/compileNativeCSS.d.ts +2 -0
  65. package/dist/module/bundler/css-compiler/compileNativeCSS.js +33 -0
  66. package/dist/module/bundler/css-compiler/compileTailwind.d.ts +2 -0
  67. package/dist/module/bundler/css-compiler/compileTailwind.js +22 -0
  68. package/dist/module/bundler/css-compiler/compileWebCSS.d.ts +2 -0
  69. package/dist/module/bundler/css-compiler/compileWebCSS.js +8 -0
  70. package/dist/module/bundler/css-compiler/index.d.ts +1 -0
  71. package/dist/module/bundler/css-compiler/index.js +1 -0
  72. package/dist/module/bundler/css-processor/addMetaToStylesTemplate.d.ts +3 -0
  73. package/dist/module/bundler/css-processor/addMetaToStylesTemplate.js +136 -0
  74. package/dist/module/bundler/css-processor/animation.d.ts +6 -0
  75. package/dist/module/bundler/css-processor/animation.js +112 -0
  76. package/dist/module/bundler/css-processor/color.d.ts +12 -0
  77. package/dist/module/bundler/css-processor/color.js +63 -0
  78. package/dist/module/bundler/css-processor/css.d.ts +23 -0
  79. package/dist/module/bundler/css-processor/css.js +566 -0
  80. package/dist/module/bundler/css-processor/functions.d.ts +12 -0
  81. package/dist/module/bundler/css-processor/functions.js +190 -0
  82. package/dist/module/bundler/css-processor/index.d.ts +3 -0
  83. package/dist/module/bundler/css-processor/index.js +3 -0
  84. package/dist/module/bundler/css-processor/mq.d.ts +12 -0
  85. package/dist/module/bundler/css-processor/mq.js +78 -0
  86. package/dist/module/bundler/css-processor/processor.d.ts +36 -0
  87. package/dist/module/bundler/css-processor/processor.js +336 -0
  88. package/dist/module/bundler/css-processor/rn.d.ts +10 -0
  89. package/dist/module/bundler/css-processor/rn.js +400 -0
  90. package/dist/module/bundler/css-processor/serialize.d.ts +2 -0
  91. package/dist/module/bundler/css-processor/serialize.js +101 -0
  92. package/dist/module/bundler/css-processor/types.d.ts +28 -0
  93. package/dist/module/bundler/css-processor/types.js +0 -0
  94. package/dist/module/bundler/css-processor/units.d.ts +10 -0
  95. package/dist/module/bundler/css-processor/units.js +48 -0
  96. package/dist/module/bundler/css-processor/utils.d.ts +23 -0
  97. package/dist/{shared/uniwind.PtWWxxnh.mjs → module/bundler/css-processor/utils.js} +12 -18
  98. package/dist/module/bundler/css-processor/var.d.ts +7 -0
  99. package/dist/module/bundler/css-processor/var.js +13 -0
  100. package/dist/module/{css-visitor → bundler/css-visitor}/function-visitor.d.ts +1 -1
  101. package/dist/module/{css-visitor → bundler/css-visitor}/rule-visitor.d.ts +4 -3
  102. package/dist/module/{css-visitor → bundler/css-visitor}/rule-visitor.js +7 -7
  103. package/dist/module/{css-visitor → bundler/css-visitor}/visitor.d.ts +3 -3
  104. package/dist/module/{css-visitor → bundler/css-visitor}/visitor.js +5 -6
  105. package/dist/module/bundler/logger.d.ts +12 -0
  106. package/dist/module/bundler/logger.js +37 -0
  107. package/dist/module/bundler/types.d.ts +15 -0
  108. package/dist/module/bundler/types.js +0 -0
  109. package/dist/module/common/consts.d.ts +21 -0
  110. package/dist/module/common/consts.js +24 -0
  111. package/dist/module/components/ScopedTheme/ScopedTheme.native.d.ts +1 -1
  112. package/dist/module/components/native/Pressable.d.ts +1 -1
  113. package/dist/module/components/native/TouchableHighlight.d.ts +1 -1
  114. package/dist/module/components/native/TouchableOpacity.d.ts +1 -1
  115. package/dist/module/components/native/useAccentColor.d.ts +1 -1
  116. package/dist/module/components/native/useStyle.d.ts +3 -3
  117. package/dist/module/components/react-native-gesture-handler/native/BaseButton.d.ts +1 -1
  118. package/dist/module/components/react-native-gesture-handler/native/BorderlessButton.d.ts +1 -1
  119. package/dist/module/components/react-native-gesture-handler/native/DrawerLayoutAndroid.d.ts +1 -1
  120. package/dist/module/components/react-native-gesture-handler/native/FlatList.d.ts +1 -1
  121. package/dist/module/components/react-native-gesture-handler/native/Pressable.d.ts +1 -1
  122. package/dist/module/components/react-native-gesture-handler/native/PureNativeButton.d.ts +1 -1
  123. package/dist/module/components/react-native-gesture-handler/native/RawButton.d.ts +1 -1
  124. package/dist/module/components/react-native-gesture-handler/native/RectButton.d.ts +1 -1
  125. package/dist/module/components/react-native-gesture-handler/native/RefreshControl.d.ts +1 -1
  126. package/dist/module/components/react-native-gesture-handler/native/ScrollView.d.ts +1 -1
  127. package/dist/module/components/react-native-gesture-handler/native/Switch.d.ts +1 -1
  128. package/dist/module/components/react-native-gesture-handler/native/Text.d.ts +4 -1
  129. package/dist/module/components/react-native-gesture-handler/native/TextInput.d.ts +1 -1
  130. package/dist/module/components/web/Pressable.d.ts +1 -1
  131. package/dist/module/components/web/TouchableHighlight.d.ts +1 -1
  132. package/dist/module/components/web/TouchableOpacity.d.ts +1 -1
  133. package/dist/module/components/web/rnw.js +1 -1
  134. package/dist/module/core/config/config.common.d.ts +6 -7
  135. package/dist/module/core/config/config.common.js +2 -2
  136. package/dist/module/core/config/config.d.ts +1 -1
  137. package/dist/module/core/config/config.js +1 -1
  138. package/dist/module/core/config/config.native.d.ts +2 -2
  139. package/dist/module/core/config/config.native.js +2 -6
  140. package/dist/module/core/listener.d.ts +1 -1
  141. package/dist/module/core/listener.js +1 -1
  142. package/dist/module/core/native/native-utils.d.ts +0 -1
  143. package/dist/module/core/native/native-utils.js +0 -6
  144. package/dist/module/core/native/parsers/textShadow.js +6 -18
  145. package/dist/module/core/native/parsers/transforms.js +1 -5
  146. package/dist/module/core/native/runtime.js +5 -1
  147. package/dist/module/core/native/store.d.ts +3 -3
  148. package/dist/module/core/native/store.js +22 -65
  149. package/dist/module/core/types.d.ts +12 -7
  150. package/dist/module/core/web/cssListener.js +1 -1
  151. package/dist/module/core/web/getWebStyles.d.ts +1 -1
  152. package/dist/module/hoc/types.d.ts +2 -2
  153. package/dist/module/hoc/withUniwind.d.ts +1 -1
  154. package/dist/module/hoc/withUniwind.js +5 -5
  155. package/dist/module/hoc/withUniwind.native.d.ts +1 -1
  156. package/dist/module/hoc/withUniwind.native.js +5 -5
  157. package/dist/module/hooks/useCSSVariable/getVariableValue.native.d.ts +1 -1
  158. package/dist/module/hooks/useCSSVariable/getVariableValue.native.js +4 -1
  159. package/dist/module/hooks/useCSSVariable/useCSSVariable.d.ts +1 -1
  160. package/dist/module/hooks/useCSSVariable/useCSSVariable.js +5 -1
  161. package/dist/module/hooks/useResolveClassNames.d.ts +1 -1
  162. package/dist/module/hooks/useUniwind.d.ts +1 -1
  163. package/dist/module/hooks/useUniwind.js +1 -1
  164. package/dist/module/index.d.ts +1 -2
  165. package/dist/shared/{uniwind.r2i22V6d.cjs → uniwind.BEqYiPBB.cjs} +319 -217
  166. package/dist/shared/uniwind.CFAAUZ2t.mjs +3 -0
  167. package/dist/shared/uniwind.DJ5M1Q4q.cjs +5 -0
  168. package/dist/shared/{uniwind.BGiqYvxb.mjs → uniwind.DgC4MT51.mjs} +312 -214
  169. package/dist/vite/index.cjs +82 -59
  170. package/dist/vite/index.mjs +80 -58
  171. package/package.json +37 -21
  172. package/src/{metro → bundler/adapters/metro}/index.d.ts +2 -0
  173. package/src/bundler/adapters/metro/index.ts +1 -0
  174. package/src/bundler/adapters/metro/metro.ts +67 -0
  175. package/src/{metro/metro-css-patches.ts → bundler/adapters/metro/patches.ts} +3 -2
  176. package/src/{metro → bundler/adapters/metro}/resolvers.ts +8 -8
  177. package/src/bundler/adapters/metro/transformer.ts +85 -0
  178. package/src/bundler/adapters/vite/vite.ts +148 -0
  179. package/src/{css → bundler/artifacts/css}/extraUtilities.ts +1 -1
  180. package/src/{css → bundler/artifacts/css}/index.ts +1 -5
  181. package/src/{css → bundler/artifacts/css}/themes.ts +7 -2
  182. package/src/{utils/buildDtsFile.ts → bundler/artifacts/dts.ts} +3 -4
  183. package/src/bundler/cli/index.ts +105 -0
  184. package/src/bundler/config.ts +94 -0
  185. package/src/bundler/css-compiler/compileCSS.ts +15 -0
  186. package/src/bundler/css-compiler/compileNativeCSS.ts +41 -0
  187. package/src/bundler/css-compiler/compileTailwind.ts +25 -0
  188. package/src/bundler/css-compiler/compileWebCSS.ts +10 -0
  189. package/src/bundler/css-compiler/index.ts +1 -0
  190. package/src/{metro → bundler/css-processor}/addMetaToStylesTemplate.ts +36 -17
  191. package/src/{metro/processor → bundler/css-processor}/animation.ts +4 -4
  192. package/src/{metro/processor → bundler/css-processor}/color.ts +5 -4
  193. package/src/{metro/processor → bundler/css-processor}/css.ts +19 -11
  194. package/src/{metro/processor → bundler/css-processor}/functions.ts +2 -2
  195. package/src/bundler/css-processor/index.ts +3 -0
  196. package/src/{metro/processor → bundler/css-processor}/mq.ts +4 -4
  197. package/src/{metro/processor → bundler/css-processor}/processor.ts +20 -18
  198. package/src/{metro/processor → bundler/css-processor}/rn.ts +96 -3
  199. package/src/{metro/utils → bundler/css-processor}/serialize.ts +2 -2
  200. package/src/{metro → bundler/css-processor}/types.ts +3 -17
  201. package/src/{metro/processor → bundler/css-processor}/units.ts +2 -2
  202. package/src/{metro/utils/common.ts → bundler/css-processor/utils.ts} +2 -5
  203. package/src/{metro/processor → bundler/css-processor}/var.ts +2 -2
  204. package/src/{css-visitor → bundler/css-visitor}/function-visitor.ts +1 -1
  205. package/src/{css-visitor → bundler/css-visitor}/rule-visitor.ts +8 -7
  206. package/src/{css-visitor → bundler/css-visitor}/visitor.ts +4 -3
  207. package/src/{metro → bundler}/logger.ts +4 -0
  208. package/src/bundler/types.ts +17 -0
  209. package/src/common/consts.ts +25 -0
  210. package/src/components/ScopedTheme/ScopedTheme.native.tsx +1 -1
  211. package/src/components/native/ActivityIndicator.tsx +2 -1
  212. package/src/components/native/Button.tsx +2 -1
  213. package/src/components/native/FlatList.tsx +2 -1
  214. package/src/components/native/Image.tsx +2 -1
  215. package/src/components/native/ImageBackground.tsx +2 -1
  216. package/src/components/native/InputAccessoryView.tsx +3 -2
  217. package/src/components/native/KeyboardAvoidingView.tsx +2 -1
  218. package/src/components/native/Modal.tsx +2 -1
  219. package/src/components/native/Pressable.tsx +1 -1
  220. package/src/components/native/RefreshControl.tsx +2 -1
  221. package/src/components/native/SafeAreaView.tsx +2 -1
  222. package/src/components/native/ScrollView.tsx +2 -1
  223. package/src/components/native/SectionList.tsx +2 -1
  224. package/src/components/native/Switch.tsx +3 -2
  225. package/src/components/native/Text.tsx +3 -2
  226. package/src/components/native/TextInput.tsx +3 -2
  227. package/src/components/native/TouchableHighlight.tsx +3 -2
  228. package/src/components/native/TouchableNativeFeedback.tsx +3 -2
  229. package/src/components/native/TouchableOpacity.tsx +3 -2
  230. package/src/components/native/TouchableWithoutFeedback.tsx +3 -2
  231. package/src/components/native/View.tsx +2 -1
  232. package/src/components/native/VirtualizedList.tsx +2 -1
  233. package/src/components/native/useAccentColor.ts +1 -1
  234. package/src/components/native/useStyle.ts +2 -2
  235. package/src/components/react-native-gesture-handler/native/BaseButton.tsx +1 -1
  236. package/src/components/react-native-gesture-handler/native/BorderlessButton.tsx +1 -1
  237. package/src/components/react-native-gesture-handler/native/DrawerLayoutAndroid.tsx +1 -1
  238. package/src/components/react-native-gesture-handler/native/FlatList.tsx +1 -1
  239. package/src/components/react-native-gesture-handler/native/GestureHandlerRootView.tsx +1 -1
  240. package/src/components/react-native-gesture-handler/native/Pressable.tsx +1 -1
  241. package/src/components/react-native-gesture-handler/native/PureNativeButton.tsx +1 -1
  242. package/src/components/react-native-gesture-handler/native/RawButton.tsx +1 -1
  243. package/src/components/react-native-gesture-handler/native/RectButton.tsx +1 -1
  244. package/src/components/react-native-gesture-handler/native/RefreshControl.tsx +1 -1
  245. package/src/components/react-native-gesture-handler/native/ScrollView.tsx +1 -1
  246. package/src/components/react-native-gesture-handler/native/Switch.tsx +2 -2
  247. package/src/components/react-native-gesture-handler/native/Text.tsx +2 -2
  248. package/src/components/react-native-gesture-handler/native/TextInput.tsx +2 -2
  249. package/src/components/react-native-gesture-handler/native/TouchableNativeFeedback.tsx +2 -2
  250. package/src/components/react-native-gesture-handler/native/TouchableOpacity.tsx +2 -2
  251. package/src/components/react-native-gesture-handler/native/TouchableWithoutFeedback.tsx +2 -2
  252. package/src/components/web/ActivityIndicator.tsx +2 -1
  253. package/src/components/web/Button.tsx +2 -1
  254. package/src/components/web/FlatList.tsx +2 -1
  255. package/src/components/web/Image.tsx +2 -1
  256. package/src/components/web/ImageBackground.tsx +2 -1
  257. package/src/components/web/KeyboardAvoidingView.tsx +2 -1
  258. package/src/components/web/Modal.tsx +2 -1
  259. package/src/components/web/Pressable.tsx +2 -1
  260. package/src/components/web/RefreshControl.tsx +2 -1
  261. package/src/components/web/SafeAreaView.tsx +2 -1
  262. package/src/components/web/ScrollView.tsx +2 -1
  263. package/src/components/web/SectionList.tsx +2 -1
  264. package/src/components/web/Switch.tsx +2 -1
  265. package/src/components/web/Text.tsx +2 -1
  266. package/src/components/web/TextInput.tsx +2 -1
  267. package/src/components/web/TouchableHighlight.tsx +2 -1
  268. package/src/components/web/TouchableOpacity.tsx +2 -1
  269. package/src/components/web/TouchableWithoutFeedback.tsx +2 -1
  270. package/src/components/web/View.tsx +2 -1
  271. package/src/components/web/VirtualizedList.tsx +2 -1
  272. package/src/components/web/rnw.ts +1 -1
  273. package/src/core/config/config.common.ts +11 -9
  274. package/src/core/config/config.native.ts +4 -8
  275. package/src/core/config/config.ts +2 -2
  276. package/src/core/listener.ts +1 -1
  277. package/src/core/native/native-utils.ts +0 -9
  278. package/src/core/native/parsers/textShadow.ts +6 -18
  279. package/src/core/native/parsers/transforms.ts +1 -5
  280. package/src/core/native/runtime.ts +6 -1
  281. package/src/core/native/store.ts +26 -69
  282. package/src/core/types.ts +13 -7
  283. package/src/core/web/cssListener.ts +1 -1
  284. package/src/core/web/getWebStyles.ts +1 -1
  285. package/src/hoc/types.ts +2 -2
  286. package/src/hoc/withUniwind.native.tsx +4 -3
  287. package/src/hoc/withUniwind.tsx +3 -2
  288. package/src/hooks/useCSSVariable/getVariableValue.native.ts +6 -3
  289. package/src/hooks/useCSSVariable/useCSSVariable.ts +8 -2
  290. package/src/hooks/useResolveClassNames.ts +1 -1
  291. package/src/hooks/useUniwind.ts +2 -2
  292. package/src/index.ts +1 -2
  293. package/dist/common/types.js +0 -28
  294. package/dist/common/utils/stringifyThemes.js +0 -8
  295. package/dist/common/vite/vite.js +0 -95
  296. package/dist/module/types.d.ts +0 -21
  297. package/dist/module/types.js +0 -22
  298. package/dist/module/utils/stringifyThemes.d.ts +0 -1
  299. package/dist/module/utils/stringifyThemes.js +0 -1
  300. package/dist/module/vite/index.d.ts +0 -9
  301. package/dist/module/vite/index.js +0 -1
  302. package/dist/module/vite/vite.d.ts +0 -8
  303. package/dist/module/vite/vite.js +0 -98
  304. package/dist/shared/uniwind.B5q8hBGv.cjs +0 -18
  305. package/dist/shared/uniwind.Cv73KtI-.cjs +0 -86
  306. package/dist/shared/uniwind.JSWK3vHl.mjs +0 -14
  307. package/src/metro/compileVirtual.ts +0 -85
  308. package/src/metro/index.ts +0 -1
  309. package/src/metro/injectThemes.ts +0 -23
  310. package/src/metro/metro-transformer.ts +0 -116
  311. package/src/metro/processor/index.ts +0 -1
  312. package/src/metro/utils/index.ts +0 -2
  313. package/src/metro/withUniwindConfig.ts +0 -61
  314. package/src/types.ts +0 -23
  315. package/src/utils/stringifyThemes.ts +0 -1
  316. package/src/vite/index.d.ts +0 -9
  317. package/src/vite/vite.ts +0 -113
  318. /package/dist/common/{css → bundler/artifacts/css}/extraUtilities.js +0 -0
  319. /package/dist/common/{css → bundler/artifacts/css}/insets.js +0 -0
  320. /package/dist/common/{css → bundler/artifacts/css}/overwrite.js +0 -0
  321. /package/dist/common/{css → bundler/artifacts/css}/variants.js +0 -0
  322. /package/dist/common/{css-visitor → bundler/css-visitor}/function-visitor.js +0 -0
  323. /package/dist/common/{css-visitor → bundler/css-visitor}/index.js +0 -0
  324. /package/dist/module/{css → bundler/artifacts/css}/extraUtilities.d.ts +0 -0
  325. /package/dist/module/{css → bundler/artifacts/css}/extraUtilities.js +0 -0
  326. /package/dist/module/{css → bundler/artifacts/css}/insets.d.ts +0 -0
  327. /package/dist/module/{css → bundler/artifacts/css}/insets.js +0 -0
  328. /package/dist/module/{css → bundler/artifacts/css}/overwrite.d.ts +0 -0
  329. /package/dist/module/{css → bundler/artifacts/css}/overwrite.js +0 -0
  330. /package/dist/module/{css → bundler/artifacts/css}/themes.d.ts +0 -0
  331. /package/dist/module/{css → bundler/artifacts/css}/variants.d.ts +0 -0
  332. /package/dist/module/{css → bundler/artifacts/css}/variants.js +0 -0
  333. /package/dist/module/{utils/buildDtsFile.d.ts → bundler/artifacts/dts.d.ts} +0 -0
  334. /package/dist/module/{css-visitor → bundler/css-visitor}/function-visitor.js +0 -0
  335. /package/dist/module/{css-visitor → bundler/css-visitor}/index.d.ts +0 -0
  336. /package/dist/module/{css-visitor → bundler/css-visitor}/index.js +0 -0
  337. /package/{dist/common → src/bundler/adapters}/vite/index.d.ts +0 -0
  338. /package/src/{vite → bundler/adapters/vite}/index.ts +0 -0
  339. /package/src/{css → bundler/artifacts/css}/insets.ts +0 -0
  340. /package/src/{css → bundler/artifacts/css}/overwrite.ts +0 -0
  341. /package/src/{css → bundler/artifacts/css}/variants.ts +0 -0
  342. /package/src/{css-visitor → bundler/css-visitor}/index.ts +0 -0
@@ -0,0 +1,7 @@
1
+ import type { Variable } from 'lightningcss';
2
+ import type { ProcessorBuilder } from './processor';
3
+ export declare class Var {
4
+ private readonly Processor;
5
+ constructor(Processor: ProcessorBuilder);
6
+ processVar(variable: Variable): string;
7
+ }
@@ -0,0 +1,13 @@
1
+ export class Var {
2
+ constructor(Processor) {
3
+ this.Processor = Processor;
4
+ }
5
+ processVar(variable) {
6
+ const value = `vars[${JSON.stringify(variable.name.ident)}]?.(vars)`;
7
+ if (!variable.fallback || variable.fallback.length === 0) {
8
+ return value;
9
+ }
10
+ const fallback = this.Processor.CSS.processValue(variable.fallback);
11
+ return `${value} ?? ${fallback}`;
12
+ }
13
+ }
@@ -1,4 +1,4 @@
1
- import { Function as LightningCSSFunction, TokenOrValue } from 'lightningcss';
1
+ import type { Function as LightningCSSFunction, TokenOrValue } from 'lightningcss';
2
2
  export declare class FunctionVisitor {
3
3
  [name: string]: (fn: LightningCSSFunction) => TokenOrValue;
4
4
  platformSelect(fn: LightningCSSFunction): TokenOrValue;
@@ -1,4 +1,5 @@
1
- import { ReturnedDeclaration, ReturnedMediaQuery, ReturnedRule, Rule } from 'lightningcss';
1
+ import type { ReturnedDeclaration, ReturnedMediaQuery, ReturnedRule, Rule } from 'lightningcss';
2
+ import type { UniwindBundlerConfig } from '../config';
2
3
  type LightningRuleVisitor = Rule<ReturnedDeclaration, ReturnedMediaQuery>;
3
4
  type LightningRuleVisitors = Partial<{
4
5
  [K in LightningRuleVisitor['type']]: (rule: Extract<LightningRuleVisitor, {
@@ -6,11 +7,11 @@ type LightningRuleVisitors = Partial<{
6
7
  }>) => ReturnedRule | Array<ReturnedRule> | void;
7
8
  }>;
8
9
  export declare class RuleVisitor implements LightningRuleVisitors {
9
- private readonly themes;
10
+ private readonly bundlerConfig;
10
11
  processedClassNames: Set<string>;
11
12
  processedVariables: Set<string>;
12
13
  currentLayerName: string;
13
- constructor(themes: Array<string>);
14
+ constructor(bundlerConfig: UniwindBundlerConfig);
14
15
  'layer-block': (layer: Extract<LightningRuleVisitor, {
15
16
  type: "layer-block";
16
17
  }>) => void;
@@ -1,6 +1,6 @@
1
1
  export class RuleVisitor {
2
- constructor(themes) {
3
- this.themes = themes;
2
+ constructor(bundlerConfig) {
3
+ this.bundlerConfig = bundlerConfig;
4
4
  }
5
5
  processedClassNames = /* @__PURE__ */ new Set();
6
6
  processedVariables = /* @__PURE__ */ new Set();
@@ -60,7 +60,7 @@ export class RuleVisitor {
60
60
  if (whereSelector?.type !== "class") {
61
61
  return styleRule;
62
62
  }
63
- const selectedVariant = this.themes.find((theme) => whereSelector.name === theme);
63
+ const selectedVariant = this.bundlerConfig.themes.find((theme) => whereSelector.name === theme);
64
64
  if (selectedVariant === void 0 || this.processedVariables.has(selectedVariant)) {
65
65
  return styleRule;
66
66
  }
@@ -76,20 +76,20 @@ export class RuleVisitor {
76
76
  };
77
77
  }
78
78
  processClassStyle(styleRule, firstSelector) {
79
- const selectedVariant = this.themes.find((theme) => firstSelector.name.includes(`${theme}:`));
79
+ const selectedVariant = this.bundlerConfig.themes.find((theme) => firstSelector.name.includes(`${theme}:`));
80
80
  if (selectedVariant === void 0 || this.processedClassNames.has(firstSelector.name)) {
81
81
  return;
82
82
  }
83
83
  this.processedClassNames.add(firstSelector.name);
84
- return {
84
+ return this.removeNulls({
85
85
  type: "scope",
86
86
  value: {
87
87
  loc: styleRule.value.loc,
88
88
  rules: [styleRule],
89
89
  scopeStart: [[{ type: "class", name: selectedVariant }]],
90
- scopeEnd: this.themes.filter((theme) => theme !== selectedVariant).map((theme) => [{ type: "class", name: theme }])
90
+ scopeEnd: this.bundlerConfig.themes.filter((theme) => theme !== selectedVariant).map((theme) => [{ type: "class", name: theme }])
91
91
  }
92
- };
92
+ });
93
93
  }
94
94
  // Fixes lightningcss serialization bug
95
95
  removeNulls(value) {
@@ -1,8 +1,8 @@
1
- import { CustomAtRules, Visitor } from 'lightningcss';
1
+ import type { CustomAtRules, Visitor } from 'lightningcss';
2
+ import type { UniwindBundlerConfig } from '../config';
2
3
  export declare class UniwindCSSVisitor implements Visitor<CustomAtRules> {
3
- private readonly themes;
4
4
  Function: Visitor<CustomAtRules>['Function'];
5
5
  Rule: Visitor<CustomAtRules>['Rule'];
6
6
  StyleSheet: Visitor<CustomAtRules>['StyleSheet'];
7
- constructor(themes: Array<string>);
7
+ constructor(bundlerConfig: UniwindBundlerConfig);
8
8
  }
@@ -1,16 +1,15 @@
1
1
  import { FunctionVisitor } from "./function-visitor.js";
2
2
  import { RuleVisitor } from "./rule-visitor.js";
3
3
  export class UniwindCSSVisitor {
4
- constructor(themes) {
5
- this.themes = themes;
6
- const ruleVisitor = new RuleVisitor(this.themes);
4
+ Function;
5
+ Rule;
6
+ StyleSheet;
7
+ constructor(bundlerConfig) {
8
+ const ruleVisitor = new RuleVisitor(bundlerConfig);
7
9
  this.Function = new FunctionVisitor();
8
10
  this.Rule = ruleVisitor;
9
11
  this.StyleSheet = () => {
10
12
  ruleVisitor.cleanup();
11
13
  };
12
14
  }
13
- Function;
14
- Rule;
15
- StyleSheet;
16
15
  }
@@ -0,0 +1,12 @@
1
+ export declare class Logger {
2
+ private readonly name;
3
+ static debug: boolean;
4
+ constructor(name: string);
5
+ static log(message: string, meta?: string): void;
6
+ static info(message: string): void;
7
+ static error(message: string, meta?: string): void;
8
+ static warn(message: string, meta?: string): void;
9
+ log(message: string): void;
10
+ error(message: string): void;
11
+ warn(message: string): void;
12
+ }
@@ -0,0 +1,37 @@
1
+ const red = "\x1B[91m";
2
+ const yellow = "\x1B[33m";
3
+ const blue = "\x1B[36m";
4
+ const reset = "\x1B[0m";
5
+ export class Logger {
6
+ constructor(name) {
7
+ this.name = name;
8
+ }
9
+ static debug = false;
10
+ static log(message, meta = "") {
11
+ if (!Logger.debug) {
12
+ return;
13
+ }
14
+ console.log(`${blue}Uniwind ${meta}- ${message}${reset}`);
15
+ }
16
+ static info(message) {
17
+ console.log(`${blue}[Uniwind] ${message}${reset}`);
18
+ }
19
+ static error(message, meta = "") {
20
+ console.log(`${red}Uniwind Error ${meta}- ${message}${reset}`);
21
+ }
22
+ static warn(message, meta = "") {
23
+ if (!Logger.debug) {
24
+ return;
25
+ }
26
+ console.log(`${yellow}Uniwind Warning ${meta}- ${message}${reset}`);
27
+ }
28
+ log(message) {
29
+ Logger.log(message, `[${this.name} Processor] `);
30
+ }
31
+ error(message) {
32
+ Logger.error(message, `[${this.name} Processor] `);
33
+ }
34
+ warn(message) {
35
+ Logger.warn(message, `[${this.name} Processor] `);
36
+ }
37
+ }
@@ -0,0 +1,15 @@
1
+ export type UniwindConfig = {
2
+ cssEntryFile: string;
3
+ extraThemes?: Array<string>;
4
+ extraComponents?: Record<string, string>;
5
+ dtsFile?: string;
6
+ };
7
+ export type Polyfills = {
8
+ rem?: number;
9
+ responsive?: 'text' | 'components' | boolean;
10
+ };
11
+ export type UniwindMetroConfig = UniwindConfig & {
12
+ polyfills?: Polyfills;
13
+ debug?: boolean;
14
+ isTV?: boolean;
15
+ };
File without changes
@@ -9,3 +9,24 @@ export declare const enum Platform {
9
9
  }
10
10
  export declare const UNIWIND_PLATFORM_VARIABLES = "__uniwind-platform-";
11
11
  export declare const UNIWIND_THEME_VARIABLES = "__uniwind-theme-";
12
+ export declare enum StyleDependency {
13
+ ColorScheme = 1,
14
+ Theme = 2,
15
+ Dimensions = 3,
16
+ Orientation = 4,
17
+ Insets = 5,
18
+ FontScale = 6,
19
+ Rtl = 7,
20
+ AdaptiveThemes = 8,
21
+ Variables = 9
22
+ }
23
+ export declare const enum Orientation {
24
+ Portrait = "portrait",
25
+ Landscape = "landscape"
26
+ }
27
+ export declare const enum ColorScheme {
28
+ Light = "light",
29
+ Dark = "dark"
30
+ }
31
+ export declare const DEFAULT_SCREEN_WIDTH = 375;
32
+ export declare const DEFAULT_SCREEN_HEIGHT = 680;
@@ -10,3 +10,27 @@ export var Platform = /* @__PURE__ */ ((Platform2) => {
10
10
  })(Platform || {});
11
11
  export const UNIWIND_PLATFORM_VARIABLES = "__uniwind-platform-";
12
12
  export const UNIWIND_THEME_VARIABLES = "__uniwind-theme-";
13
+ export var StyleDependency = /* @__PURE__ */ ((StyleDependency2) => {
14
+ StyleDependency2[StyleDependency2["ColorScheme"] = 1] = "ColorScheme";
15
+ StyleDependency2[StyleDependency2["Theme"] = 2] = "Theme";
16
+ StyleDependency2[StyleDependency2["Dimensions"] = 3] = "Dimensions";
17
+ StyleDependency2[StyleDependency2["Orientation"] = 4] = "Orientation";
18
+ StyleDependency2[StyleDependency2["Insets"] = 5] = "Insets";
19
+ StyleDependency2[StyleDependency2["FontScale"] = 6] = "FontScale";
20
+ StyleDependency2[StyleDependency2["Rtl"] = 7] = "Rtl";
21
+ StyleDependency2[StyleDependency2["AdaptiveThemes"] = 8] = "AdaptiveThemes";
22
+ StyleDependency2[StyleDependency2["Variables"] = 9] = "Variables";
23
+ return StyleDependency2;
24
+ })(StyleDependency || {});
25
+ export var Orientation = /* @__PURE__ */ ((Orientation2) => {
26
+ Orientation2["Portrait"] = "portrait";
27
+ Orientation2["Landscape"] = "landscape";
28
+ return Orientation2;
29
+ })(Orientation || {});
30
+ export var ColorScheme = /* @__PURE__ */ ((ColorScheme2) => {
31
+ ColorScheme2["Light"] = "light";
32
+ ColorScheme2["Dark"] = "dark";
33
+ return ColorScheme2;
34
+ })(ColorScheme || {});
35
+ export const DEFAULT_SCREEN_WIDTH = 375;
36
+ export const DEFAULT_SCREEN_HEIGHT = 680;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { ThemeName } from '../../core/types';
2
+ import type { ThemeName } from '../../core/types';
3
3
  type ScopedThemeProps = {
4
4
  theme: ThemeName;
5
5
  };
@@ -1,4 +1,4 @@
1
- import { PressableProps } from 'react-native';
1
+ import { type PressableProps } from 'react-native';
2
2
  declare module 'react-native' {
3
3
  interface PressableStateCallbackType {
4
4
  focused?: boolean;
@@ -1,3 +1,3 @@
1
- import { TouchableHighlightProps } from 'react-native';
1
+ import type { TouchableHighlightProps } from 'react-native';
2
2
  export declare const TouchableHighlight: import("react").ForwardRefExoticComponent<TouchableHighlightProps & import("react").RefAttributes<import("react-native").View>>;
3
3
  export default TouchableHighlight;
@@ -1,3 +1,3 @@
1
- import { TouchableOpacityProps } from 'react-native';
1
+ import type { TouchableOpacityProps } from 'react-native';
2
2
  export declare const TouchableOpacity: import("react").ForwardRefExoticComponent<TouchableOpacityProps & import("react").RefAttributes<import("react-native").View>>;
3
3
  export default TouchableOpacity;
@@ -1,2 +1,2 @@
1
- import { ComponentState } from '../../core/types';
1
+ import type { ComponentState } from '../../core/types';
2
2
  export declare const useAccentColor: (className: string | undefined, componentProps: Record<string, any>, state?: ComponentState) => string | undefined;
@@ -1,10 +1,10 @@
1
- import { ComponentType } from 'react';
2
- import { ComponentState, RNStyle } from '../../core/types';
1
+ import { type ComponentType } from 'react';
2
+ import type { ComponentState, RNStyle } from '../../core/types';
3
3
  export declare function useStyle(className?: string, componentProps?: Record<string, any>, state?: ComponentState): RNStyle;
4
4
  export declare function useStyle<T extends React.ComponentType<any>>(component: T, className?: string, componentProps?: Record<string, any>, state?: ComponentState): {
5
5
  style: RNStyle;
6
6
  Component: T;
7
7
  };
8
- export declare const animatedComponentFamily: ((key: ComponentType, args: void) => ComponentType) & {
8
+ export declare const animatedComponentFamily: ((key: ComponentType, args: void) => ComponentType | import("react-native-reanimated/lib/typescript/createAnimatedComponent").AnimatedComponentType<Readonly<{}>, ComponentType>) & {
9
9
  has(key: ComponentType): boolean;
10
10
  };
@@ -1,3 +1,3 @@
1
- import { BaseButtonProps } from 'react-native-gesture-handler';
1
+ import { type BaseButtonProps } from 'react-native-gesture-handler';
2
2
  export declare const BaseButton: import("react").ForwardRefExoticComponent<Omit<BaseButtonProps, "innerRef"> & import("react").RefAttributes<import("react").ComponentType<{}>>>;
3
3
  export default BaseButton;
@@ -1,3 +1,3 @@
1
- import { BorderlessButtonProps } from 'react-native-gesture-handler';
1
+ import { type BorderlessButtonProps } from 'react-native-gesture-handler';
2
2
  export declare const BorderlessButton: import("react").ForwardRefExoticComponent<Omit<BorderlessButtonProps, "innerRef"> & import("react").RefAttributes<import("react").ComponentType<{}>>>;
3
3
  export default BorderlessButton;
@@ -1,4 +1,4 @@
1
- import { DrawerLayoutAndroidProps } from 'react-native';
1
+ import type { DrawerLayoutAndroidProps } from 'react-native';
2
2
  export declare const DrawerLayoutAndroid: import("react").ForwardRefExoticComponent<DrawerLayoutAndroidProps & {
3
3
  children?: React.ReactNode | undefined;
4
4
  } & import("react-native-gesture-handler").NativeViewGestureHandlerProps & import("react").RefAttributes<import("react").ComponentType<any>>>;
@@ -1,4 +1,4 @@
1
- import { FlatListProps } from 'react-native';
1
+ import type { FlatListProps } from 'react-native';
2
2
  import { FlatList as RNGHFlatList } from 'react-native-gesture-handler';
3
3
  export declare const FlatList: <ItemT = any>(props: import("react").PropsWithChildren<Omit<FlatListProps<ItemT>, "renderScrollComponent"> & import("react").RefAttributes<RNGHFlatList<ItemT>> & import("react-native-gesture-handler").NativeViewGestureHandlerProps>, ref?: import("react").ForwardedRef<RNGHFlatList<ItemT>>) => import("react").ReactElement | null;
4
4
  export default FlatList;
@@ -1,3 +1,3 @@
1
- import { PressableProps } from 'react-native-gesture-handler';
1
+ import { type PressableProps } from 'react-native-gesture-handler';
2
2
  export declare const Pressable: (props: PressableProps) => React.JSX.Element;
3
3
  export default Pressable;
@@ -1,3 +1,3 @@
1
- import { RawButtonProps } from 'react-native-gesture-handler';
1
+ import { type RawButtonProps } from 'react-native-gesture-handler';
2
2
  export declare const PureNativeButton: import("react-native").HostComponent<RawButtonProps>;
3
3
  export default PureNativeButton;
@@ -1,3 +1,3 @@
1
- import { RawButtonProps } from 'react-native-gesture-handler';
1
+ import { type RawButtonProps } from 'react-native-gesture-handler';
2
2
  export declare const RawButton: import("react").ForwardRefExoticComponent<RawButtonProps & import("react-native-gesture-handler").NativeViewGestureHandlerProps & import("react").RefAttributes<import("react").ComponentType<any>>>;
3
3
  export default RawButton;
@@ -1,3 +1,3 @@
1
- import { RectButtonProps } from 'react-native-gesture-handler';
1
+ import { type RectButtonProps } from 'react-native-gesture-handler';
2
2
  export declare const RectButton: import("react").ForwardRefExoticComponent<Omit<RectButtonProps, "innerRef"> & import("react").RefAttributes<import("react").ComponentType<{}>>>;
3
3
  export default RectButton;
@@ -1,3 +1,3 @@
1
- import { RefreshControlProps } from 'react-native';
1
+ import type { RefreshControlProps } from 'react-native';
2
2
  export declare const RefreshControl: import("react").ForwardRefExoticComponent<RefreshControlProps & import("react-native-gesture-handler").NativeViewGestureHandlerProps & import("react").RefAttributes<import("react").ComponentType<any>>>;
3
3
  export default RefreshControl;
@@ -1,3 +1,3 @@
1
- import { ScrollViewProps } from 'react-native';
1
+ import type { ScrollViewProps } from 'react-native';
2
2
  export declare const ScrollView: import("react").ForwardRefExoticComponent<ScrollViewProps & import("react-native-gesture-handler").NativeViewGestureHandlerProps & import("react").RefAttributes<import("react-native").ScrollView>>;
3
3
  export default ScrollView;
@@ -1,3 +1,3 @@
1
- import { SwitchProps } from 'react-native';
1
+ import type { SwitchProps } from 'react-native';
2
2
  export declare const Switch: import("react").ForwardRefExoticComponent<SwitchProps & import("react-native-gesture-handler").NativeViewGestureHandlerProps & import("react").RefAttributes<import("react").ComponentType<any>>>;
3
3
  export default Switch;
@@ -1,2 +1,5 @@
1
- export declare const Text: React.ForwardRefExoticComponent<any>;
1
+ import type { TextProps } from 'react-native';
2
+ export declare const Text: (props: TextProps & {
3
+ ref?: import("react").Ref<import("react").ComponentRef<typeof import("react-native").Text> | null>;
4
+ }) => React.JSX.Element;
2
5
  export default Text;
@@ -1,3 +1,3 @@
1
- import { TextInputProps } from 'react-native';
1
+ import type { TextInputProps } from 'react-native';
2
2
  export declare const TextInput: import("react").ForwardRefExoticComponent<TextInputProps & import("react-native-gesture-handler").NativeViewGestureHandlerProps & import("react").RefAttributes<import("react").ComponentType<any>>>;
3
3
  export default TextInput;
@@ -1,3 +1,3 @@
1
- import { PressableProps } from 'react-native';
1
+ import type { PressableProps } from 'react-native';
2
2
  export declare const Pressable: import("react").ForwardRefExoticComponent<PressableProps & import("react").RefAttributes<import("react-native").View>>;
3
3
  export default Pressable;
@@ -1,3 +1,3 @@
1
- import { TouchableHighlightProps } from 'react-native';
1
+ import type { TouchableHighlightProps } from 'react-native';
2
2
  export declare const TouchableHighlight: import("react").ForwardRefExoticComponent<TouchableHighlightProps & import("react").RefAttributes<import("react-native").View>>;
3
3
  export default TouchableHighlight;
@@ -1,3 +1,3 @@
1
- import { TouchableOpacityProps } from 'react-native';
1
+ import type { TouchableOpacityProps } from 'react-native';
2
2
  export declare const TouchableOpacity: import("react").ForwardRefExoticComponent<TouchableOpacityProps & import("react").RefAttributes<import("react-native").View>>;
3
3
  export default TouchableOpacity;
@@ -1,6 +1,6 @@
1
+ import { StyleDependency } from "../../common/consts.js";
1
2
  import { Uniwind } from "../../core/index.js";
2
3
  import { UniwindListener } from "../../core/listener.js";
3
- import { StyleDependency } from "../../types.js";
4
4
  import "./metro-injected";
5
5
  const addClassNameToRoot = () => {
6
6
  if (typeof document === "undefined") {
@@ -1,8 +1,7 @@
1
- import { ComponentPropsWithRef, ElementType } from 'react';
2
- import { Insets } from 'react-native';
3
- import { ApplyUniwind } from '../../hoc/types';
4
- import { GetCSSVariable } from '../../hooks/useCSSVariable/useCSSVariable';
5
- import { CSSVariables, GenerateStyleSheetsCallback, ThemeName } from '../types';
1
+ import type { Insets } from 'react-native';
2
+ import type { ApplyUniwind } from '../../hoc/types';
3
+ import type { GetCSSVariable } from '../../hooks/useCSSVariable/useCSSVariable';
4
+ import type { CSSVariables, GenerateStyleSheetsCallback, ThemeName } from '../types';
6
5
  declare const SYSTEM_THEME: "system";
7
6
  export declare class UniwindConfigBuilder {
8
7
  #private;
@@ -12,9 +11,9 @@ export declare class UniwindConfigBuilder {
12
11
  get hasAdaptiveThemes(): boolean;
13
12
  get currentTheme(): ThemeName;
14
13
  private get colorScheme();
15
- Wrapper<T extends ElementType>({ as, ...props }: {
14
+ Wrapper<T extends React.ElementType>({ as, ...props }: {
16
15
  as: T;
17
- } & ApplyUniwind<Omit<ComponentPropsWithRef<T>, 'as'>>): import("react").FunctionComponentElement<any>;
16
+ } & ApplyUniwind<Omit<React.ComponentPropsWithRef<T>, 'as'>>): import("react").FunctionComponentElement<any>;
18
17
  setTheme(theme: ThemeName | typeof SYSTEM_THEME): void;
19
18
  updateCSSVariables(theme: ThemeName, cssVariables: CSSVariables): void;
20
19
  updateInsets(insets: Insets): void;
@@ -1,8 +1,8 @@
1
1
  import { createElement, useMemo } from "react";
2
2
  import { Appearance, Platform } from "react-native";
3
- import { withUniwind } from "../../hoc/withUniwind.js";
3
+ import { ColorScheme, StyleDependency } from "../../common/consts.js";
4
+ import { withUniwind } from "../../hoc/index.js";
4
5
  import { getCSSVariable } from "../../hooks/useCSSVariable/useCSSVariable.js";
5
- import { ColorScheme, StyleDependency } from "../../types.js";
6
6
  import { UniwindListener } from "../listener.js";
7
7
  const SYSTEM_THEME = "system";
8
8
  const RN_VERSION = Platform.constants?.reactNativeVersion?.minor ?? 0;
@@ -1,4 +1,4 @@
1
- import { CSSVariables, GenerateStyleSheetsCallback, ThemeName } from '../types';
1
+ import type { CSSVariables, GenerateStyleSheetsCallback, ThemeName } from '../types';
2
2
  import { UniwindConfigBuilder as UniwindConfigBuilderBase } from './config.common';
3
3
  declare class UniwindConfigBuilder extends UniwindConfigBuilderBase {
4
4
  private cssRules?;
@@ -1,5 +1,5 @@
1
+ import { StyleDependency } from "../../common/consts.js";
1
2
  import { arrayEquals } from "../../common/utils.js";
2
- import { StyleDependency } from "../../types.js";
3
3
  import { UniwindListener } from "../listener.js";
4
4
  import { Logger } from "../logger.js";
5
5
  import { getWebVariable } from "../web/index.js";
@@ -1,5 +1,5 @@
1
- import { Insets } from 'react-native';
2
- import { CSSVariables, GenerateStyleSheetsCallback, ThemeName } from '../types';
1
+ import type { Insets } from 'react-native';
2
+ import type { CSSVariables, GenerateStyleSheetsCallback, ThemeName } from '../types';
3
3
  import { UniwindConfigBuilder as UniwindConfigBuilderBase } from './config.common';
4
4
  declare class UniwindConfigBuilder extends UniwindConfigBuilderBase {
5
5
  constructor();
@@ -1,5 +1,5 @@
1
1
  import { formatHex, formatHex8, parse } from "culori";
2
- import { StyleDependency } from "../../types.js";
2
+ import { StyleDependency } from "../../common/consts.js";
3
3
  import { UniwindListener } from "../listener.js";
4
4
  import { Logger } from "../logger.js";
5
5
  import { UniwindStore } from "../native/index.js";
@@ -25,11 +25,7 @@ class UniwindConfigBuilder extends UniwindConfigBuilderBase {
25
25
  return varValue;
26
26
  };
27
27
  UniwindStore.vars[theme] ??= {};
28
- Object.defineProperty(UniwindStore.vars[theme], varName, {
29
- configurable: true,
30
- enumerable: true,
31
- get: getValue
32
- });
28
+ UniwindStore.vars[theme][varName] = getValue;
33
29
  });
34
30
  UniwindListener.notify([StyleDependency.Variables]);
35
31
  }
@@ -1,4 +1,4 @@
1
- import { StyleDependency } from '../types';
1
+ import { StyleDependency } from '../common/consts';
2
2
  type SubscribeOptions = {
3
3
  once?: boolean;
4
4
  };
@@ -1,4 +1,4 @@
1
- import { StyleDependency } from "../types.js";
1
+ import { StyleDependency } from "../common/consts.js";
2
2
  class UniwindListenerBuilder {
3
3
  listeners = {
4
4
  [StyleDependency.ColorScheme]: /* @__PURE__ */ new Set(),
@@ -1,5 +1,4 @@
1
1
  import type { UniwindRuntime } from '../types';
2
2
  export declare const colorMix: (color: string, weight: number | string, mixColor: string) => string;
3
3
  export declare function lightDark(this: UniwindRuntime, light: string, dark: string): string;
4
- export declare const cloneWithAccessors: <T extends object>(obj: T) => any;
5
4
  export declare const parseColor: (type: string, color: string) => string;
@@ -19,12 +19,6 @@ export function lightDark(light, dark) {
19
19
  }
20
20
  return light;
21
21
  }
22
- export const cloneWithAccessors = (obj) => {
23
- const proto = Object.getPrototypeOf(obj);
24
- const clone = Object.create(proto);
25
- Object.defineProperties(clone, Object.getOwnPropertyDescriptors(obj));
26
- return clone;
27
- };
28
22
  export const parseColor = (type, color) => {
29
23
  try {
30
24
  const parsedColor = parse(`${type}(${color})`);
@@ -7,26 +7,14 @@ export const parseTextShadowMutation = (styles) => {
7
7
  const offsets = tokens.filter((token) => token !== color);
8
8
  const [offsetX, offsetY, radius] = offsets;
9
9
  if (offsetX !== void 0 && offsetY !== void 0) {
10
- Object.defineProperty(styles, "textShadowOffset", {
11
- configurable: true,
12
- enumerable: true,
13
- value: {
14
- width: Number(offsetX),
15
- height: Number(offsetY)
16
- }
17
- });
10
+ styles.textShadowOffset = {
11
+ width: Number(offsetX),
12
+ height: Number(offsetY)
13
+ };
18
14
  delete styles.textShadow;
19
15
  }
20
16
  if (radius !== void 0) {
21
- Object.defineProperty(styles, "textShadowRadius", {
22
- configurable: true,
23
- enumerable: true,
24
- value: Number(radius)
25
- });
17
+ styles.textShadowRadius = Number(radius);
26
18
  }
27
- Object.defineProperty(styles, "textShadowColor", {
28
- configurable: true,
29
- enumerable: true,
30
- value: color
31
- });
19
+ styles.textShadowColor = color;
32
20
  };
@@ -42,10 +42,6 @@ export const parseTransformsMutation = (styles, preserve = false) => {
42
42
  }
43
43
  }
44
44
  if (transformsResult.length > 0) {
45
- Object.defineProperty(styles, "transform", {
46
- configurable: true,
47
- enumerable: true,
48
- value: transformsResult
49
- });
45
+ styles.transform = transformsResult;
50
46
  }
51
47
  };
@@ -1,7 +1,7 @@
1
1
  import { Appearance, Dimensions, I18nManager, PixelRatio, Platform, StyleSheet } from "react-native";
2
2
  import { cubicBezier, linear, steps } from "react-native-reanimated";
3
3
  import { initialWindowMetrics } from "react-native-safe-area-context";
4
- import { ColorScheme, Orientation } from "../../types.js";
4
+ import { ColorScheme, DEFAULT_SCREEN_WIDTH, Orientation } from "../../common/consts.js";
5
5
  import { colorMix, lightDark, parseColor } from "./native-utils.js";
6
6
  const window = Dimensions.get("window");
7
7
  const initialColorScheme = Appearance.getColorScheme() ?? ColorScheme.Light;
@@ -26,6 +26,10 @@ export const UniwindRuntime = {
26
26
  parseColor,
27
27
  platformSelect: (android, ios, other) => {
28
28
  return Platform.select(Boolean(other) ? { android, ios, default: other } : { android, default: ios });
29
+ },
30
+ makeResponsive(value, base = DEFAULT_SCREEN_WIDTH, useHeight = false) {
31
+ const dimension = useHeight ? this.screen.height : this.screen.width;
32
+ return Math.round(value * dimension / base);
29
33
  }
30
34
  };
31
35
  UniwindRuntime.lightDark = lightDark.bind(UniwindRuntime);
@@ -1,5 +1,5 @@
1
- import { StyleDependency } from '../../types';
2
- import { ComponentState, GenerateStyleSheetsCallback, RNStyle, ThemeName, UniwindContextType } from '../types';
1
+ import { StyleDependency } from '../../common/consts';
2
+ import type { ComponentState, GenerateStyleSheetsCallback, RNStyle, ThemeName, UniwindContextType, Vars } from '../types';
3
3
  type StylesResult = {
4
4
  styles: RNStyle;
5
5
  dependencies: Array<StyleDependency>;
@@ -7,7 +7,7 @@ type StylesResult = {
7
7
  };
8
8
  declare class UniwindStoreBuilder {
9
9
  runtime: import("../types").UniwindRuntime;
10
- vars: Record<ThemeName, Record<string, unknown>>;
10
+ vars: Record<ThemeName, Vars>;
11
11
  private stylesheet;
12
12
  private keyframes;
13
13
  private cache;