react-native-unistyles 3.0.24 → 3.1.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 (491) hide show
  1. package/android/src/main/cxx/NativeUnistylesModule.cpp +7 -4
  2. package/android/src/main/cxx/NativeUnistylesModule.h +9 -3
  3. package/android/src/main/cxx/cpp-adapter.cpp +1 -1
  4. package/android/src/main/java/com/unistyles/NativePlatform+android.kt +22 -4
  5. package/android/src/main/java/com/unistyles/UnistylesModule.kt +1 -0
  6. package/cxx/core/StyleSheetRegistry.cpp +11 -11
  7. package/cxx/core/StyleSheetRegistry.h +4 -4
  8. package/cxx/core/UnistylesRegistry.cpp +27 -14
  9. package/cxx/core/UnistylesRegistry.h +4 -1
  10. package/cxx/hybridObjects/HybridShadowRegistry.cpp +5 -0
  11. package/cxx/hybridObjects/HybridStyleSheet.cpp +2 -14
  12. package/cxx/hybridObjects/HybridStyleSheet.h +0 -2
  13. package/ios/UnistylesModuleOnLoad.mm +10 -2
  14. package/lib/commonjs/components/AdaptiveTheme.js +1 -1
  15. package/lib/commonjs/components/AdaptiveTheme.js.map +1 -1
  16. package/lib/commonjs/components/ApplyScopedTheme.js.map +1 -1
  17. package/lib/commonjs/components/Display.js.map +1 -1
  18. package/lib/commonjs/components/Hide.js.map +1 -1
  19. package/lib/commonjs/components/NamedTheme.js +2 -2
  20. package/lib/commonjs/components/NamedTheme.js.map +1 -1
  21. package/lib/commonjs/components/ScopedTheme.js.map +1 -1
  22. package/lib/commonjs/components/native/ActivityIndicator.js.map +1 -1
  23. package/lib/commonjs/components/native/Animated.js.map +1 -1
  24. package/lib/commonjs/components/native/FlatList.js.map +1 -1
  25. package/lib/commonjs/components/native/Image.js.map +1 -1
  26. package/lib/commonjs/components/native/Image.native.js.map +1 -1
  27. package/lib/commonjs/components/native/ImageBackground.js.map +1 -1
  28. package/lib/commonjs/components/native/ImageBackground.native.js.map +1 -1
  29. package/lib/commonjs/components/native/KeyboardAvoidingView.js.map +1 -1
  30. package/lib/commonjs/components/native/NativeText.native.js.map +1 -1
  31. package/lib/commonjs/components/native/NativeView.native.js.map +1 -1
  32. package/lib/commonjs/components/native/Pressable.js.map +1 -1
  33. package/lib/commonjs/components/native/Pressable.native.js.map +1 -1
  34. package/lib/commonjs/components/native/RefreshControl.js.map +1 -1
  35. package/lib/commonjs/components/native/SafeAreaView.js.map +1 -1
  36. package/lib/commonjs/components/native/ScrollView.js.map +1 -1
  37. package/lib/commonjs/components/native/SectionList.js.map +1 -1
  38. package/lib/commonjs/components/native/Switch.js.map +1 -1
  39. package/lib/commonjs/components/native/Text.js.map +1 -1
  40. package/lib/commonjs/components/native/TextInput.js.map +1 -1
  41. package/lib/commonjs/components/native/TouchableHighlight.js.map +1 -1
  42. package/lib/commonjs/components/native/TouchableOpacity.js.map +1 -1
  43. package/lib/commonjs/components/native/View.js.map +1 -1
  44. package/lib/commonjs/components/native/VirtualizedList.js.map +1 -1
  45. package/lib/commonjs/core/createUnistylesElement.js.map +1 -1
  46. package/lib/commonjs/core/createUnistylesElement.native.js.map +1 -1
  47. package/lib/commonjs/core/createUnistylesImageBackground.js.map +1 -1
  48. package/lib/commonjs/core/getClassname.js.map +1 -1
  49. package/lib/commonjs/core/parseBoxShadow.js.map +1 -1
  50. package/lib/commonjs/core/useProxifiedUnistyles/listener.js.map +1 -1
  51. package/lib/commonjs/core/useProxifiedUnistyles/listener.native.js +0 -1
  52. package/lib/commonjs/core/useProxifiedUnistyles/listener.native.js.map +1 -1
  53. package/lib/commonjs/core/useProxifiedUnistyles/useProxifiedUnistyles.js.map +1 -1
  54. package/lib/commonjs/core/useUnistyles.js.map +1 -1
  55. package/lib/commonjs/core/warn.js.map +1 -1
  56. package/lib/commonjs/core/withUnistyles/withUnistyles.js +3 -1
  57. package/lib/commonjs/core/withUnistyles/withUnistyles.js.map +1 -1
  58. package/lib/commonjs/core/withUnistyles/withUnistyles.native.js +6 -0
  59. package/lib/commonjs/core/withUnistyles/withUnistyles.native.js.map +1 -1
  60. package/lib/commonjs/hooks/useMedia.js.map +1 -1
  61. package/lib/commonjs/hooks/useMedia.native.js +0 -1
  62. package/lib/commonjs/hooks/useMedia.native.js.map +1 -1
  63. package/lib/commonjs/index.js +6 -0
  64. package/lib/commonjs/index.js.map +1 -1
  65. package/lib/commonjs/mocks.js +28 -8
  66. package/lib/commonjs/mocks.js.map +1 -1
  67. package/lib/commonjs/mq.js.map +1 -1
  68. package/lib/commonjs/reanimated/useAnimatedTheme.js.map +1 -1
  69. package/lib/commonjs/reanimated/useAnimatedTheme.native.js +0 -1
  70. package/lib/commonjs/reanimated/useAnimatedTheme.native.js.map +1 -1
  71. package/lib/commonjs/reanimated/variant/useAnimatedVariantColor.js.map +1 -1
  72. package/lib/commonjs/reanimated/variant/useUpdateVariantColor.js.map +1 -1
  73. package/lib/commonjs/reanimated/variant/useUpdateVariantColor.native.js +0 -1
  74. package/lib/commonjs/reanimated/variant/useUpdateVariantColor.native.js.map +1 -1
  75. package/lib/commonjs/server/getServerUnistyles.js.map +1 -1
  76. package/lib/commonjs/server/useServerUnistyles.js.map +1 -1
  77. package/lib/commonjs/specs/NativePlatform/NativePlatform.nitro.js.map +1 -1
  78. package/lib/commonjs/specs/ShadowRegistry/index.js +9 -5
  79. package/lib/commonjs/specs/ShadowRegistry/index.js.map +1 -1
  80. package/lib/commonjs/specs/StatusBar/index.js.map +1 -1
  81. package/lib/commonjs/specs/StyleSheet/index.js.map +1 -1
  82. package/lib/commonjs/specs/TurboUnistyles/NativeTurboUnistyles.js.map +1 -1
  83. package/lib/commonjs/specs/UnistylesRuntime/index.js.map +1 -1
  84. package/lib/commonjs/specs/index.native.js +1 -1
  85. package/lib/commonjs/specs/index.native.js.map +1 -1
  86. package/lib/commonjs/specs/types.js.map +1 -1
  87. package/lib/commonjs/types/index.js.map +1 -1
  88. package/lib/commonjs/types/stylesheet.js.map +1 -1
  89. package/lib/commonjs/utils.js.map +1 -1
  90. package/lib/commonjs/web/convert/index.js.map +1 -1
  91. package/lib/commonjs/web/convert/object/boxShadow.js.map +1 -1
  92. package/lib/commonjs/web/convert/object/filter.js.map +1 -1
  93. package/lib/commonjs/web/convert/object/objectStyle.js.map +1 -1
  94. package/lib/commonjs/web/convert/object/transform.js.map +1 -1
  95. package/lib/commonjs/web/convert/pseudo.js.map +1 -1
  96. package/lib/commonjs/web/convert/shadow/boxShadow.js.map +1 -1
  97. package/lib/commonjs/web/convert/shadow/getShadowBreakpoints.js.map +1 -1
  98. package/lib/commonjs/web/convert/shadow/textShadow.js.map +1 -1
  99. package/lib/commonjs/web/convert/types.js.map +1 -1
  100. package/lib/commonjs/web/convert/utils.js.map +1 -1
  101. package/lib/commonjs/web/create.js +1 -5
  102. package/lib/commonjs/web/create.js.map +1 -1
  103. package/lib/commonjs/web/css/core.js.map +1 -1
  104. package/lib/commonjs/web/css/state.js.map +1 -1
  105. package/lib/commonjs/web/css/utils.js.map +1 -1
  106. package/lib/commonjs/web/index.js +1 -0
  107. package/lib/commonjs/web/index.js.map +1 -1
  108. package/lib/commonjs/web/listener.js +29 -8
  109. package/lib/commonjs/web/listener.js.map +1 -1
  110. package/lib/commonjs/web/registry.js.map +1 -1
  111. package/lib/commonjs/web/runtime.js +1 -2
  112. package/lib/commonjs/web/runtime.js.map +1 -1
  113. package/lib/commonjs/web/shadowRegistry.js.map +1 -1
  114. package/lib/commonjs/web/state.js +3 -3
  115. package/lib/commonjs/web/state.js.map +1 -1
  116. package/lib/commonjs/web/utils/common.js.map +1 -1
  117. package/lib/commonjs/web/utils/createUnistylesRef.js.map +1 -1
  118. package/lib/commonjs/web/utils/unistyle.js +2 -0
  119. package/lib/commonjs/web/utils/unistyle.js.map +1 -1
  120. package/lib/commonjs/web/variants.js.map +1 -1
  121. package/lib/commonjs/web-only/getWebProps.js.map +1 -1
  122. package/lib/commonjs/web-only/index.js.map +1 -1
  123. package/lib/module/components/AdaptiveTheme.js +1 -1
  124. package/lib/module/components/AdaptiveTheme.js.map +1 -1
  125. package/lib/module/components/ApplyScopedTheme.js.map +1 -1
  126. package/lib/module/components/Display.js.map +1 -1
  127. package/lib/module/components/Hide.js.map +1 -1
  128. package/lib/module/components/NamedTheme.js +2 -2
  129. package/lib/module/components/NamedTheme.js.map +1 -1
  130. package/lib/module/components/ScopedTheme.js.map +1 -1
  131. package/lib/module/components/native/ActivityIndicator.js.map +1 -1
  132. package/lib/module/components/native/Animated.js.map +1 -1
  133. package/lib/module/components/native/FlatList.js.map +1 -1
  134. package/lib/module/components/native/Image.js.map +1 -1
  135. package/lib/module/components/native/Image.native.js.map +1 -1
  136. package/lib/module/components/native/ImageBackground.js.map +1 -1
  137. package/lib/module/components/native/ImageBackground.native.js.map +1 -1
  138. package/lib/module/components/native/KeyboardAvoidingView.js.map +1 -1
  139. package/lib/module/components/native/NativeText.native.js.map +1 -1
  140. package/lib/module/components/native/NativeView.native.js.map +1 -1
  141. package/lib/module/components/native/Pressable.js.map +1 -1
  142. package/lib/module/components/native/Pressable.native.js.map +1 -1
  143. package/lib/module/components/native/RefreshControl.js.map +1 -1
  144. package/lib/module/components/native/SafeAreaView.js.map +1 -1
  145. package/lib/module/components/native/ScrollView.js.map +1 -1
  146. package/lib/module/components/native/SectionList.js.map +1 -1
  147. package/lib/module/components/native/Switch.js.map +1 -1
  148. package/lib/module/components/native/Text.js.map +1 -1
  149. package/lib/module/components/native/TextInput.js.map +1 -1
  150. package/lib/module/components/native/TouchableHighlight.js.map +1 -1
  151. package/lib/module/components/native/TouchableOpacity.js.map +1 -1
  152. package/lib/module/components/native/View.js.map +1 -1
  153. package/lib/module/components/native/VirtualizedList.js.map +1 -1
  154. package/lib/module/core/createUnistylesElement.js.map +1 -1
  155. package/lib/module/core/createUnistylesElement.native.js.map +1 -1
  156. package/lib/module/core/createUnistylesImageBackground.js.map +1 -1
  157. package/lib/module/core/getClassname.js.map +1 -1
  158. package/lib/module/core/parseBoxShadow.js.map +1 -1
  159. package/lib/module/core/useProxifiedUnistyles/listener.js.map +1 -1
  160. package/lib/module/core/useProxifiedUnistyles/listener.native.js +0 -1
  161. package/lib/module/core/useProxifiedUnistyles/listener.native.js.map +1 -1
  162. package/lib/module/core/useProxifiedUnistyles/useProxifiedUnistyles.js.map +1 -1
  163. package/lib/module/core/useUnistyles.js.map +1 -1
  164. package/lib/module/core/warn.js.map +1 -1
  165. package/lib/module/core/withUnistyles/withUnistyles.js +3 -1
  166. package/lib/module/core/withUnistyles/withUnistyles.js.map +1 -1
  167. package/lib/module/core/withUnistyles/withUnistyles.native.js +6 -0
  168. package/lib/module/core/withUnistyles/withUnistyles.native.js.map +1 -1
  169. package/lib/module/hooks/useMedia.js.map +1 -1
  170. package/lib/module/hooks/useMedia.native.js +0 -1
  171. package/lib/module/hooks/useMedia.native.js.map +1 -1
  172. package/lib/module/index.js +1 -0
  173. package/lib/module/index.js.map +1 -1
  174. package/lib/module/mocks.js +28 -8
  175. package/lib/module/mocks.js.map +1 -1
  176. package/lib/module/mq.js.map +1 -1
  177. package/lib/module/reanimated/useAnimatedTheme.js.map +1 -1
  178. package/lib/module/reanimated/useAnimatedTheme.native.js +0 -1
  179. package/lib/module/reanimated/useAnimatedTheme.native.js.map +1 -1
  180. package/lib/module/reanimated/variant/useAnimatedVariantColor.js.map +1 -1
  181. package/lib/module/reanimated/variant/useUpdateVariantColor.js.map +1 -1
  182. package/lib/module/reanimated/variant/useUpdateVariantColor.native.js +0 -1
  183. package/lib/module/reanimated/variant/useUpdateVariantColor.native.js.map +1 -1
  184. package/lib/module/server/getServerUnistyles.js.map +1 -1
  185. package/lib/module/server/useServerUnistyles.js.map +1 -1
  186. package/lib/module/specs/NativePlatform/NativePlatform.nitro.js.map +1 -1
  187. package/lib/module/specs/ShadowRegistry/index.js +9 -5
  188. package/lib/module/specs/ShadowRegistry/index.js.map +1 -1
  189. package/lib/module/specs/StatusBar/index.js.map +1 -1
  190. package/lib/module/specs/StyleSheet/index.js.map +1 -1
  191. package/lib/module/specs/TurboUnistyles/NativeTurboUnistyles.js.map +1 -1
  192. package/lib/module/specs/UnistylesRuntime/index.js.map +1 -1
  193. package/lib/module/specs/index.native.js +1 -1
  194. package/lib/module/specs/index.native.js.map +1 -1
  195. package/lib/module/specs/types.js.map +1 -1
  196. package/lib/module/types/index.js.map +1 -1
  197. package/lib/module/types/stylesheet.js.map +1 -1
  198. package/lib/module/utils.js.map +1 -1
  199. package/lib/module/web/convert/index.js.map +1 -1
  200. package/lib/module/web/convert/object/boxShadow.js.map +1 -1
  201. package/lib/module/web/convert/object/filter.js.map +1 -1
  202. package/lib/module/web/convert/object/objectStyle.js.map +1 -1
  203. package/lib/module/web/convert/object/transform.js.map +1 -1
  204. package/lib/module/web/convert/pseudo.js.map +1 -1
  205. package/lib/module/web/convert/shadow/boxShadow.js.map +1 -1
  206. package/lib/module/web/convert/shadow/getShadowBreakpoints.js.map +1 -1
  207. package/lib/module/web/convert/shadow/textShadow.js.map +1 -1
  208. package/lib/module/web/convert/types.js.map +1 -1
  209. package/lib/module/web/convert/utils.js.map +1 -1
  210. package/lib/module/web/create.js +2 -6
  211. package/lib/module/web/create.js.map +1 -1
  212. package/lib/module/web/css/core.js.map +1 -1
  213. package/lib/module/web/css/state.js.map +1 -1
  214. package/lib/module/web/css/utils.js.map +1 -1
  215. package/lib/module/web/index.js +1 -0
  216. package/lib/module/web/index.js.map +1 -1
  217. package/lib/module/web/listener.js +29 -8
  218. package/lib/module/web/listener.js.map +1 -1
  219. package/lib/module/web/registry.js.map +1 -1
  220. package/lib/module/web/runtime.js +1 -2
  221. package/lib/module/web/runtime.js.map +1 -1
  222. package/lib/module/web/shadowRegistry.js.map +1 -1
  223. package/lib/module/web/state.js +3 -3
  224. package/lib/module/web/state.js.map +1 -1
  225. package/lib/module/web/utils/common.js.map +1 -1
  226. package/lib/module/web/utils/createUnistylesRef.js.map +1 -1
  227. package/lib/module/web/utils/unistyle.js +2 -0
  228. package/lib/module/web/utils/unistyle.js.map +1 -1
  229. package/lib/module/web/variants.js.map +1 -1
  230. package/lib/module/web-only/getWebProps.js.map +1 -1
  231. package/lib/module/web-only/index.js.map +1 -1
  232. package/lib/typescript/src/__tests__/mocks.spec.d.ts +2 -0
  233. package/lib/typescript/src/__tests__/mocks.spec.d.ts.map +1 -0
  234. package/lib/typescript/src/__tests__/web-listener.spec.d.ts +2 -0
  235. package/lib/typescript/src/__tests__/web-listener.spec.d.ts.map +1 -0
  236. package/lib/typescript/src/components/AdaptiveTheme.d.ts +1 -1
  237. package/lib/typescript/src/components/AdaptiveTheme.d.ts.map +1 -1
  238. package/lib/typescript/src/components/ApplyScopedTheme.d.ts.map +1 -1
  239. package/lib/typescript/src/components/Display.d.ts.map +1 -1
  240. package/lib/typescript/src/components/Hide.d.ts.map +1 -1
  241. package/lib/typescript/src/components/NamedTheme.d.ts +1 -1
  242. package/lib/typescript/src/components/NamedTheme.d.ts.map +1 -1
  243. package/lib/typescript/src/components/ScopedTheme.d.ts.map +1 -1
  244. package/lib/typescript/src/components/native/ActivityIndicator.d.ts.map +1 -1
  245. package/lib/typescript/src/components/native/Animated.d.ts.map +1 -1
  246. package/lib/typescript/src/components/native/FlatList.d.ts.map +1 -1
  247. package/lib/typescript/src/components/native/Image.d.ts.map +1 -1
  248. package/lib/typescript/src/components/native/Image.native.d.ts.map +1 -1
  249. package/lib/typescript/src/components/native/ImageBackground.d.ts.map +1 -1
  250. package/lib/typescript/src/components/native/ImageBackground.native.d.ts.map +1 -1
  251. package/lib/typescript/src/components/native/KeyboardAvoidingView.d.ts.map +1 -1
  252. package/lib/typescript/src/components/native/NativeText.native.d.ts.map +1 -1
  253. package/lib/typescript/src/components/native/NativeView.native.d.ts.map +1 -1
  254. package/lib/typescript/src/components/native/Pressable.d.ts +1 -1
  255. package/lib/typescript/src/components/native/Pressable.d.ts.map +1 -1
  256. package/lib/typescript/src/components/native/Pressable.native.d.ts +1 -1
  257. package/lib/typescript/src/components/native/Pressable.native.d.ts.map +1 -1
  258. package/lib/typescript/src/components/native/RefreshControl.d.ts.map +1 -1
  259. package/lib/typescript/src/components/native/SafeAreaView.d.ts.map +1 -1
  260. package/lib/typescript/src/components/native/ScrollView.d.ts.map +1 -1
  261. package/lib/typescript/src/components/native/SectionList.d.ts.map +1 -1
  262. package/lib/typescript/src/components/native/Switch.d.ts.map +1 -1
  263. package/lib/typescript/src/components/native/Text.d.ts.map +1 -1
  264. package/lib/typescript/src/components/native/TextInput.d.ts.map +1 -1
  265. package/lib/typescript/src/components/native/TouchableHighlight.d.ts.map +1 -1
  266. package/lib/typescript/src/components/native/TouchableOpacity.d.ts.map +1 -1
  267. package/lib/typescript/src/components/native/View.d.ts.map +1 -1
  268. package/lib/typescript/src/components/native/VirtualizedList.d.ts.map +1 -1
  269. package/lib/typescript/src/core/createUnistylesElement.d.ts.map +1 -1
  270. package/lib/typescript/src/core/createUnistylesElement.native.d.ts.map +1 -1
  271. package/lib/typescript/src/core/createUnistylesImageBackground.d.ts.map +1 -1
  272. package/lib/typescript/src/core/getClassname.d.ts.map +1 -1
  273. package/lib/typescript/src/core/parseBoxShadow.d.ts.map +1 -1
  274. package/lib/typescript/src/core/useProxifiedUnistyles/listener.d.ts.map +1 -1
  275. package/lib/typescript/src/core/useProxifiedUnistyles/listener.native.d.ts +1 -1
  276. package/lib/typescript/src/core/useProxifiedUnistyles/listener.native.d.ts.map +1 -1
  277. package/lib/typescript/src/core/useProxifiedUnistyles/types.d.ts.map +1 -1
  278. package/lib/typescript/src/core/useProxifiedUnistyles/useProxifiedUnistyles.d.ts +1 -1
  279. package/lib/typescript/src/core/useProxifiedUnistyles/useProxifiedUnistyles.d.ts.map +1 -1
  280. package/lib/typescript/src/core/useUnistyles.d.ts.map +1 -1
  281. package/lib/typescript/src/core/withUnistyles/types.d.ts +1 -1
  282. package/lib/typescript/src/core/withUnistyles/types.d.ts.map +1 -1
  283. package/lib/typescript/src/core/withUnistyles/withUnistyles.d.ts.map +1 -1
  284. package/lib/typescript/src/core/withUnistyles/withUnistyles.native.d.ts.map +1 -1
  285. package/lib/typescript/src/global.d.ts.map +1 -1
  286. package/lib/typescript/src/hooks/useMedia.d.ts.map +1 -1
  287. package/lib/typescript/src/hooks/useMedia.native.d.ts.map +1 -1
  288. package/lib/typescript/src/index.d.ts +1 -0
  289. package/lib/typescript/src/index.d.ts.map +1 -1
  290. package/lib/typescript/src/mq.d.ts.map +1 -1
  291. package/lib/typescript/src/reanimated/useAnimatedTheme.d.ts.map +1 -1
  292. package/lib/typescript/src/reanimated/useAnimatedTheme.native.d.ts.map +1 -1
  293. package/lib/typescript/src/reanimated/variant/types.d.ts.map +1 -1
  294. package/lib/typescript/src/reanimated/variant/useAnimatedVariantColor.d.ts.map +1 -1
  295. package/lib/typescript/src/reanimated/variant/useUpdateVariantColor.d.ts +1 -1
  296. package/lib/typescript/src/reanimated/variant/useUpdateVariantColor.d.ts.map +1 -1
  297. package/lib/typescript/src/reanimated/variant/useUpdateVariantColor.native.d.ts +1 -1
  298. package/lib/typescript/src/reanimated/variant/useUpdateVariantColor.native.d.ts.map +1 -1
  299. package/lib/typescript/src/server/getServerUnistyles.d.ts +1 -1
  300. package/lib/typescript/src/server/getServerUnistyles.d.ts.map +1 -1
  301. package/lib/typescript/src/server/types.d.ts.map +1 -1
  302. package/lib/typescript/src/server/useServerUnistyles.d.ts.map +1 -1
  303. package/lib/typescript/src/specs/NativePlatform/NativePlatform.nitro.d.ts.map +1 -1
  304. package/lib/typescript/src/specs/NavigtionBar/UnistylesNavigationBar.nitro.d.ts.map +1 -1
  305. package/lib/typescript/src/specs/ShadowRegistry/index.d.ts.map +1 -1
  306. package/lib/typescript/src/specs/ShadowRegistry/types.d.ts +4 -5
  307. package/lib/typescript/src/specs/ShadowRegistry/types.d.ts.map +1 -1
  308. package/lib/typescript/src/specs/StatusBar/UnistylesStatusBar.nitro.d.ts.map +1 -1
  309. package/lib/typescript/src/specs/StatusBar/index.d.ts +1 -1
  310. package/lib/typescript/src/specs/StatusBar/index.d.ts.map +1 -1
  311. package/lib/typescript/src/specs/StyleSheet/UnistylesStyleSheet.nitro.d.ts +0 -1
  312. package/lib/typescript/src/specs/StyleSheet/UnistylesStyleSheet.nitro.d.ts.map +1 -1
  313. package/lib/typescript/src/specs/StyleSheet/index.d.ts +3 -3
  314. package/lib/typescript/src/specs/StyleSheet/index.d.ts.map +1 -1
  315. package/lib/typescript/src/specs/UnistylesRuntime/UnistylesRuntime.nitro.d.ts.map +1 -1
  316. package/lib/typescript/src/specs/UnistylesRuntime/index.d.ts +1 -1
  317. package/lib/typescript/src/specs/UnistylesRuntime/index.d.ts.map +1 -1
  318. package/lib/typescript/src/specs/index.native.d.ts +4 -4
  319. package/lib/typescript/src/specs/index.native.d.ts.map +1 -1
  320. package/lib/typescript/src/specs/types.d.ts.map +1 -1
  321. package/lib/typescript/src/types/breakpoints.d.ts +2 -2
  322. package/lib/typescript/src/types/breakpoints.d.ts.map +1 -1
  323. package/lib/typescript/src/types/core.d.ts.map +1 -1
  324. package/lib/typescript/src/types/index.d.ts +1 -1
  325. package/lib/typescript/src/types/index.d.ts.map +1 -1
  326. package/lib/typescript/src/types/stylesheet.d.ts +1 -1
  327. package/lib/typescript/src/types/stylesheet.d.ts.map +1 -1
  328. package/lib/typescript/src/types/variants.d.ts.map +1 -1
  329. package/lib/typescript/src/utils.d.ts.map +1 -1
  330. package/lib/typescript/src/web/convert/index.d.ts.map +1 -1
  331. package/lib/typescript/src/web/convert/object/boxShadow.d.ts.map +1 -1
  332. package/lib/typescript/src/web/convert/object/filter.d.ts.map +1 -1
  333. package/lib/typescript/src/web/convert/object/objectStyle.d.ts.map +1 -1
  334. package/lib/typescript/src/web/convert/object/transform.d.ts.map +1 -1
  335. package/lib/typescript/src/web/convert/pseudo.d.ts.map +1 -1
  336. package/lib/typescript/src/web/convert/types.d.ts +2 -2
  337. package/lib/typescript/src/web/convert/types.d.ts.map +1 -1
  338. package/lib/typescript/src/web/convert/utils.d.ts.map +1 -1
  339. package/lib/typescript/src/web/create.d.ts +1 -1
  340. package/lib/typescript/src/web/create.d.ts.map +1 -1
  341. package/lib/typescript/src/web/css/core.d.ts.map +1 -1
  342. package/lib/typescript/src/web/css/state.d.ts.map +1 -1
  343. package/lib/typescript/src/web/css/utils.d.ts.map +1 -1
  344. package/lib/typescript/src/web/index.d.ts.map +1 -1
  345. package/lib/typescript/src/web/listener.d.ts +5 -1
  346. package/lib/typescript/src/web/listener.d.ts.map +1 -1
  347. package/lib/typescript/src/web/registry.d.ts +1 -1
  348. package/lib/typescript/src/web/registry.d.ts.map +1 -1
  349. package/lib/typescript/src/web/runtime.d.ts +1 -1
  350. package/lib/typescript/src/web/runtime.d.ts.map +1 -1
  351. package/lib/typescript/src/web/shadowRegistry.d.ts.map +1 -1
  352. package/lib/typescript/src/web/state.d.ts.map +1 -1
  353. package/lib/typescript/src/web/types.d.ts +1 -1
  354. package/lib/typescript/src/web/types.d.ts.map +1 -1
  355. package/lib/typescript/src/web/utils/common.d.ts.map +1 -1
  356. package/lib/typescript/src/web/utils/createUnistylesRef.d.ts.map +1 -1
  357. package/lib/typescript/src/web/utils/unistyle.d.ts +1 -1
  358. package/lib/typescript/src/web/utils/unistyle.d.ts.map +1 -1
  359. package/lib/typescript/src/web/variants.d.ts.map +1 -1
  360. package/lib/typescript/src/web-only/getWebProps.d.ts.map +1 -1
  361. package/lib/typescript/src/web-only/index.d.ts.map +1 -1
  362. package/nitrogen/generated/android/c++/JHybridNativePlatformSpec.cpp +36 -42
  363. package/nitrogen/generated/android/c++/JHybridNativePlatformSpec.hpp +19 -22
  364. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/HybridNativePlatformSpec.kt +15 -18
  365. package/nitrogen/generated/android/unistylesOnLoad.cpp +14 -9
  366. package/nitrogen/generated/android/unistylesOnLoad.hpp +13 -4
  367. package/nitrogen/generated/shared/c++/HybridUnistylesStyleSheetSpec.cpp +0 -1
  368. package/nitrogen/generated/shared/c++/HybridUnistylesStyleSheetSpec.hpp +0 -1
  369. package/package.json +43 -44
  370. package/plugin/index.d.ts +34 -28
  371. package/plugin/index.js +113 -103
  372. package/repack-plugin/index.d.ts +2 -2
  373. package/src/components/AdaptiveTheme.tsx +8 -12
  374. package/src/components/ApplyScopedTheme.tsx +2 -0
  375. package/src/components/Display.tsx +2 -3
  376. package/src/components/Hide.tsx +2 -3
  377. package/src/components/NamedTheme.tsx +9 -14
  378. package/src/components/ScopedTheme.tsx +22 -27
  379. package/src/components/native/ActivityIndicator.tsx +1 -0
  380. package/src/components/native/Animated.tsx +2 -1
  381. package/src/components/native/FlatList.tsx +1 -0
  382. package/src/components/native/Image.native.tsx +1 -0
  383. package/src/components/native/Image.tsx +11 -7
  384. package/src/components/native/ImageBackground.native.tsx +1 -0
  385. package/src/components/native/ImageBackground.tsx +11 -7
  386. package/src/components/native/KeyboardAvoidingView.tsx +1 -0
  387. package/src/components/native/NativeText.native.tsx +3 -1
  388. package/src/components/native/NativeView.native.tsx +3 -1
  389. package/src/components/native/Pressable.native.tsx +8 -8
  390. package/src/components/native/Pressable.tsx +25 -20
  391. package/src/components/native/RefreshControl.tsx +1 -0
  392. package/src/components/native/SafeAreaView.tsx +1 -0
  393. package/src/components/native/ScrollView.tsx +1 -0
  394. package/src/components/native/SectionList.tsx +1 -0
  395. package/src/components/native/Switch.tsx +1 -0
  396. package/src/components/native/Text.tsx +1 -0
  397. package/src/components/native/TextInput.tsx +1 -0
  398. package/src/components/native/TouchableHighlight.tsx +1 -0
  399. package/src/components/native/TouchableOpacity.tsx +1 -0
  400. package/src/components/native/View.tsx +1 -0
  401. package/src/components/native/VirtualizedList.tsx +1 -0
  402. package/src/core/createUnistylesElement.native.tsx +4 -2
  403. package/src/core/createUnistylesElement.tsx +14 -17
  404. package/src/core/createUnistylesImageBackground.tsx +6 -4
  405. package/src/core/getClassname.ts +4 -11
  406. package/src/core/parseBoxShadow.ts +11 -24
  407. package/src/core/passForwardRef.ts +1 -1
  408. package/src/core/useProxifiedUnistyles/listener.native.ts +3 -3
  409. package/src/core/useProxifiedUnistyles/listener.ts +10 -3
  410. package/src/core/useProxifiedUnistyles/types.ts +2 -2
  411. package/src/core/useProxifiedUnistyles/useProxifiedUnistyles.ts +13 -9
  412. package/src/core/useUnistyles.ts +2 -1
  413. package/src/core/warn.ts +4 -4
  414. package/src/core/withUnistyles/types.ts +7 -4
  415. package/src/core/withUnistyles/withUnistyles.native.tsx +53 -44
  416. package/src/core/withUnistyles/withUnistyles.tsx +30 -24
  417. package/src/global.ts +2 -2
  418. package/src/hooks/useMedia.native.ts +2 -2
  419. package/src/hooks/useMedia.ts +6 -3
  420. package/src/index.ts +1 -0
  421. package/src/mocks.ts +74 -49
  422. package/src/mq.ts +23 -15
  423. package/src/reanimated/useAnimatedTheme.native.ts +4 -3
  424. package/src/reanimated/useAnimatedTheme.ts +6 -2
  425. package/src/reanimated/variant/types.ts +11 -10
  426. package/src/reanimated/variant/useAnimatedVariantColor.ts +7 -7
  427. package/src/reanimated/variant/useUpdateVariantColor.native.ts +10 -6
  428. package/src/reanimated/variant/useUpdateVariantColor.ts +21 -21
  429. package/src/server/getServerUnistyles.tsx +11 -4
  430. package/src/server/index.ts +0 -1
  431. package/src/server/types.ts +1 -1
  432. package/src/server/useServerUnistyles.tsx +4 -1
  433. package/src/specs/NativePlatform/NativePlatform.nitro.ts +30 -27
  434. package/src/specs/NavigtionBar/UnistylesNavigationBar.nitro.ts +3 -3
  435. package/src/specs/ShadowRegistry/ShadowRegistry.nitro.ts +1 -1
  436. package/src/specs/ShadowRegistry/index.ts +35 -29
  437. package/src/specs/ShadowRegistry/types.ts +9 -10
  438. package/src/specs/StatusBar/UnistylesStatusBar.nitro.ts +4 -4
  439. package/src/specs/StatusBar/index.ts +5 -5
  440. package/src/specs/StyleSheet/UnistylesStyleSheet.nitro.ts +2 -2
  441. package/src/specs/StyleSheet/index.ts +32 -27
  442. package/src/specs/TurboUnistyles/NativeTurboUnistyles.ts +1 -0
  443. package/src/specs/UnistylesRuntime/UnistylesRuntime.nitro.ts +26 -25
  444. package/src/specs/UnistylesRuntime/index.ts +20 -20
  445. package/src/specs/index.native.ts +6 -18
  446. package/src/specs/types.ts +9 -8
  447. package/src/types/accessibility.ts +2 -2
  448. package/src/types/breakpoints.ts +61 -59
  449. package/src/types/core.ts +17 -17
  450. package/src/types/index.ts +2 -9
  451. package/src/types/stylesheet.ts +27 -19
  452. package/src/types/variants.ts +3 -11
  453. package/src/utils.ts +16 -16
  454. package/src/web/convert/index.ts +6 -2
  455. package/src/web/convert/object/boxShadow.ts +23 -18
  456. package/src/web/convert/object/filter.ts +30 -13
  457. package/src/web/convert/object/objectStyle.ts +33 -23
  458. package/src/web/convert/object/transform.ts +10 -8
  459. package/src/web/convert/pseudo.ts +2 -2
  460. package/src/web/convert/shadow/boxShadow.ts +6 -6
  461. package/src/web/convert/shadow/getShadowBreakpoints.ts +4 -4
  462. package/src/web/convert/shadow/textShadow.ts +6 -6
  463. package/src/web/convert/style.ts +25 -25
  464. package/src/web/convert/types.ts +4 -3
  465. package/src/web/convert/utils.ts +20 -10
  466. package/src/web/create.ts +29 -20
  467. package/src/web/css/core.ts +2 -1
  468. package/src/web/css/state.ts +11 -8
  469. package/src/web/css/utils.ts +2 -1
  470. package/src/web/index.ts +7 -4
  471. package/src/web/listener.ts +61 -18
  472. package/src/web/mock.ts +2 -2
  473. package/src/web/registry.ts +17 -10
  474. package/src/web/runtime.ts +23 -17
  475. package/src/web/shadowRegistry.ts +26 -24
  476. package/src/web/state.ts +23 -16
  477. package/src/web/types.ts +5 -5
  478. package/src/web/utils/common.ts +7 -9
  479. package/src/web/utils/createUnistylesRef.ts +18 -14
  480. package/src/web/utils/unistyle.ts +53 -34
  481. package/src/web/variants.ts +19 -11
  482. package/src/web-only/getWebProps.ts +5 -6
  483. package/src/web-only/index.ts +0 -1
  484. package/LICENSE +0 -20
  485. package/README.md +0 -178
  486. package/lib/typescript/plugin/src/consts.d.ts +0 -17
  487. package/lib/typescript/plugin/src/consts.d.ts.map +0 -1
  488. package/lib/typescript/repack-plugin/src/index.d.ts +0 -18
  489. package/lib/typescript/repack-plugin/src/index.d.ts.map +0 -1
  490. package/lib/typescript/repack-plugin/src/loader.d.ts +0 -9
  491. package/lib/typescript/repack-plugin/src/loader.d.ts.map +0 -1
@@ -1,4 +1,5 @@
1
1
  import { ImageBackground as NativeImageBackground } from 'react-native'
2
+
2
3
  import { createUnistylesImageBackground } from '../../core'
3
4
 
4
5
  export const ImageBackground = createUnistylesImageBackground(NativeImageBackground)
@@ -1,9 +1,11 @@
1
1
  import React from 'react'
2
2
  import { forwardRef } from 'react'
3
3
  import { type ImageStyle, ImageBackground as NativeImageBackground, type StyleProp, type ViewStyle } from 'react-native'
4
+
5
+ import type { UnistylesValues } from '../../types'
6
+
4
7
  import { getClassName } from '../../core'
5
8
  import { maybeWarnAboutMultipleUnistyles } from '../../core/warn'
6
- import type { UnistylesValues } from '../../types'
7
9
  import { copyComponentProperties } from '../../utils'
8
10
  import { keyInObject } from '../../web/utils'
9
11
  import { createUnistylesRef } from '../../web/utils/createUnistylesRef'
@@ -28,12 +30,14 @@ const UnistylesImageBackground = forwardRef<unknown, Props>((props, forwardedRef
28
30
  <NativeImageBackground
29
31
  {...props}
30
32
  style={styleClassNames as StyleProp<ViewStyle>}
31
- imageStyle={[
32
- imageClassNames,
33
- // Clear inline width and height extracted from source
34
- hasWidthStyle && { width: '' },
35
- hasHeightStyle && { height: '' }
36
- ] as StyleProp<ImageStyle>}
33
+ imageStyle={
34
+ [
35
+ imageClassNames,
36
+ // Clear inline width and height extracted from source
37
+ hasWidthStyle && { width: '' },
38
+ hasHeightStyle && { height: '' },
39
+ ] as StyleProp<ImageStyle>
40
+ }
37
41
  ref={ref}
38
42
  imageRef={imageRef}
39
43
  />
@@ -1,4 +1,5 @@
1
1
  import { KeyboardAvoidingView as NativeKeyboardAvoidingView } from 'react-native'
2
+
2
3
  import { createUnistylesElement } from '../../core'
3
4
 
4
5
  export const KeyboardAvoidingView = createUnistylesElement(NativeKeyboardAvoidingView)
@@ -1,5 +1,7 @@
1
- import { type ComponentType, createElement, forwardRef } from 'react'
2
1
  import type { TextProps } from 'react-native'
2
+
3
+ import { type ComponentType, createElement, forwardRef } from 'react'
4
+
3
5
  import { createUnistylesElement } from '../../core'
4
6
 
5
7
  // credits to @hirbod
@@ -1,5 +1,7 @@
1
- import { type ComponentType, createElement, forwardRef } from 'react'
2
1
  import type { ViewProps } from 'react-native'
2
+
3
+ import { type ComponentType, createElement, forwardRef } from 'react'
4
+
3
5
  import { createUnistylesElement } from '../../core'
4
6
 
5
7
  // credits to @hirbod
@@ -1,6 +1,8 @@
1
+ import type { PressableProps as Props, View } from 'react-native'
2
+
1
3
  import React, { forwardRef, useLayoutEffect, useRef } from 'react'
2
4
  import { Pressable as NativePressableReactNative } from 'react-native'
3
- import type { PressableProps as Props, View } from 'react-native'
5
+
4
6
  import { passForwardedRef } from '../../core'
5
7
  import { UnistylesShadowRegistry } from '../../specs'
6
8
 
@@ -9,9 +11,7 @@ type PressableProps = Props & {
9
11
  }
10
12
 
11
13
  const getStyles = (styleProps: Record<string, any> = {}) => {
12
- const unistyleKey = Object
13
- .keys(styleProps)
14
- .find(key => key.startsWith('unistyles_'))
14
+ const unistyleKey = Object.keys(styleProps).find((key) => key.startsWith('unistyles_'))
15
15
 
16
16
  if (!unistyleKey) {
17
17
  return styleProps
@@ -20,7 +20,7 @@ const getStyles = (styleProps: Record<string, any> = {}) => {
20
20
  return {
21
21
  // styles without C++ state
22
22
  ...styleProps[unistyleKey].uni__getStyles(),
23
- [unistyleKey]: styleProps[unistyleKey]
23
+ [unistyleKey]: styleProps[unistyleKey],
24
24
  }
25
25
  }
26
26
 
@@ -40,7 +40,7 @@ export const Pressable = forwardRef<View, PressableProps>(({ variants, style, ..
40
40
  return (
41
41
  <NativePressableReactNative
42
42
  {...props}
43
- ref={ref => {
43
+ ref={(ref) => {
44
44
  const isPropStyleAFunction = typeof style === 'function'
45
45
  const unistyles = isPropStyleAFunction
46
46
  ? style.call(style, { pressed: false })
@@ -60,10 +60,10 @@ export const Pressable = forwardRef<View, PressableProps>(({ variants, style, ..
60
60
  () => {
61
61
  // @ts-expect-error - this is hidden from TS
62
62
  UnistylesShadowRegistry.remove(ref)
63
- }
63
+ },
64
64
  )
65
65
  }}
66
- style={state => {
66
+ style={(state) => {
67
67
  const isPropStyleAFunction = typeof style === 'function'
68
68
  const previousScopedTheme = UnistylesShadowRegistry.getScopedTheme()
69
69
 
@@ -1,15 +1,18 @@
1
+ import type { PressableProps as Props, View } from 'react-native'
2
+
1
3
  import React, { forwardRef } from 'react'
2
4
  import { Pressable as NativePressableReactNative } from 'react-native'
3
- import type { PressableProps as Props, View } from 'react-native'
5
+
6
+ import type { UnistylesValues } from '../../types'
7
+
4
8
  import { getClassName } from '../../core'
5
9
  import { UnistylesShadowRegistry } from '../../specs'
6
- import type { UnistylesValues } from '../../types'
7
10
  import { isServer } from '../../web/utils'
8
11
 
9
12
  type Variants = Record<string, string | boolean | undefined>
10
13
  type WebPressableState = {
11
- pressed: boolean,
12
- hovered: boolean,
14
+ pressed: boolean
15
+ hovered: boolean
13
16
  focused: boolean
14
17
  }
15
18
 
@@ -17,7 +20,7 @@ type WebPressableStyle = ((state: WebPressableState) => UnistylesValues) | Unist
17
20
 
18
21
  type PressableProps = Props & {
19
22
  variants?: Variants
20
- style?: WebPressableStyle,
23
+ style?: WebPressableStyle
21
24
  }
22
25
 
23
26
  export const Pressable = forwardRef<View, PressableProps>(({ style, ...props }, forwardedRef) => {
@@ -28,23 +31,25 @@ export const Pressable = forwardRef<View, PressableProps>(({ style, ...props },
28
31
  return (
29
32
  <NativePressableReactNative
30
33
  {...props}
31
- ref={isServer() ? undefined : ref => {
32
- storedRef = ref as unknown as HTMLElement
33
- // @ts-expect-error hidden from TS
34
- UnistylesShadowRegistry.add(storedRef, classNames?.hash)
34
+ ref={
35
+ isServer()
36
+ ? undefined
37
+ : (ref) => {
38
+ storedRef = ref as unknown as HTMLElement
39
+ // @ts-expect-error hidden from TS
40
+ UnistylesShadowRegistry.add(storedRef, classNames?.hash)
35
41
 
36
- if (typeof forwardedRef === 'function') {
37
- return forwardedRef(ref)
38
- }
42
+ if (typeof forwardedRef === 'function') {
43
+ return forwardedRef(ref)
44
+ }
39
45
 
40
- if (forwardedRef) {
41
- forwardedRef.current = ref
42
- }
43
- }}
44
- style={state => {
45
- const styleResult = typeof style === 'function'
46
- ? style(state as WebPressableState)
47
- : style
46
+ if (forwardedRef) {
47
+ forwardedRef.current = ref
48
+ }
49
+ }
50
+ }
51
+ style={(state) => {
52
+ const styleResult = typeof style === 'function' ? style(state as WebPressableState) : style
48
53
  const previousScopedTheme = UnistylesShadowRegistry.getScopedTheme()
49
54
 
50
55
  UnistylesShadowRegistry.setScopedTheme(scopedTheme)
@@ -1,4 +1,5 @@
1
1
  import { RefreshControl as NativeRefreshControl } from 'react-native'
2
+
2
3
  import { createUnistylesElement } from '../../core'
3
4
 
4
5
  export const RefreshControl = createUnistylesElement(NativeRefreshControl)
@@ -1,4 +1,5 @@
1
1
  import { SafeAreaView as NativeSafeAreaView } from 'react-native'
2
+
2
3
  import { createUnistylesElement } from '../../core'
3
4
 
4
5
  export const SafeAreaView = createUnistylesElement(NativeSafeAreaView)
@@ -1,4 +1,5 @@
1
1
  import { ScrollView as NativeScrollView } from 'react-native'
2
+
2
3
  import { createUnistylesElement } from '../../core'
3
4
 
4
5
  export const ScrollView = createUnistylesElement(NativeScrollView)
@@ -1,4 +1,5 @@
1
1
  import { SectionList as NativeSectionList } from 'react-native'
2
+
2
3
  import { createUnistylesElement } from '../../core'
3
4
 
4
5
  export const SectionList = createUnistylesElement(NativeSectionList)
@@ -1,4 +1,5 @@
1
1
  import { Switch as NativeSwitch } from 'react-native'
2
+
2
3
  import { createUnistylesElement } from '../../core'
3
4
 
4
5
  export const Switch = createUnistylesElement(NativeSwitch)
@@ -1,4 +1,5 @@
1
1
  import { Text as NativeText } from 'react-native'
2
+
2
3
  import { createUnistylesElement } from '../../core'
3
4
 
4
5
  export const Text = createUnistylesElement(NativeText)
@@ -1,4 +1,5 @@
1
1
  import { TextInput as NativeTextInput } from 'react-native'
2
+
2
3
  import { createUnistylesElement } from '../../core'
3
4
 
4
5
  export const TextInput = createUnistylesElement(NativeTextInput)
@@ -1,4 +1,5 @@
1
1
  import { TouchableHighlight as NativeTouchableHighlight } from 'react-native'
2
+
2
3
  import { createUnistylesElement } from '../../core'
3
4
 
4
5
  export const TouchableHighlight = createUnistylesElement(NativeTouchableHighlight)
@@ -1,4 +1,5 @@
1
1
  import { TouchableOpacity as NativeTouchableOpacity } from 'react-native'
2
+
2
3
  import { createUnistylesElement } from '../../core'
3
4
 
4
5
  export const TouchableOpacity = createUnistylesElement(NativeTouchableOpacity)
@@ -1,4 +1,5 @@
1
1
  import { View as NativeView } from 'react-native'
2
+
2
3
  import { createUnistylesElement } from '../../core'
3
4
 
4
5
  export const View = createUnistylesElement(NativeView)
@@ -1,4 +1,5 @@
1
1
  import { VirtualizedList as NativeVirtualizedList } from 'react-native'
2
+
2
3
  import { createUnistylesElement } from '../../core'
3
4
 
4
5
  export const VirtualizedList = createUnistylesElement(NativeVirtualizedList)
@@ -1,5 +1,7 @@
1
- import React, { useRef } from 'react'
2
1
  import type { ScrollView } from 'react-native'
2
+
3
+ import React, { useRef } from 'react'
4
+
3
5
  import { UnistylesShadowRegistry } from '../specs'
4
6
  import { copyComponentProperties } from '../utils'
5
7
  import { passForwardedRef } from './passForwardRef'
@@ -41,7 +43,7 @@ export const createUnistylesElement = (Component: any) => {
41
43
  () => {
42
44
  // @ts-ignore this is hidden from TS
43
45
  UnistylesShadowRegistry.remove(ref)
44
- }
46
+ },
45
47
  )
46
48
  }}
47
49
  />
@@ -1,6 +1,9 @@
1
- import React from 'react'
2
1
  import type { ViewStyle } from 'react-native'
2
+
3
+ import React from 'react'
4
+
3
5
  import type { UnistylesValues } from '../types'
6
+
4
7
  import { copyComponentProperties } from '../utils'
5
8
  import { isServer } from '../web/utils'
6
9
  import { createUnistylesRef } from '../web/utils/createUnistylesRef'
@@ -9,40 +12,34 @@ import { maybeWarnAboutMultipleUnistyles } from './warn'
9
12
 
10
13
  const STYLE_PROPS = ['contentContainerStyle', 'columnWrapperStyle'] as const
11
14
 
12
- type StyleProp = typeof STYLE_PROPS[number] | 'style'
15
+ type StyleProp = (typeof STYLE_PROPS)[number] | 'style'
13
16
 
14
17
  type ComponentProps = {
15
18
  [K in StyleProp]?: UnistylesValues
16
19
  }
17
20
 
18
21
  const buildUnistylesProps = (Component: any, props: ComponentProps, forwardedRef: React.ForwardedRef<unknown>) => {
19
- const componentStyleProps = ['style' as const, ...STYLE_PROPS.filter(styleProp => styleProp in props)]
20
- const classNames = Object.fromEntries(componentStyleProps.map(styleProp => [styleProp, getClassName(props[styleProp])]))
21
- const refs = componentStyleProps.map(styleProp => {
22
- return createUnistylesRef(
23
- classNames[styleProp],
24
- styleProp === 'style' ? forwardedRef : undefined
25
- )
22
+ const componentStyleProps = ['style' as const, ...STYLE_PROPS.filter((styleProp) => styleProp in props)]
23
+ const classNames = Object.fromEntries(
24
+ componentStyleProps.map((styleProp) => [styleProp, getClassName(props[styleProp])]),
25
+ )
26
+ const refs = componentStyleProps.map((styleProp) => {
27
+ return createUnistylesRef(classNames[styleProp], styleProp === 'style' ? forwardedRef : undefined)
26
28
  })
27
29
 
28
- componentStyleProps.forEach(styleProp => {
30
+ componentStyleProps.forEach((styleProp) => {
29
31
  maybeWarnAboutMultipleUnistyles(props[styleProp] as ViewStyle, Component.displayName)
30
32
  })
31
33
 
32
34
  return {
33
35
  ...classNames,
34
- ref: isServer() ? undefined : (componentRef: any) => refs.forEach(ref => ref?.(componentRef))
36
+ ref: isServer() ? undefined : (componentRef: any) => refs.forEach((ref) => ref?.(componentRef)),
35
37
  }
36
38
  }
37
39
 
38
40
  export const createUnistylesElement = (Component: any) => {
39
41
  const UnistylesComponent = (props: any) => {
40
- return (
41
- <Component
42
- {...props}
43
- {...buildUnistylesProps(Component, props, props.ref)}
44
- />
45
- )
42
+ return <Component {...props} {...buildUnistylesProps(Component, props, props.ref)} />
46
43
  }
47
44
 
48
45
  return copyComponentProperties(Component, UnistylesComponent)
@@ -1,5 +1,7 @@
1
- import React from 'react'
2
1
  import type { ImageBackground, ImageBackgroundProps } from 'react-native'
2
+
3
+ import React from 'react'
4
+
3
5
  import { UnistylesShadowRegistry } from '../specs'
4
6
  import { copyComponentProperties } from '../utils'
5
7
  import { passForwardedRef } from './passForwardRef'
@@ -15,7 +17,7 @@ export const createUnistylesImageBackground = (Component: typeof ImageBackground
15
17
  return (
16
18
  <Component
17
19
  {...props}
18
- ref={ref => {
20
+ ref={(ref) => {
19
21
  return passForwardedRef(
20
22
  ref,
21
23
  forwardedRef,
@@ -26,10 +28,10 @@ export const createUnistylesImageBackground = (Component: typeof ImageBackground
26
28
  () => {
27
29
  // @ts-expect-error - this is hidden from TS
28
30
  UnistylesShadowRegistry.remove(ref)
29
- }
31
+ },
30
32
  )
31
33
  }}
32
- imageRef={ref => {
34
+ imageRef={(ref) => {
33
35
  // @ts-expect-error web types are not compatible with RN styles
34
36
  UnistylesShadowRegistry.add(ref, props.imageStyle)
35
37
 
@@ -1,4 +1,5 @@
1
1
  import type { UnistylesValues } from '../types'
2
+
2
3
  import * as unistyles from '../web/services'
3
4
  import { checkForAnimated } from '../web/utils'
4
5
 
@@ -9,17 +10,9 @@ export const getClassName = (unistyle: UnistylesValues | undefined | Array<Unist
9
10
 
10
11
  const flattenedStyles = Array.isArray(unistyle) ? unistyle.flat(Number.POSITIVE_INFINITY) : [unistyle]
11
12
  const animatedStyles = flattenedStyles.filter(checkForAnimated)
12
- const regularStyles = flattenedStyles.filter(style => !checkForAnimated(style))
13
+ const regularStyles = flattenedStyles.filter((style) => !checkForAnimated(style))
13
14
 
14
- const { hash, injectedClassName } = unistyles.services.shadowRegistry.addStyles(
15
- regularStyles,
16
- forChild
17
- )
15
+ const { hash, injectedClassName } = unistyles.services.shadowRegistry.addStyles(regularStyles, forChild)
18
16
 
19
- return hash
20
- ? [
21
- { $$css: true, hash, injectedClassName },
22
- animatedStyles,
23
- ] as const
24
- : undefined
17
+ return hash ? ([{ $$css: true, hash, injectedClassName }, animatedStyles] as const) : undefined
25
18
  }
@@ -19,7 +19,7 @@ const parseBoxShadow = (str: string): BoxShadow | undefined => {
19
19
  // split by space, but not if it's inside of ()
20
20
  const parts = str.split(/\s+(?![^(]*\))/)
21
21
  const lastIndex = parts.length - 1
22
- const insetIndex = parts.findIndex(part => part === 'inset')
22
+ const insetIndex = parts.findIndex((part) => part === 'inset')
23
23
 
24
24
  // inset can only be at the start or end
25
25
  if (![-1, 0, lastIndex].includes(insetIndex)) {
@@ -27,19 +27,12 @@ const parseBoxShadow = (str: string): BoxShadow | undefined => {
27
27
  }
28
28
 
29
29
  // if there is no inset, color can only be at the start or end
30
- const maybeColorsIndexes = insetIndex === -1
31
- ? [0, lastIndex]
32
- : insetIndex === lastIndex
33
- ? [0, lastIndex - 1]
34
- : [1, lastIndex]
30
+ const maybeColorsIndexes =
31
+ insetIndex === -1 ? [0, lastIndex] : insetIndex === lastIndex ? [0, lastIndex - 1] : [1, lastIndex]
35
32
 
36
- const colorIndex = maybeColorsIndexes.find(index => !isValue(parts[index])) ?? -1
37
- const maybeColor = colorIndex !== -1
38
- ? parts[colorIndex]
39
- : undefined
40
- const color = maybeColor && processColor(maybeColor)
41
- ? parts[colorIndex]
42
- : undefined
33
+ const colorIndex = maybeColorsIndexes.find((index) => !isValue(parts[index])) ?? -1
34
+ const maybeColor = colorIndex !== -1 ? parts[colorIndex] : undefined
35
+ const color = maybeColor && processColor(maybeColor) ? parts[colorIndex] : undefined
43
36
  const values = parts.filter((_, index) => index !== colorIndex && index !== insetIndex)
44
37
 
45
38
  // at this point there can be only 4 values
@@ -53,32 +46,26 @@ const parseBoxShadow = (str: string): BoxShadow | undefined => {
53
46
  return undefined
54
47
  }
55
48
 
56
- const blurRadiusValue = isValue(blurRadius)
57
- ? Number.parseFloat(blurRadius as string)
58
- : undefined
49
+ const blurRadiusValue = isValue(blurRadius) ? Number.parseFloat(blurRadius as string) : undefined
59
50
 
60
51
  if (blurRadiusValue !== undefined && blurRadiusValue < 0) {
61
52
  return undefined
62
53
  }
63
54
 
64
55
  return {
65
- inset: insetIndex !== -1
66
- ? true
67
- : undefined,
56
+ inset: insetIndex !== -1 ? true : undefined,
68
57
  offsetX: Number.parseFloat(offsetX as string),
69
58
  offsetY: Number.parseFloat(offsetY as string),
70
59
  blurRadius: blurRadiusValue ?? 0,
71
- spreadDistance: spreadRadius
72
- ? Number.parseFloat(spreadRadius as string)
73
- : 0,
74
- color
60
+ spreadDistance: spreadRadius ? Number.parseFloat(spreadRadius as string) : 0,
61
+ color,
75
62
  }
76
63
  }
77
64
 
78
65
  export const parseBoxShadowString = (str: string): Array<BoxShadow> => {
79
66
  const parts = str
80
67
  .split(/,(?![^()]*\))/)
81
- .map(part => part.trim().replace('\n', ''))
68
+ .map((part) => part.trim().replace('\n', ''))
82
69
  .filter(Boolean)
83
70
  .map(parseBoxShadow)
84
71
  .filter(Boolean) as Array<BoxShadow>
@@ -4,7 +4,7 @@ export const passForwardedRef = <T>(
4
4
  ref: T,
5
5
  forwardedRef: React.ForwardedRef<T>,
6
6
  onMount?: () => void,
7
- onUnmount?: () => void
7
+ onUnmount?: () => void,
8
8
  ) => {
9
9
  const passForwardedRef = () => {
10
10
  if (typeof forwardedRef === 'function') {
@@ -1,10 +1,10 @@
1
- import { StyleSheet, UnistyleDependency } from '../../specs'
2
1
  import type { ListenerProps } from './types'
3
2
 
3
+ import { StyleSheet, UnistyleDependency } from '../../specs'
4
+
4
5
  export const listener = ({ dependencies, updateTheme, updateRuntime }: ListenerProps) => {
5
6
  const listensToTheme = dependencies.includes(UnistyleDependency.Theme)
6
- // @ts-expect-error - this is hidden from TS
7
- const dispose = StyleSheet.addChangeListener(changedDependencies => {
7
+ const dispose = StyleSheet.addChangeListener((changedDependencies) => {
8
8
  if (listensToTheme && changedDependencies.includes(UnistyleDependency.Theme)) {
9
9
  updateTheme()
10
10
  }
@@ -1,10 +1,17 @@
1
+ import type { ListenerProps } from './types'
2
+
1
3
  import { UnistyleDependency } from '../../specs'
2
4
  import * as unistyles from '../../web/services'
3
- import type { ListenerProps } from './types'
4
5
 
5
6
  export const listener = ({ dependencies, updateTheme, updateRuntime }: ListenerProps) => {
6
- const disposeTheme = unistyles.services.listener.addListeners(dependencies.filter(dependency => dependency === UnistyleDependency.Theme), updateTheme)
7
- const disposeRuntime = unistyles.services.listener.addListeners(dependencies.filter(dependency => dependency !== UnistyleDependency.Theme), dependency => updateRuntime(dependency === UnistyleDependency.ThemeName))
7
+ const disposeTheme = unistyles.services.listener.addListeners(
8
+ dependencies.filter((dependency) => dependency === UnistyleDependency.Theme),
9
+ updateTheme,
10
+ )
11
+ const disposeRuntime = unistyles.services.listener.addListeners(
12
+ dependencies.filter((dependency) => dependency !== UnistyleDependency.Theme),
13
+ (dependency) => updateRuntime(dependency === UnistyleDependency.ThemeName),
14
+ )
8
15
 
9
16
  return () => {
10
17
  disposeTheme()
@@ -1,7 +1,7 @@
1
1
  import type { UnistyleDependency } from '../../specs'
2
2
 
3
3
  export type ListenerProps = {
4
- updateTheme: VoidFunction,
5
- updateRuntime(themeNameChange: boolean): void,
4
+ updateTheme: VoidFunction
5
+ updateRuntime(themeNameChange: boolean): void
6
6
  dependencies: Array<UnistyleDependency>
7
7
  }
@@ -1,8 +1,10 @@
1
1
  import { useEffect, useLayoutEffect, useReducer, useRef, useState } from 'react'
2
+
3
+ import type { UnistylesTheme } from '../../types'
4
+
2
5
  import { type UnistylesMiniRuntime, UnistylesRuntime, UnistylesShadowRegistry } from '../../specs'
3
6
  // It's imported that way because of circular dependency
4
7
  import { UnistyleDependency } from '../../specs/NativePlatform'
5
- import type { UnistylesTheme } from '../../types'
6
8
  import { listener } from './listener'
7
9
 
8
10
  const getMiniRuntime = (): UnistylesMiniRuntime => {
@@ -24,11 +26,13 @@ const RTDependencyMap = {
24
26
  statusBar: UnistyleDependency.StatusBar,
25
27
  pixelRatio: UnistyleDependency.PixelRatio,
26
28
  themeName: UnistyleDependency.ThemeName,
27
- rtl: UnistyleDependency.Rtl
29
+ rtl: UnistyleDependency.Rtl,
28
30
  } satisfies Partial<Record<keyof UnistylesMiniRuntime, UnistyleDependency>>
29
31
 
30
32
  export const useProxifiedUnistyles = (forcedTheme?: UnistylesTheme) => {
31
- const [scopedTheme, setScopedTheme] = useState(forcedTheme ?? UnistylesShadowRegistry.getScopedTheme() as UnistylesTheme)
33
+ const [scopedTheme, setScopedTheme] = useState(
34
+ forcedTheme ?? (UnistylesShadowRegistry.getScopedTheme() as UnistylesTheme),
35
+ )
32
36
  const [dependencies] = useState(() => new Set<number>())
33
37
  const [theme, setTheme] = useState(UnistylesRuntime.getTheme(scopedTheme))
34
38
  const [_, runtimeChanged] = useReducer(() => ({}), {})
@@ -53,7 +57,7 @@ export const useProxifiedUnistyles = (forcedTheme?: UnistylesTheme) => {
53
57
  }
54
58
 
55
59
  runtimeChanged()
56
- }
60
+ },
57
61
  })
58
62
  }
59
63
 
@@ -72,7 +76,7 @@ export const useProxifiedUnistyles = (forcedTheme?: UnistylesTheme) => {
72
76
  dependencies.add(UnistyleDependency.Theme)
73
77
 
74
78
  return target[prop]
75
- }
79
+ },
76
80
  })
77
81
  const proxifiedRuntime = new Proxy(getMiniRuntime(), {
78
82
  get: (target, prop) => {
@@ -88,7 +92,7 @@ export const useProxifiedUnistyles = (forcedTheme?: UnistylesTheme) => {
88
92
  dependencies.add(UnistyleDependency.Insets)
89
93
 
90
94
  return target[prop as keyof typeof target]
91
- }
95
+ },
92
96
  })
93
97
  }
94
98
 
@@ -101,7 +105,7 @@ export const useProxifiedUnistyles = (forcedTheme?: UnistylesTheme) => {
101
105
  }
102
106
 
103
107
  return target[prop as keyof typeof target]
104
- }
108
+ },
105
109
  })
106
110
 
107
111
  useLayoutEffect(() => {
@@ -124,7 +128,7 @@ export const useProxifiedUnistyles = (forcedTheme?: UnistylesTheme) => {
124
128
  addDependencies: (newDependencies: Array<UnistyleDependency>) => {
125
129
  const dependenciesSize = dependencies.size
126
130
 
127
- newDependencies.forEach(dependency => {
131
+ newDependencies.forEach((dependency) => {
128
132
  dependencies.add(dependency)
129
133
  })
130
134
 
@@ -135,6 +139,6 @@ export const useProxifiedUnistyles = (forcedTheme?: UnistylesTheme) => {
135
139
  syncedDependenciesSizeRef.current = dependencies.size
136
140
  syncedScopedThemeRef.current = scopedTheme
137
141
  reinitListener()
138
- }
142
+ },
139
143
  }
140
144
  }
@@ -1,4 +1,5 @@
1
1
  import type { UnistylesTheme } from '../types'
2
+
2
3
  import { useProxifiedUnistyles } from './useProxifiedUnistyles'
3
4
 
4
5
  export const useUnistyles = () => {
@@ -6,6 +7,6 @@ export const useUnistyles = () => {
6
7
 
7
8
  return {
8
9
  theme: proxifiedTheme as UnistylesTheme,
9
- rt: proxifiedRuntime
10
+ rt: proxifiedRuntime,
10
11
  }
11
12
  }
package/src/core/warn.ts CHANGED
@@ -2,12 +2,12 @@ import type { ViewStyle } from 'react-native'
2
2
 
3
3
  export const maybeWarnAboutMultipleUnistyles = (style: ViewStyle, displayName = 'Unknown') => {
4
4
  if (__DEV__ && style && !Array.isArray(style)) {
5
- const unistylesKeys = Object
6
- .keys(style)
7
- .filter(key => key.startsWith('unistyles_'))
5
+ const unistylesKeys = Object.keys(style).filter((key) => key.startsWith('unistyles_'))
8
6
 
9
7
  if (unistylesKeys.length > 1) {
10
- console.warn(`Unistyles: we detected style object with ${unistylesKeys.length} unistyles styles. This might cause no updates or unpredictable behavior. Please check style prop for "${displayName}" and use array syntax instead of object syntax.`)
8
+ console.warn(
9
+ `Unistyles: we detected style object with ${unistylesKeys.length} unistyles styles. This might cause no updates or unpredictable behavior. Please check style prop for "${displayName}" and use array syntax instead of object syntax.`,
10
+ )
11
11
  }
12
12
  }
13
13
  }