react-native-unistyles 3.5.3 → 3.7.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 (401) hide show
  1. package/README.md +6 -8
  2. package/android/build.gradle +42 -0
  3. package/android/src/legacy/java/com/unistyles/NativePlatform+extraWindows.kt +16 -0
  4. package/android/src/main/cxx/NativeUnistylesModule.cpp +5 -11
  5. package/android/src/main/cxx/NativeUnistylesModule.h +0 -4
  6. package/android/src/main/java/com/unistyles/NativePlatform+android.kt +82 -39
  7. package/android/src/main/java/com/unistyles/NativePlatform+insets.kt +73 -0
  8. package/android/src/main/java/com/unistyles/UnistylesModule.kt +2 -13
  9. package/android/src/rn86/java/com/unistyles/NativePlatform+extraWindows.kt +28 -0
  10. package/cxx/common/PerformanceTracing.h +85 -0
  11. package/cxx/converters/BackgroundImageConverter.cpp +198 -11
  12. package/cxx/converters/BackgroundImageConverter.h +1 -0
  13. package/cxx/converters/BackgroundLayerConverter.cpp +523 -0
  14. package/cxx/converters/BackgroundLayerConverter.h +14 -0
  15. package/cxx/converters/FontVariationSettingsConverter.cpp +104 -0
  16. package/cxx/converters/FontVariationSettingsConverter.h +17 -0
  17. package/cxx/core/HostUnistyle.cpp +6 -0
  18. package/cxx/core/UnistyleWrapper.h +16 -1
  19. package/cxx/hybridObjects/HybridShadowRegistry.cpp +13 -0
  20. package/cxx/hybridObjects/HybridStyleSheet.cpp +11 -0
  21. package/cxx/hybridObjects/HybridStyleSheet.h +1 -0
  22. package/cxx/hybridObjects/HybridUnistylesRuntime.cpp +10 -30
  23. package/cxx/hybridObjects/HybridUnistylesRuntime.h +2 -2
  24. package/cxx/parser/Parser.cpp +92 -5
  25. package/cxx/shadowTree/ShadowTreeDiagnostics.cpp +74 -0
  26. package/cxx/shadowTree/ShadowTreeManager.cpp +3 -0
  27. package/ios/NativePlatform+ios.swift +22 -11
  28. package/ios/NativePlatformListener+ios.swift +9 -0
  29. package/lib/commonjs/components/NamedTheme.js +4 -4
  30. package/lib/commonjs/components/NamedTheme.js.map +1 -1
  31. package/lib/commonjs/components/ScopedThemeContext.js +3 -1
  32. package/lib/commonjs/components/ScopedThemeContext.js.map +1 -1
  33. package/lib/commonjs/components/native/deep/ActivityIndicator.js +19 -0
  34. package/lib/commonjs/components/native/deep/ActivityIndicator.js.map +1 -0
  35. package/lib/commonjs/components/native/deep/Animated.js +19 -0
  36. package/lib/commonjs/components/native/deep/Animated.js.map +1 -0
  37. package/lib/commonjs/components/native/deep/FlatList.js +19 -0
  38. package/lib/commonjs/components/native/deep/FlatList.js.map +1 -0
  39. package/lib/commonjs/components/native/deep/Image.js +19 -0
  40. package/lib/commonjs/components/native/deep/Image.js.map +1 -0
  41. package/lib/commonjs/components/native/deep/ImageBackground.js +19 -0
  42. package/lib/commonjs/components/native/deep/ImageBackground.js.map +1 -0
  43. package/lib/commonjs/components/native/deep/KeyboardAvoidingView.js +19 -0
  44. package/lib/commonjs/components/native/deep/KeyboardAvoidingView.js.map +1 -0
  45. package/lib/commonjs/components/native/deep/Pressable.js +19 -0
  46. package/lib/commonjs/components/native/deep/Pressable.js.map +1 -0
  47. package/lib/commonjs/components/native/deep/RefreshControl.js +19 -0
  48. package/lib/commonjs/components/native/deep/RefreshControl.js.map +1 -0
  49. package/lib/commonjs/components/native/deep/SafeAreaView.js +19 -0
  50. package/lib/commonjs/components/native/deep/SafeAreaView.js.map +1 -0
  51. package/lib/commonjs/components/native/deep/ScrollView.js +19 -0
  52. package/lib/commonjs/components/native/deep/ScrollView.js.map +1 -0
  53. package/lib/commonjs/components/native/deep/SectionList.js +19 -0
  54. package/lib/commonjs/components/native/deep/SectionList.js.map +1 -0
  55. package/lib/commonjs/components/native/deep/Switch.js +19 -0
  56. package/lib/commonjs/components/native/deep/Switch.js.map +1 -0
  57. package/lib/commonjs/components/native/deep/Text.js +19 -0
  58. package/lib/commonjs/components/native/deep/Text.js.map +1 -0
  59. package/lib/commonjs/components/native/deep/TextInput.js +19 -0
  60. package/lib/commonjs/components/native/deep/TextInput.js.map +1 -0
  61. package/lib/commonjs/components/native/deep/TextNativeComponent.js +28 -0
  62. package/lib/commonjs/components/native/deep/TextNativeComponent.js.map +1 -0
  63. package/lib/commonjs/components/native/deep/TouchableHighlight.js +19 -0
  64. package/lib/commonjs/components/native/deep/TouchableHighlight.js.map +1 -0
  65. package/lib/commonjs/components/native/deep/TouchableOpacity.js +19 -0
  66. package/lib/commonjs/components/native/deep/TouchableOpacity.js.map +1 -0
  67. package/lib/commonjs/components/native/deep/View.js +19 -0
  68. package/lib/commonjs/components/native/deep/View.js.map +1 -0
  69. package/lib/commonjs/components/native/deep/ViewNativeComponent.js +26 -0
  70. package/lib/commonjs/components/native/deep/ViewNativeComponent.js.map +1 -0
  71. package/lib/commonjs/components/native/deep/VirtualizedList.js +19 -0
  72. package/lib/commonjs/components/native/deep/VirtualizedList.js.map +1 -0
  73. package/lib/commonjs/components/native/index.js +43 -0
  74. package/lib/commonjs/components/native/index.js.map +1 -0
  75. package/lib/commonjs/core/createUnistylesActivityIndicator.js +13 -3
  76. package/lib/commonjs/core/createUnistylesActivityIndicator.js.map +1 -1
  77. package/lib/commonjs/core/createUnistylesElement.native.js +6 -0
  78. package/lib/commonjs/core/createUnistylesElement.native.js.map +1 -1
  79. package/lib/commonjs/core/createUnistylesImageBackground.js +26 -19
  80. package/lib/commonjs/core/createUnistylesImageBackground.js.map +1 -1
  81. package/lib/commonjs/core/createUnistylesTouchableHighlight.js +6 -0
  82. package/lib/commonjs/core/createUnistylesTouchableHighlight.js.map +1 -1
  83. package/lib/commonjs/core/getClassname.js +15 -0
  84. package/lib/commonjs/core/getClassname.js.map +1 -1
  85. package/lib/commonjs/core/hasUnistyles.js +26 -0
  86. package/lib/commonjs/core/hasUnistyles.js.map +1 -0
  87. package/lib/commonjs/core/withUnistyles/withUnistyles.js +10 -7
  88. package/lib/commonjs/core/withUnistyles/withUnistyles.js.map +1 -1
  89. package/lib/commonjs/core/withUnistyles/withUnistyles.native.js +22 -3
  90. package/lib/commonjs/core/withUnistyles/withUnistyles.native.js.map +1 -1
  91. package/lib/commonjs/mocks.js +27 -3
  92. package/lib/commonjs/mocks.js.map +1 -1
  93. package/lib/commonjs/specs/ShadowRegistry/index.js +69 -76
  94. package/lib/commonjs/specs/ShadowRegistry/index.js.map +1 -1
  95. package/lib/commonjs/specs/ShadowRegistry/styleSource.js +65 -0
  96. package/lib/commonjs/specs/ShadowRegistry/styleSource.js.map +1 -0
  97. package/lib/commonjs/specs/ShadowRegistry/tracing.js +26 -0
  98. package/lib/commonjs/specs/ShadowRegistry/tracing.js.map +1 -0
  99. package/lib/commonjs/unifiber/src/adapters/reanimated.js +157 -0
  100. package/lib/commonjs/unifiber/src/adapters/reanimated.js.map +1 -0
  101. package/lib/commonjs/unifiber/src/adapters/registry.js +67 -0
  102. package/lib/commonjs/unifiber/src/adapters/registry.js.map +1 -0
  103. package/lib/commonjs/unifiber/src/diagnostics.js +59 -0
  104. package/lib/commonjs/unifiber/src/diagnostics.js.map +1 -0
  105. package/lib/commonjs/unifiber/src/fiber.js +199 -0
  106. package/lib/commonjs/unifiber/src/fiber.js.map +1 -0
  107. package/lib/commonjs/unifiber/src/host.js +214 -0
  108. package/lib/commonjs/unifiber/src/host.js.map +1 -0
  109. package/lib/commonjs/unifiber/src/index.js +38 -0
  110. package/lib/commonjs/unifiber/src/index.js.map +1 -0
  111. package/lib/commonjs/utils.js +52 -1
  112. package/lib/commonjs/utils.js.map +1 -1
  113. package/lib/commonjs/web/convert/index.js +19 -1
  114. package/lib/commonjs/web/convert/index.js.map +1 -1
  115. package/lib/commonjs/web/convert/module.d.ts +3 -0
  116. package/lib/commonjs/web/convert/object/backgroundLayers.js +30 -0
  117. package/lib/commonjs/web/convert/object/backgroundLayers.js.map +1 -0
  118. package/lib/commonjs/web/convert/object/fontVariationSettings.js +12 -0
  119. package/lib/commonjs/web/convert/object/fontVariationSettings.js.map +1 -0
  120. package/lib/commonjs/web/convert/object/index.js +22 -0
  121. package/lib/commonjs/web/convert/object/index.js.map +1 -1
  122. package/lib/commonjs/web/convert/utils.js +7 -1
  123. package/lib/commonjs/web/convert/utils.js.map +1 -1
  124. package/lib/commonjs/web/registry.js +6 -4
  125. package/lib/commonjs/web/registry.js.map +1 -1
  126. package/lib/commonjs/web/runtime.js +9 -6
  127. package/lib/commonjs/web/runtime.js.map +1 -1
  128. package/lib/commonjs/web/utils/unistyle.js +9 -3
  129. package/lib/commonjs/web/utils/unistyle.js.map +1 -1
  130. package/lib/module/components/NamedTheme.js +4 -4
  131. package/lib/module/components/NamedTheme.js.map +1 -1
  132. package/lib/module/components/ScopedThemeContext.js +3 -1
  133. package/lib/module/components/ScopedThemeContext.js.map +1 -1
  134. package/lib/module/components/native/deep/ActivityIndicator.js +5 -0
  135. package/lib/module/components/native/deep/ActivityIndicator.js.map +1 -0
  136. package/lib/module/components/native/deep/Animated.js +5 -0
  137. package/lib/module/components/native/deep/Animated.js.map +1 -0
  138. package/lib/module/components/native/deep/FlatList.js +5 -0
  139. package/lib/module/components/native/deep/FlatList.js.map +1 -0
  140. package/lib/module/components/native/deep/Image.js +5 -0
  141. package/lib/module/components/native/deep/Image.js.map +1 -0
  142. package/lib/module/components/native/deep/ImageBackground.js +5 -0
  143. package/lib/module/components/native/deep/ImageBackground.js.map +1 -0
  144. package/lib/module/components/native/deep/KeyboardAvoidingView.js +5 -0
  145. package/lib/module/components/native/deep/KeyboardAvoidingView.js.map +1 -0
  146. package/lib/module/components/native/deep/Pressable.js +5 -0
  147. package/lib/module/components/native/deep/Pressable.js.map +1 -0
  148. package/lib/module/components/native/deep/RefreshControl.js +5 -0
  149. package/lib/module/components/native/deep/RefreshControl.js.map +1 -0
  150. package/lib/module/components/native/deep/SafeAreaView.js +5 -0
  151. package/lib/module/components/native/deep/SafeAreaView.js.map +1 -0
  152. package/lib/module/components/native/deep/ScrollView.js +5 -0
  153. package/lib/module/components/native/deep/ScrollView.js.map +1 -0
  154. package/lib/module/components/native/deep/SectionList.js +5 -0
  155. package/lib/module/components/native/deep/SectionList.js.map +1 -0
  156. package/lib/module/components/native/deep/Switch.js +5 -0
  157. package/lib/module/components/native/deep/Switch.js.map +1 -0
  158. package/lib/module/components/native/deep/Text.js +5 -0
  159. package/lib/module/components/native/deep/Text.js.map +1 -0
  160. package/lib/module/components/native/deep/TextInput.js +5 -0
  161. package/lib/module/components/native/deep/TextInput.js.map +1 -0
  162. package/lib/module/components/native/deep/TextNativeComponent.js +8 -0
  163. package/lib/module/components/native/deep/TextNativeComponent.js.map +1 -0
  164. package/lib/module/components/native/deep/TouchableHighlight.js +5 -0
  165. package/lib/module/components/native/deep/TouchableHighlight.js.map +1 -0
  166. package/lib/module/components/native/deep/TouchableOpacity.js +5 -0
  167. package/lib/module/components/native/deep/TouchableOpacity.js.map +1 -0
  168. package/lib/module/components/native/deep/View.js +5 -0
  169. package/lib/module/components/native/deep/View.js.map +1 -0
  170. package/lib/module/components/native/deep/ViewNativeComponent.js +8 -0
  171. package/lib/module/components/native/deep/ViewNativeComponent.js.map +1 -0
  172. package/lib/module/components/native/deep/VirtualizedList.js +5 -0
  173. package/lib/module/components/native/deep/VirtualizedList.js.map +1 -0
  174. package/lib/module/components/native/index.js +43 -0
  175. package/lib/module/components/native/index.js.map +1 -0
  176. package/lib/module/core/createUnistylesActivityIndicator.js +13 -3
  177. package/lib/module/core/createUnistylesActivityIndicator.js.map +1 -1
  178. package/lib/module/core/createUnistylesElement.native.js +6 -0
  179. package/lib/module/core/createUnistylesElement.native.js.map +1 -1
  180. package/lib/module/core/createUnistylesImageBackground.js +26 -19
  181. package/lib/module/core/createUnistylesImageBackground.js.map +1 -1
  182. package/lib/module/core/createUnistylesTouchableHighlight.js +6 -0
  183. package/lib/module/core/createUnistylesTouchableHighlight.js.map +1 -1
  184. package/lib/module/core/getClassname.js +16 -1
  185. package/lib/module/core/getClassname.js.map +1 -1
  186. package/lib/module/core/hasUnistyles.js +21 -0
  187. package/lib/module/core/hasUnistyles.js.map +1 -0
  188. package/lib/module/core/withUnistyles/withUnistyles.js +9 -6
  189. package/lib/module/core/withUnistyles/withUnistyles.js.map +1 -1
  190. package/lib/module/core/withUnistyles/withUnistyles.native.js +24 -5
  191. package/lib/module/core/withUnistyles/withUnistyles.native.js.map +1 -1
  192. package/lib/module/mocks.js +27 -3
  193. package/lib/module/mocks.js.map +1 -1
  194. package/lib/module/specs/ShadowRegistry/index.js +69 -76
  195. package/lib/module/specs/ShadowRegistry/index.js.map +1 -1
  196. package/lib/module/specs/ShadowRegistry/styleSource.js +60 -0
  197. package/lib/module/specs/ShadowRegistry/styleSource.js.map +1 -0
  198. package/lib/module/specs/ShadowRegistry/tracing.js +21 -0
  199. package/lib/module/specs/ShadowRegistry/tracing.js.map +1 -0
  200. package/lib/module/unifiber/src/adapters/reanimated.js +152 -0
  201. package/lib/module/unifiber/src/adapters/reanimated.js.map +1 -0
  202. package/lib/module/unifiber/src/adapters/registry.js +62 -0
  203. package/lib/module/unifiber/src/adapters/registry.js.map +1 -0
  204. package/lib/module/unifiber/src/diagnostics.js +52 -0
  205. package/lib/module/unifiber/src/diagnostics.js.map +1 -0
  206. package/lib/module/unifiber/src/fiber.js +183 -0
  207. package/lib/module/unifiber/src/fiber.js.map +1 -0
  208. package/lib/module/unifiber/src/host.js +191 -0
  209. package/lib/module/unifiber/src/host.js.map +1 -0
  210. package/lib/module/unifiber/src/index.js +33 -0
  211. package/lib/module/unifiber/src/index.js.map +1 -0
  212. package/lib/module/utils.js +50 -0
  213. package/lib/module/utils.js.map +1 -1
  214. package/lib/module/web/convert/index.js +22 -3
  215. package/lib/module/web/convert/index.js.map +1 -1
  216. package/lib/module/web/convert/module.d.ts +3 -0
  217. package/lib/module/web/convert/object/backgroundLayers.js +25 -0
  218. package/lib/module/web/convert/object/backgroundLayers.js.map +1 -0
  219. package/lib/module/web/convert/object/fontVariationSettings.js +7 -0
  220. package/lib/module/web/convert/object/fontVariationSettings.js.map +1 -0
  221. package/lib/module/web/convert/object/index.js +2 -0
  222. package/lib/module/web/convert/object/index.js.map +1 -1
  223. package/lib/module/web/convert/utils.js +4 -0
  224. package/lib/module/web/convert/utils.js.map +1 -1
  225. package/lib/module/web/registry.js +6 -4
  226. package/lib/module/web/registry.js.map +1 -1
  227. package/lib/module/web/runtime.js +9 -6
  228. package/lib/module/web/runtime.js.map +1 -1
  229. package/lib/module/web/utils/unistyle.js +10 -4
  230. package/lib/module/web/utils/unistyle.js.map +1 -1
  231. package/lib/typescript/src/components/ScopedThemeContext.d.ts +2 -1
  232. package/lib/typescript/src/components/ScopedThemeContext.d.ts.map +1 -1
  233. package/lib/typescript/src/components/native/deep/ActivityIndicator.d.ts +2 -0
  234. package/lib/typescript/src/components/native/deep/ActivityIndicator.d.ts.map +1 -0
  235. package/lib/typescript/src/components/native/deep/Animated.d.ts +2 -0
  236. package/lib/typescript/src/components/native/deep/Animated.d.ts.map +1 -0
  237. package/lib/typescript/src/components/native/deep/FlatList.d.ts +2 -0
  238. package/lib/typescript/src/components/native/deep/FlatList.d.ts.map +1 -0
  239. package/lib/typescript/src/components/native/deep/Image.d.ts +2 -0
  240. package/lib/typescript/src/components/native/deep/Image.d.ts.map +1 -0
  241. package/lib/typescript/src/components/native/deep/ImageBackground.d.ts +2 -0
  242. package/lib/typescript/src/components/native/deep/ImageBackground.d.ts.map +1 -0
  243. package/lib/typescript/src/components/native/deep/KeyboardAvoidingView.d.ts +2 -0
  244. package/lib/typescript/src/components/native/deep/KeyboardAvoidingView.d.ts.map +1 -0
  245. package/lib/typescript/src/components/native/deep/Pressable.d.ts +2 -0
  246. package/lib/typescript/src/components/native/deep/Pressable.d.ts.map +1 -0
  247. package/lib/typescript/src/components/native/deep/RefreshControl.d.ts +2 -0
  248. package/lib/typescript/src/components/native/deep/RefreshControl.d.ts.map +1 -0
  249. package/lib/typescript/src/components/native/deep/SafeAreaView.d.ts +2 -0
  250. package/lib/typescript/src/components/native/deep/SafeAreaView.d.ts.map +1 -0
  251. package/lib/typescript/src/components/native/deep/ScrollView.d.ts +2 -0
  252. package/lib/typescript/src/components/native/deep/ScrollView.d.ts.map +1 -0
  253. package/lib/typescript/src/components/native/deep/SectionList.d.ts +2 -0
  254. package/lib/typescript/src/components/native/deep/SectionList.d.ts.map +1 -0
  255. package/lib/typescript/src/components/native/deep/Switch.d.ts +2 -0
  256. package/lib/typescript/src/components/native/deep/Switch.d.ts.map +1 -0
  257. package/lib/typescript/src/components/native/deep/Text.d.ts +2 -0
  258. package/lib/typescript/src/components/native/deep/Text.d.ts.map +1 -0
  259. package/lib/typescript/src/components/native/deep/TextInput.d.ts +2 -0
  260. package/lib/typescript/src/components/native/deep/TextInput.d.ts.map +1 -0
  261. package/lib/typescript/src/components/native/deep/TextNativeComponent.d.ts +3 -0
  262. package/lib/typescript/src/components/native/deep/TextNativeComponent.d.ts.map +1 -0
  263. package/lib/typescript/src/components/native/deep/TouchableHighlight.d.ts +2 -0
  264. package/lib/typescript/src/components/native/deep/TouchableHighlight.d.ts.map +1 -0
  265. package/lib/typescript/src/components/native/deep/TouchableOpacity.d.ts +2 -0
  266. package/lib/typescript/src/components/native/deep/TouchableOpacity.d.ts.map +1 -0
  267. package/lib/typescript/src/components/native/deep/View.d.ts +2 -0
  268. package/lib/typescript/src/components/native/deep/View.d.ts.map +1 -0
  269. package/lib/typescript/src/components/native/deep/ViewNativeComponent.d.ts +3 -0
  270. package/lib/typescript/src/components/native/deep/ViewNativeComponent.d.ts.map +1 -0
  271. package/lib/typescript/src/components/native/deep/VirtualizedList.d.ts +2 -0
  272. package/lib/typescript/src/components/native/deep/VirtualizedList.d.ts.map +1 -0
  273. package/lib/typescript/src/components/native/index.d.ts +4 -0
  274. package/lib/typescript/src/components/native/index.d.ts.map +1 -0
  275. package/lib/typescript/src/components/scopeChildren.d.ts +1 -1
  276. package/lib/typescript/src/core/createUnistylesActivityIndicator.d.ts.map +1 -1
  277. package/lib/typescript/src/core/createUnistylesElement.native.d.ts.map +1 -1
  278. package/lib/typescript/src/core/createUnistylesImageBackground.d.ts.map +1 -1
  279. package/lib/typescript/src/core/createUnistylesTouchableHighlight.d.ts.map +1 -1
  280. package/lib/typescript/src/core/getClassname.d.ts.map +1 -1
  281. package/lib/typescript/src/core/hasUnistyles.d.ts +2 -0
  282. package/lib/typescript/src/core/hasUnistyles.d.ts.map +1 -0
  283. package/lib/typescript/src/core/withUnistyles/withUnistyles.d.ts +6 -3
  284. package/lib/typescript/src/core/withUnistyles/withUnistyles.d.ts.map +1 -1
  285. package/lib/typescript/src/core/withUnistyles/withUnistyles.native.d.ts +7 -4
  286. package/lib/typescript/src/core/withUnistyles/withUnistyles.native.d.ts.map +1 -1
  287. package/lib/typescript/src/specs/ShadowRegistry/index.d.ts.map +1 -1
  288. package/lib/typescript/src/specs/ShadowRegistry/styleSource.d.ts +11 -0
  289. package/lib/typescript/src/specs/ShadowRegistry/styleSource.d.ts.map +1 -0
  290. package/lib/typescript/src/specs/ShadowRegistry/tracing.d.ts +2 -0
  291. package/lib/typescript/src/specs/ShadowRegistry/tracing.d.ts.map +1 -0
  292. package/lib/typescript/src/specs/ShadowRegistry/types.d.ts +4 -41
  293. package/lib/typescript/src/specs/ShadowRegistry/types.d.ts.map +1 -1
  294. package/lib/typescript/src/unifiber/src/adapters/reanimated.d.ts +17 -0
  295. package/lib/typescript/src/unifiber/src/adapters/reanimated.d.ts.map +1 -0
  296. package/lib/typescript/src/unifiber/src/adapters/registry.d.ts +23 -0
  297. package/lib/typescript/src/unifiber/src/adapters/registry.d.ts.map +1 -0
  298. package/lib/typescript/src/unifiber/src/diagnostics.d.ts +10 -0
  299. package/lib/typescript/src/unifiber/src/diagnostics.d.ts.map +1 -0
  300. package/lib/typescript/src/unifiber/src/fiber.d.ts +48 -0
  301. package/lib/typescript/src/unifiber/src/fiber.d.ts.map +1 -0
  302. package/lib/typescript/src/unifiber/src/host.d.ts +32 -0
  303. package/lib/typescript/src/unifiber/src/host.d.ts.map +1 -0
  304. package/lib/typescript/src/unifiber/src/index.d.ts +49 -0
  305. package/lib/typescript/src/unifiber/src/index.d.ts.map +1 -0
  306. package/lib/typescript/src/utils.d.ts +1 -0
  307. package/lib/typescript/src/utils.d.ts.map +1 -1
  308. package/lib/typescript/src/web/convert/index.d.ts.map +1 -1
  309. package/lib/typescript/src/web/convert/object/backgroundLayers.d.ts +4 -0
  310. package/lib/typescript/src/web/convert/object/backgroundLayers.d.ts.map +1 -0
  311. package/lib/typescript/src/web/convert/object/fontVariationSettings.d.ts +4 -0
  312. package/lib/typescript/src/web/convert/object/fontVariationSettings.d.ts.map +1 -0
  313. package/lib/typescript/src/web/convert/object/index.d.ts +2 -0
  314. package/lib/typescript/src/web/convert/object/index.d.ts.map +1 -1
  315. package/lib/typescript/src/web/convert/utils.d.ts +2 -0
  316. package/lib/typescript/src/web/convert/utils.d.ts.map +1 -1
  317. package/lib/typescript/src/web/registry.d.ts.map +1 -1
  318. package/lib/typescript/src/web/runtime.d.ts +1 -0
  319. package/lib/typescript/src/web/runtime.d.ts.map +1 -1
  320. package/lib/typescript/src/web/utils/unistyle.d.ts.map +1 -1
  321. package/metro/babel-transformer.js +1102 -0
  322. package/metro/index.d.ts +31 -0
  323. package/metro/index.js +170 -0
  324. package/package.json +50 -32
  325. package/plugin/index.d.ts +7 -0
  326. package/plugin/index.js +115 -33
  327. package/src/components/NamedTheme.tsx +5 -5
  328. package/src/components/ScopedThemeContext.ts +6 -2
  329. package/src/components/native/deep/ActivityIndicator.ts +2 -0
  330. package/src/components/native/deep/Animated.ts +2 -0
  331. package/src/components/native/deep/FlatList.ts +2 -0
  332. package/src/components/native/deep/Image.ts +2 -0
  333. package/src/components/native/deep/ImageBackground.ts +2 -0
  334. package/src/components/native/deep/KeyboardAvoidingView.ts +2 -0
  335. package/src/components/native/deep/Pressable.ts +2 -0
  336. package/src/components/native/deep/RefreshControl.ts +2 -0
  337. package/src/components/native/deep/SafeAreaView.ts +2 -0
  338. package/src/components/native/deep/ScrollView.ts +2 -0
  339. package/src/components/native/deep/SectionList.ts +2 -0
  340. package/src/components/native/deep/Switch.ts +2 -0
  341. package/src/components/native/deep/Text.ts +2 -0
  342. package/src/components/native/deep/TextInput.ts +2 -0
  343. package/src/components/native/deep/TextNativeComponent.ts +5 -0
  344. package/src/components/native/deep/TouchableHighlight.ts +2 -0
  345. package/src/components/native/deep/TouchableOpacity.ts +2 -0
  346. package/src/components/native/deep/View.ts +2 -0
  347. package/src/components/native/deep/ViewNativeComponent.ts +5 -0
  348. package/src/components/native/deep/VirtualizedList.ts +2 -0
  349. package/src/components/native/index.ts +41 -0
  350. package/src/core/createUnistylesActivityIndicator.tsx +11 -4
  351. package/src/core/createUnistylesElement.native.tsx +5 -0
  352. package/src/core/createUnistylesImageBackground.tsx +33 -25
  353. package/src/core/createUnistylesTouchableHighlight.tsx +5 -0
  354. package/src/core/getClassname.ts +10 -1
  355. package/src/core/hasUnistyles.ts +20 -0
  356. package/src/core/withUnistyles/withUnistyles.native.tsx +28 -6
  357. package/src/core/withUnistyles/withUnistyles.tsx +6 -6
  358. package/src/mocks.ts +14 -5
  359. package/src/specs/ShadowRegistry/index.ts +62 -103
  360. package/src/specs/ShadowRegistry/styleSource.ts +78 -0
  361. package/src/specs/ShadowRegistry/tracing.ts +23 -0
  362. package/src/specs/ShadowRegistry/types.ts +3 -43
  363. package/src/unifiber/LICENSE +21 -0
  364. package/src/unifiber/README.md +92 -0
  365. package/src/unifiber/src/adapters/reanimated.ts +204 -0
  366. package/src/unifiber/src/adapters/registry.ts +102 -0
  367. package/src/unifiber/src/diagnostics.ts +55 -0
  368. package/src/unifiber/src/fiber.ts +262 -0
  369. package/src/unifiber/src/host.ts +236 -0
  370. package/src/unifiber/src/index.ts +43 -0
  371. package/src/utils.ts +51 -0
  372. package/src/web/convert/index.ts +39 -3
  373. package/src/web/convert/object/backgroundLayers.ts +33 -0
  374. package/src/web/convert/object/fontVariationSettings.ts +7 -0
  375. package/src/web/convert/object/index.ts +2 -0
  376. package/src/web/convert/utils.ts +11 -0
  377. package/src/web/registry.ts +7 -8
  378. package/src/web/runtime.ts +7 -7
  379. package/src/web/utils/unistyle.ts +11 -4
  380. package/lib/commonjs/web/convert/module.d.js +0 -2
  381. package/lib/commonjs/web/convert/module.d.js.map +0 -1
  382. package/lib/module/web/convert/module.d.js +0 -2
  383. package/lib/module/web/convert/module.d.js.map +0 -1
  384. package/lib/typescript/src/__tests__/mocks.spec.d.ts +0 -2
  385. package/lib/typescript/src/__tests__/mocks.spec.d.ts.map +0 -1
  386. package/lib/typescript/src/__tests__/passForwardRef.spec.d.ts +0 -2
  387. package/lib/typescript/src/__tests__/passForwardRef.spec.d.ts.map +0 -1
  388. package/lib/typescript/src/__tests__/scoped-theme.spec.d.ts +0 -2
  389. package/lib/typescript/src/__tests__/scoped-theme.spec.d.ts.map +0 -1
  390. package/lib/typescript/src/__tests__/shadow-registry.spec.d.ts +0 -2
  391. package/lib/typescript/src/__tests__/shadow-registry.spec.d.ts.map +0 -1
  392. package/lib/typescript/src/__tests__/web-child-selector.spec.d.ts +0 -2
  393. package/lib/typescript/src/__tests__/web-child-selector.spec.d.ts.map +0 -1
  394. package/lib/typescript/src/__tests__/web-listener.spec.d.ts +0 -2
  395. package/lib/typescript/src/__tests__/web-listener.spec.d.ts.map +0 -1
  396. package/lib/typescript/src/__tests__/web-pointer-events.spec.d.ts +0 -2
  397. package/lib/typescript/src/__tests__/web-pointer-events.spec.d.ts.map +0 -1
  398. package/lib/typescript/src/__tests__/web-runtime.spec.d.ts +0 -2
  399. package/lib/typescript/src/__tests__/web-runtime.spec.d.ts.map +0 -1
  400. package/lib/typescript/src/__tests__/withUnistyles.spec.d.ts +0 -2
  401. package/lib/typescript/src/__tests__/withUnistyles.spec.d.ts.map +0 -1
@@ -1,4 +1,5 @@
1
1
  #include "HybridShadowRegistry.h"
2
+ #include "PerformanceTracing.h"
2
3
 
3
4
  using namespace margelo::nitro::unistyles;
4
5
  using namespace facebook::react;
@@ -182,6 +183,8 @@ void HybridShadowRegistry::scheduleShadowTreeUpdate(jsi::Runtime& rt) {
182
183
  return jsi::Value::undefined();
183
184
  }
184
185
 
186
+ UNISTYLES_TRACE_SECTION("updateShadowTree");
187
+
185
188
  shadow::ShadowTreeManager::updateShadowTree(rt);
186
189
 
187
190
  return jsi::Value::undefined();
@@ -225,6 +228,8 @@ jsi::Value HybridShadowRegistry::flush(jsi::Runtime &rt, const jsi::Value &thisV
225
228
  return jsi::Value::undefined();
226
229
  }
227
230
 
231
+ UNISTYLES_TRACE_SECTION("flush");
232
+
228
233
  shadow::ShadowTreeManager::updateShadowTree(rt);
229
234
 
230
235
  return jsi::Value::undefined();
@@ -265,6 +270,11 @@ jsi::Value HybridShadowRegistry::verify(jsi::Runtime &rt, const jsi::Value &this
265
270
 
266
271
  // the fibers React created the committed nodes with (weak, null once collected)
267
272
  jsi::Value HybridShadowRegistry::takeCommittedInstanceHandles(jsi::Runtime &rt, const jsi::Value &thisValue, const jsi::Value *args, size_t count) {
273
+ // runtime was replaced, the handles belong to the next one
274
+ if (!this->_unistylesRuntime->ownsRegistry()) {
275
+ return jsi::Array(rt, 0);
276
+ }
277
+
268
278
  auto instanceHandles = core::UnistylesRegistry::get().takeCommittedInstanceHandles();
269
279
  auto result = jsi::Array(rt, instanceHandles.size());
270
280
 
@@ -281,6 +291,9 @@ jsi::Value HybridShadowRegistry::refreshReactNodes(jsi::Runtime &rt, const jsi::
281
291
  helpers::assertThat(rt, count == 1 && args[0].isObject(), "Unistyles: refreshReactNodes expected to be called with an array of shadow nodes.");
282
292
 
283
293
  auto nodes = args[0].asObject(rt).asArray(rt);
294
+
295
+ UNISTYLES_TRACE_SECTION("refreshReactNodes", "nodes", static_cast<int64_t>(nodes.size(rt)));
296
+
284
297
  std::unordered_map<SurfaceId, std::shared_ptr<const RootShadowNode>> roots;
285
298
 
286
299
  UIManagerBinding::getBinding(rt)->getUIManager().getShadowTreeRegistry().enumerate([&roots](const ShadowTree& shadowTree, bool&) {
@@ -18,6 +18,8 @@ jsi::Value HybridStyleSheet::create(jsi::Runtime& rt, const jsi::Value &thisVal,
18
18
  helpers::assertThat(rt, arguments[0].isObject(), "StyleSheet.create expected to be called with object or function.");
19
19
  helpers::assertThat(rt, this->_unistylesRuntime->ownsRegistry(), helpers::RUNTIME_REPLACED_ERROR);
20
20
 
21
+ UNISTYLES_TRACE_SECTION("createStyleSheet");
22
+
21
23
  auto thisStyleSheet = thisVal.asObject(rt);
22
24
  auto& registry = core::UnistylesRegistry::get();
23
25
 
@@ -345,6 +347,8 @@ void HybridStyleSheet::onImeChange(UnistylesNativeMiniRuntime miniRuntime) {
345
347
  }
346
348
 
347
349
  void HybridStyleSheet::applyDependencyChanges(jsi::Runtime& rt, std::vector<UnistyleDependency>& dependencies, std::optional<UnistylesNativeMiniRuntime> maybeMiniRuntime) {
350
+ UNISTYLES_TRACE_SECTION("applyDependencyChanges", "dependencies", helpers::dependenciesToString(dependencies));
351
+
348
352
  auto& registry = core::UnistylesRegistry::get();
349
353
  auto parser = parser::Parser(this->_unistylesRuntime);
350
354
  auto dependencyMap = registry.buildDependencyMap(dependencies);
@@ -355,10 +359,14 @@ void HybridStyleSheet::applyDependencyChanges(jsi::Runtime& rt, std::vector<Unis
355
359
 
356
360
  // rebuild rawValue BEFORE notifying listeners so JS rerenders read fresh closures
357
361
  if (!dependencyMap.empty() || !dependentStyleSheets.empty()) {
362
+ UNISTYLES_TRACE_SECTION("rebuildUnistyles");
363
+
358
364
  parser.rebuildUnistylesInDependencyMap(rt, dependencyMap, dependentStyleSheets, maybeMiniRuntime);
359
365
  }
360
366
 
361
367
  if (!dependencyMap.empty()) {
368
+ UNISTYLES_TRACE_SECTION("rebuildShadowLeafUpdates");
369
+
362
370
  parser.rebuildShadowLeafUpdates(rt, dependencyMap);
363
371
  }
364
372
 
@@ -370,6 +378,9 @@ void HybridStyleSheet::applyDependencyChanges(jsi::Runtime& rt, std::vector<Unis
370
378
 
371
379
  // after the commit, so listeners can point React at the committed nodes
372
380
  registry.setCommittedInstanceHandles(std::move(committedInstanceHandles));
381
+
382
+ UNISTYLES_TRACE_SECTION("notifyListeners");
383
+
373
384
  // also when no StyleSheet depends on the change, hooks (useUnistyles, withUnistyles, Display, Hide) may
374
385
  this->notifyJSListeners(dependencies);
375
386
  }
@@ -9,6 +9,7 @@
9
9
  #include "HybridUnistylesStyleSheetSpec.hpp"
10
10
  #include "RNStyle.h"
11
11
  #include "Helpers.h"
12
+ #include "PerformanceTracing.h"
12
13
  #include "UnistylesConstants.h"
13
14
  #include "Breakpoints.h"
14
15
  #include "Parser.h"
@@ -30,14 +30,8 @@ Dimensions HybridUnistylesRuntime::getScreen() {
30
30
  return this->_nativePlatform->getScreenDimensions();
31
31
  };
32
32
 
33
+ // app theme, like getTheme(). ScopedTheme is read from React Context (useUnistyles) (#1295)
33
34
  std::optional<std::string> HybridUnistylesRuntime::getThemeName() {
34
- auto& registry = core::UnistylesRegistry::get();
35
- auto maybeScopedTheme = registry.getScopedTheme();
36
-
37
- if (maybeScopedTheme.has_value()) {
38
- return maybeScopedTheme.value();
39
- }
40
-
41
35
  return this->getState().getCurrentThemeName();
42
36
  };
43
37
 
@@ -215,29 +209,13 @@ jsi::Value HybridUnistylesRuntime::createHybridNavigationBar(jsi::Runtime &rt, c
215
209
 
216
210
  UnistylesCxxMiniRuntime HybridUnistylesRuntime::getMiniRuntime() {
217
211
  UnistylesNativeMiniRuntime nativeMiniRuntime = this->_nativePlatform->getMiniRuntime();
218
- UnistylesCxxMiniRuntime cxxMiniRuntime{
219
- this->getThemeName(),
220
- this->getBreakpoint(),
221
- this->getHasAdaptiveThemes(),
222
- nativeMiniRuntime.colorScheme,
223
- nativeMiniRuntime.screen,
224
- nativeMiniRuntime.contentSizeCategory,
225
- nativeMiniRuntime.insets,
226
- nativeMiniRuntime.pixelRatio,
227
- nativeMiniRuntime.fontScale,
228
- nativeMiniRuntime.rtl,
229
- nativeMiniRuntime.statusBar,
230
- nativeMiniRuntime.navigationBar,
231
- nativeMiniRuntime.isPortrait,
232
- nativeMiniRuntime.isLandscape
233
- };
234
212
 
235
- return cxxMiniRuntime;
213
+ return this->buildMiniRuntimeFromNativeRuntime(nativeMiniRuntime, this->getThemeName());
236
214
  }
237
215
 
238
- UnistylesCxxMiniRuntime HybridUnistylesRuntime::buildMiniRuntimeFromNativeRuntime(UnistylesNativeMiniRuntime& nativeMiniRuntime) {
216
+ UnistylesCxxMiniRuntime HybridUnistylesRuntime::buildMiniRuntimeFromNativeRuntime(UnistylesNativeMiniRuntime& nativeMiniRuntime, std::optional<std::string> themeName) {
239
217
  UnistylesCxxMiniRuntime cxxMiniRuntime{
240
- this->getThemeName(),
218
+ themeName,
241
219
  this->getBreakpoint(),
242
220
  this->getHasAdaptiveThemes(),
243
221
  nativeMiniRuntime.colorScheme,
@@ -256,11 +234,13 @@ UnistylesCxxMiniRuntime HybridUnistylesRuntime::buildMiniRuntimeFromNativeRuntim
256
234
  return cxxMiniRuntime;
257
235
  }
258
236
 
259
- jsi::Value HybridUnistylesRuntime::getMiniRuntimeAsValue(jsi::Runtime& rt, std::optional<UnistylesNativeMiniRuntime> maybeMiniRuntime) {
237
+ // themeName is passed by the caller, so it matches the theme the StyleSheet is called with
238
+ jsi::Value HybridUnistylesRuntime::getMiniRuntimeAsValue(jsi::Runtime& rt, std::optional<UnistylesNativeMiniRuntime> maybeMiniRuntime, std::optional<std::string> themeName) {
260
239
  jsi::Object obj(rt);
261
- auto miniRuntime = maybeMiniRuntime.has_value()
262
- ? this->buildMiniRuntimeFromNativeRuntime(maybeMiniRuntime.value())
263
- : this->getMiniRuntime();
240
+ auto nativeMiniRuntime = maybeMiniRuntime.has_value()
241
+ ? maybeMiniRuntime.value()
242
+ : this->_nativePlatform->getMiniRuntime();
243
+ auto miniRuntime = this->buildMiniRuntimeFromNativeRuntime(nativeMiniRuntime, std::move(themeName));
264
244
 
265
245
  // auto generated by nitro, but can't be accessed due to static inline function
266
246
  obj.setProperty(rt, "themeName", JSIConverter<std::optional<std::string>>::toJSI(rt, miniRuntime.themeName));
@@ -71,8 +71,8 @@ struct HybridUnistylesRuntime: public HybridUnistylesRuntimeSpec {
71
71
 
72
72
  core::UnistylesState& getState();
73
73
  bool ownsRegistry() const;
74
- UnistylesCxxMiniRuntime buildMiniRuntimeFromNativeRuntime(UnistylesNativeMiniRuntime& nativeMiniRuntime);
75
- jsi::Value getMiniRuntimeAsValue(jsi::Runtime& rt, std::optional<UnistylesNativeMiniRuntime> maybeMiniRuntime);
74
+ UnistylesCxxMiniRuntime buildMiniRuntimeFromNativeRuntime(UnistylesNativeMiniRuntime& nativeMiniRuntime, std::optional<std::string> themeName);
75
+ jsi::Value getMiniRuntimeAsValue(jsi::Runtime& rt, std::optional<UnistylesNativeMiniRuntime> maybeMiniRuntime, std::optional<std::string> themeName);
76
76
  void includeDependenciesForColorSchemeChange(std::vector<UnistyleDependency>& deps);
77
77
  void calculateNewThemeAndDependencies(std::vector<UnistyleDependency>& deps);
78
78
  std::function<void(std::function<void(jsi::Runtime&)>&&)> runOnJSThread;
@@ -1,6 +1,8 @@
1
1
  #include "Parser.h"
2
2
  #include "UnistyleWrapper.h"
3
3
  #include "BackgroundImageConverter.h"
4
+ #include "BackgroundLayerConverter.h"
5
+ #include "FontVariationSettingsConverter.h"
4
6
  #include "TransformOriginConverter.h"
5
7
  #include <iomanip>
6
8
  #include <sstream>
@@ -113,7 +115,7 @@ jsi::Value parser::Parser::getParsedStyleSheetForScopedTheme(jsi::Runtime& rt, c
113
115
  .asObject(rt);
114
116
  }
115
117
 
116
- auto miniRuntime = this->_unistylesRuntime->getMiniRuntimeAsValue(rt, std::nullopt);
118
+ auto miniRuntime = this->_unistylesRuntime->getMiniRuntimeAsValue(rt, std::nullopt, scopedTheme);
117
119
 
118
120
  return unistyle->parent->rawValue
119
121
  .asFunction(rt)
@@ -198,7 +200,7 @@ jsi::Object parser::Parser::unwrapStyleSheet(jsi::Runtime& rt, std::shared_ptr<S
198
200
 
199
201
  // stylesheet also has a mini runtime dependency
200
202
  // StyleSheetType::ThemableWithMiniRuntime
201
- auto miniRuntime = this->_unistylesRuntime->getMiniRuntimeAsValue(rt, maybeMiniRuntime);
203
+ auto miniRuntime = this->_unistylesRuntime->getMiniRuntimeAsValue(rt, maybeMiniRuntime, state.getCurrentThemeName());
202
204
 
203
205
  return styleSheet->rawValue
204
206
  .asFunction(rt)
@@ -563,9 +565,28 @@ jsi::Object parser::Parser::parseFirstLevel(jsi::Runtime& rt, Unistyle::Shared u
563
565
  return;
564
566
  }
565
567
 
568
+ // { wght: 700 } is the object syntax, not breakpoints
569
+ if (converters::isFontVariationSettingsPropName(propertyName) && converters::isFontVariationSettingsObject(rt, propertyValueObject)) {
570
+ parsedStyle.setProperty(rt, jsi::PropNameID::forUtf8(rt, propertyName), propertyValue);
571
+
572
+ return;
573
+ }
574
+
575
+ if (converters::isBackgroundLayerPropName(propertyName) && propertyValueObject.isArray(rt)) {
576
+ parsedStyle.setProperty(rt, jsi::PropNameID::forUtf8(rt, propertyName), propertyValue);
577
+
578
+ return;
579
+ }
580
+
566
581
  // 'mq' or 'breakpoints'
567
582
  auto valueFromBreakpoint = getValueFromBreakpoints(rt, unistyle, propertyValueObject);
568
583
 
584
+ if (converters::isBackgroundLayerPropName(propertyName) && valueFromBreakpoint.isObject() && valueFromBreakpoint.asObject(rt).isArray(rt)) {
585
+ parsedStyle.setProperty(rt, jsi::PropNameID::forUtf8(rt, propertyName), valueFromBreakpoint);
586
+
587
+ return;
588
+ }
589
+
569
590
  parsedStyle.setProperty(rt, jsi::PropNameID::forUtf8(rt, propertyName), this->parseSecondLevel(rt, unistyle, valueFromBreakpoint));
570
591
  });
571
592
 
@@ -1026,8 +1047,21 @@ jsi::Value parser::Parser::parseSecondLevel(jsi::Runtime &rt, Unistyle::Shared u
1026
1047
  return;
1027
1048
  }
1028
1049
 
1050
+ // { wght: 700 } is the object syntax, not breakpoints
1051
+ if (converters::isFontVariationSettingsPropName(propertyName) && converters::isFontVariationSettingsObject(rt, nestedObjectStyle)) {
1052
+ parsedStyle.setProperty(rt, propertyName.c_str(), propertyValue);
1053
+
1054
+ return;
1055
+ }
1056
+
1029
1057
  auto isArray = nestedObjectStyle.isArray(rt);
1030
1058
 
1059
+ if (converters::isBackgroundLayerPropName(propertyName) && isArray) {
1060
+ parsedStyle.setProperty(rt, propertyName.c_str(), propertyValue);
1061
+
1062
+ return;
1063
+ }
1064
+
1031
1065
  if (!isArray) {
1032
1066
  parsedStyle.setProperty(rt, propertyName.c_str(), this->getValueFromBreakpoints(rt, unistyle, nestedObjectStyle));
1033
1067
  }
@@ -1071,6 +1105,7 @@ jsi::Value parser::Parser::parseSecondLevel(jsi::Runtime &rt, Unistyle::Shared u
1071
1105
  folly::dynamic parser::Parser::parseStylesToShadowTreeStyles(jsi::Runtime& rt, const std::vector<std::shared_ptr<UnistyleData>>& unistyles) {
1072
1106
  jsi::Object convertedStyles(rt);
1073
1107
  auto& state = core::UnistylesRegistry::get().getState();
1108
+ std::unordered_set<std::string> skippedPropNames;
1074
1109
 
1075
1110
  for (const auto& unistyleData : unistyles) {
1076
1111
  if (!unistyleData->parsedStyle.has_value()) {
@@ -1080,8 +1115,22 @@ folly::dynamic parser::Parser::parseStylesToShadowTreeStyles(jsi::Runtime& rt, c
1080
1115
  helpers::enumerateJSIObject(
1081
1116
  rt,
1082
1117
  unistyleData->parsedStyle.value(),
1083
- [this, &rt, &state, &convertedStyles](const std::string& propertyName, jsi::Value& propertyValue) {
1118
+ [this, &rt, &state, &convertedStyles, &skippedPropNames](const std::string& propertyName, jsi::Value& propertyValue) {
1119
+ // a later style replaces a skipped value
1120
+ skippedPropNames.erase(propertyName);
1121
+
1084
1122
  if (converters::isBackgroundImagePropName(propertyName) && propertyValue.isString()) {
1123
+ // React Native parses the raw string natively and reads an array as the unprocessed syntax
1124
+ if (converters::canReactNativeParseBackgroundImageString()) {
1125
+ convertedStyles.setProperty(
1126
+ rt,
1127
+ propertyName.c_str(),
1128
+ propertyValue
1129
+ );
1130
+
1131
+ return;
1132
+ }
1133
+
1085
1134
  auto maybeBackgroundImage = converters::parseBackgroundImageString(propertyValue.asString(rt).utf8(rt));
1086
1135
 
1087
1136
  if (maybeBackgroundImage.has_value()) {
@@ -1094,15 +1143,45 @@ folly::dynamic parser::Parser::parseStylesToShadowTreeStyles(jsi::Runtime& rt, c
1094
1143
  return;
1095
1144
  }
1096
1145
 
1146
+ // without a converter (React Native < 0.83) a raw string reads as no background image,
1147
+ // so leave the prop to React, which processes it in JS
1148
+ skippedPropNames.insert(propertyName);
1149
+
1150
+ return;
1151
+ }
1152
+
1153
+ // React Native processes these strings in JS, its native props only read the processed arrays
1154
+ if (converters::isBackgroundLayerPropName(propertyName) && propertyValue.isString()) {
1097
1155
  convertedStyles.setProperty(
1098
1156
  rt,
1099
1157
  propertyName.c_str(),
1100
- propertyValue
1158
+ jsi::valueFromDynamic(rt, converters::parseBackgroundLayerString(propertyName, propertyValue.asString(rt).utf8(rt)))
1101
1159
  );
1102
1160
 
1103
1161
  return;
1104
1162
  }
1105
1163
 
1164
+ // React Native converts the object syntax in JS, its native props only read the string
1165
+ if (converters::isFontVariationSettingsPropName(propertyName) && propertyValue.isObject()) {
1166
+ auto fontVariationSettings = propertyValue.asObject(rt);
1167
+ auto maybeFontVariationSettings = converters::fontVariationSettingsToString(rt, fontVariationSettings);
1168
+
1169
+ if (maybeFontVariationSettings.has_value()) {
1170
+ convertedStyles.setProperty(
1171
+ rt,
1172
+ propertyName.c_str(),
1173
+ jsi::String::createFromUtf8(rt, maybeFontVariationSettings.value())
1174
+ );
1175
+
1176
+ return;
1177
+ }
1178
+
1179
+ // React throws for an invalid value, so leave the prop to React
1180
+ skippedPropNames.insert(propertyName);
1181
+
1182
+ return;
1183
+ }
1184
+
1106
1185
  if (converters::isTransformOriginPropName(propertyName) && propertyValue.isString()) {
1107
1186
  auto maybeTransformOrigin = converters::parseTransformOriginString(propertyValue.asString(rt).utf8(rt));
1108
1187
 
@@ -1273,7 +1352,15 @@ folly::dynamic parser::Parser::parseStylesToShadowTreeStyles(jsi::Runtime& rt, c
1273
1352
  );
1274
1353
  }
1275
1354
 
1276
- return jsi::dynamicFromValue(rt, jsi::Value(rt, convertedStyles));
1355
+ auto props = jsi::dynamicFromValue(rt, jsi::Value(rt, convertedStyles));
1356
+
1357
+ // a skipped value still wins over earlier styles in React,
1358
+ // so drop the prop instead of writing an earlier style's value
1359
+ for (const auto& propName : skippedPropNames) {
1360
+ props.erase(propName);
1361
+ }
1362
+
1363
+ return props;
1277
1364
  }
1278
1365
 
1279
1366
  // shadow tree updates skip the props an inline style sets last, React (or an animation) owns them
@@ -2,6 +2,7 @@
2
2
 
3
3
  #include <array>
4
4
  #include <cstdio>
5
+ #include <cxxreact/ReactNativeVersion.h>
5
6
  #include <folly/Conv.h>
6
7
  #include <react/renderer/components/image/ImageProps.h>
7
8
  // ParagraphProps is platform specific and not exposed by the Android prefab
@@ -13,6 +14,13 @@
13
14
  #endif
14
15
  #include <react/renderer/components/text/TextProps.h>
15
16
  #include <react/renderer/components/view/BaseViewProps.h>
17
+ // background size, position and repeat exist since React Native 0.83
18
+ #if __has_include(<react/renderer/graphics/BackgroundSize.h>)
19
+ #include <react/renderer/graphics/BackgroundPosition.h>
20
+ #include <react/renderer/graphics/BackgroundRepeat.h>
21
+ #include <react/renderer/graphics/BackgroundSize.h>
22
+ #define UNISTYLES_HAS_BACKGROUND_LAYER_PROPS 1
23
+ #endif
16
24
  #include <react/renderer/uimanager/UIManagerBinding.h>
17
25
  #include <string_view>
18
26
  #include "Parser.h"
@@ -74,6 +82,64 @@ std::string serialize(const std::optional<FontWeight>& fontWeight) {
74
82
  return fontWeight ? std::to_string(static_cast<int>(*fontWeight)) : "undefined";
75
83
  }
76
84
 
85
+ #if UNISTYLES_HAS_BACKGROUND_LAYER_PROPS
86
+ std::string serialize(const ValueUnit& valueUnit) {
87
+ switch (valueUnit.unit) {
88
+ case UnitType::Point:
89
+ return serialize(valueUnit.value) + "px";
90
+ case UnitType::Percent:
91
+ return serialize(valueUnit.value) + "%";
92
+ default:
93
+ return "undefined";
94
+ }
95
+ }
96
+
97
+ std::string serialize(const std::variant<std::monostate, ValueUnit>& value) {
98
+ return std::holds_alternative<ValueUnit>(value) ? serialize(std::get<ValueUnit>(value)) : "auto";
99
+ }
100
+
101
+ std::string serialize(const BackgroundSize& backgroundSize) {
102
+ if (std::holds_alternative<BackgroundSizeKeyword>(backgroundSize)) {
103
+ return std::get<BackgroundSizeKeyword>(backgroundSize) == BackgroundSizeKeyword::Cover ? "cover" : "contain";
104
+ }
105
+
106
+ const auto& size = std::get<BackgroundSizeLengthPercentage>(backgroundSize);
107
+
108
+ return serialize(size.x) + " " + serialize(size.y);
109
+ }
110
+
111
+ std::string serialize(const BackgroundPosition& backgroundPosition) {
112
+ std::string result;
113
+ auto append = [&result](const char* edge, const std::optional<ValueUnit>& value) {
114
+ if (value) {
115
+ result += (result.empty() ? "" : " ") + std::string(edge) + " " + serialize(*value);
116
+ }
117
+ };
118
+
119
+ append("top", backgroundPosition.top);
120
+ append("left", backgroundPosition.left);
121
+ append("right", backgroundPosition.right);
122
+ append("bottom", backgroundPosition.bottom);
123
+
124
+ return result;
125
+ }
126
+
127
+ std::string serialize(const BackgroundRepeat& backgroundRepeat) {
128
+ return std::to_string(static_cast<int>(backgroundRepeat.x)) + " " + std::to_string(static_cast<int>(backgroundRepeat.y));
129
+ }
130
+
131
+ template <typename T>
132
+ std::string serialize(const std::vector<T>& values) {
133
+ std::string result;
134
+
135
+ for (const auto& value : values) {
136
+ result += (result.empty() ? "" : ", ") + serialize(value);
137
+ }
138
+
139
+ return "[" + result + "]";
140
+ }
141
+ #endif
142
+
77
143
  RectangleEdges<SharedColor> borderColors(const BaseViewProps& props) {
78
144
  return props.borderColors.resolve(false, {});
79
145
  }
@@ -87,6 +153,11 @@ const VerifiedProps<BaseViewProps> viewProps{
87
153
  {"borderBottomColor", [](const BaseViewProps& props) { return serialize(borderColors(props).bottom); }},
88
154
  {"opacity", [](const BaseViewProps& props) { return serialize(props.opacity); }},
89
155
  {"shadowColor", [](const BaseViewProps& props) { return serialize(props.shadowColor); }},
156
+ #if UNISTYLES_HAS_BACKGROUND_LAYER_PROPS
157
+ {"backgroundSize", [](const BaseViewProps& props) { return serialize(props.backgroundSize); }},
158
+ {"backgroundPosition", [](const BaseViewProps& props) { return serialize(props.backgroundPosition); }},
159
+ {"backgroundRepeat", [](const BaseViewProps& props) { return serialize(props.backgroundRepeat); }},
160
+ #endif
90
161
  };
91
162
 
92
163
  const VerifiedProps<BaseTextProps> textProps{
@@ -95,6 +166,9 @@ const VerifiedProps<BaseTextProps> textProps{
95
166
  {"fontSize", [](const BaseTextProps& props) { return serialize(props.textAttributes.fontSize); }},
96
167
  {"fontWeight", [](const BaseTextProps& props) { return serialize(props.textAttributes.fontWeight); }},
97
168
  {"textDecorationColor", [](const BaseTextProps& props) { return serialize(props.textAttributes.textDecorationColor); }},
169
+ #if REACT_NATIVE_VERSION_MAJOR > 0 || REACT_NATIVE_VERSION_MINOR >= 88
170
+ {"fontVariationSettings", [](const BaseTextProps& props) { return props.textAttributes.fontVariationSettings.value_or("undefined"); }},
171
+ #endif
98
172
  };
99
173
 
100
174
  const VerifiedProps<ImageProps> imageProps{
@@ -1,4 +1,5 @@
1
1
  #include "ShadowTreeManager.h"
2
+ #include "PerformanceTracing.h"
2
3
 
3
4
  using namespace margelo::nitro::unistyles;
4
5
  using namespace facebook::react;
@@ -19,6 +20,8 @@ std::vector<InstanceHandle::Shared> shadow::ShadowTreeManager::updateShadowTree(
19
20
  return;
20
21
  }
21
22
 
23
+ UNISTYLES_TRACE_SECTION("commit", "nodes", static_cast<int64_t>(updates.size()));
24
+
22
25
  std::unordered_map<Tag, folly::dynamic> tagToProps;
23
26
 
24
27
  committedInstanceHandles.reserve(updates.size());
@@ -14,6 +14,7 @@ class NativeIOSPlatform: HybridNativePlatformSpec {
14
14
 
15
15
  var dependencyListeners: Array<CxxDependencyListener> = []
16
16
  var imeListeners: Array<CxxImeListener> = []
17
+ var interfaceStyle: UIUserInterfaceStyle?
17
18
 
18
19
  override init() {
19
20
  super.init()
@@ -52,17 +53,27 @@ class NativeIOSPlatform: HybridNativePlatformSpec {
52
53
  }
53
54
 
54
55
  func getColorScheme() -> ColorScheme {
55
- let interfaceStyle = UIScreen.main.traitCollection.userInterfaceStyle
56
-
57
- switch (interfaceStyle) {
58
- case .dark:
59
- return ColorScheme.dark
60
- case .light:
61
- return ColorScheme.light
62
- case .unspecified:
63
- return ColorScheme.unspecified
64
- default:
65
- return ColorScheme.unspecified
56
+ func getColorSchemeFn() -> ColorScheme {
57
+ let interfaceStyle = self.interfaceStyle ?? (RCTKeyWindow()?.traitCollection ?? UIScreen.main.traitCollection).userInterfaceStyle
58
+
59
+ switch (interfaceStyle) {
60
+ case .dark:
61
+ return ColorScheme.dark
62
+ case .light:
63
+ return ColorScheme.light
64
+ case .unspecified:
65
+ return ColorScheme.unspecified
66
+ default:
67
+ return ColorScheme.unspecified
68
+ }
69
+ }
70
+
71
+ if Thread.isMainThread {
72
+ return getColorSchemeFn()
73
+ }
74
+
75
+ return DispatchQueue.main.sync {
76
+ return getColorSchemeFn()
66
77
  }
67
78
  }
68
79
 
@@ -7,6 +7,15 @@ extension NativeIOSPlatform {
7
7
  let orientationPublisher = NotificationCenter.default.publisher(for: UIDevice.orientationDidChangeNotification)
8
8
  let colorSchemePublisher = NotificationCenter.default.publisher(for: NSNotification.Name("RCTUserInterfaceStyleDidChangeNotification"))
9
9
 
10
+ colorSchemePublisher
11
+ .sink { [weak self] notification in
12
+ if let traitCollection = notification.userInfo?["traitCollection"] as? UITraitCollection,
13
+ traitCollection.userInterfaceStyle != .unspecified {
14
+ self?.interfaceStyle = traitCollection.userInterfaceStyle
15
+ }
16
+ }
17
+ .store(in: &cancellables)
18
+
10
19
  Publishers
11
20
  .MergeMany([windowPublisher, orientationPublisher, colorSchemePublisher])
12
21
  .throttle(for: .milliseconds(25), scheduler: RunLoop.main, latest: true)
@@ -19,6 +19,10 @@ const NamedTheme = ({
19
19
  const scope = (0, _react.useMemo)(() => ({
20
20
  name
21
21
  }), [name]);
22
+ (0, _react.useLayoutEffect)(() => {
23
+ // this will affect only scoped styles as other styles are not yet mounted
24
+ _specs.UnistylesShadowRegistry.flush();
25
+ });
22
26
  const mappedChildren = [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ApplyScopedTheme.ApplyScopedTheme, {
23
27
  name: name
24
28
  }, "apply"), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ScopedThemeContext.ScopedThemeContext.Provider, {
@@ -27,10 +31,6 @@ const NamedTheme = ({
27
31
  }, "scope"), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ApplyScopedTheme.ApplyScopedTheme, {
28
32
  name: previousScopedTheme
29
33
  }, "dispose")];
30
- (0, _react.useLayoutEffect)(() => {
31
- // this will affect only scoped styles as other styles are not yet mounted
32
- _specs.UnistylesShadowRegistry.flush();
33
- });
34
34
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.default.Fragment, {
35
35
  children: mappedChildren
36
36
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_specs","_ApplyScopedTheme","_scopeChildren","_ScopedThemeContext","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","NamedTheme","name","children","previousScopedTheme","scope","useMemo","mappedChildren","jsx","ApplyScopedTheme","ScopedThemeContext","Provider","value","scopeChildren","useLayoutEffect","UnistylesShadowRegistry","flush","Fragment","exports"],"sourceRoot":"../../../src","sources":["components/NamedTheme.tsx"],"mappings":";;;;;;AAEA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAIA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,mBAAA,GAAAJ,OAAA;AAAyD,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAD,wBAAAO,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAT,uBAAA,YAAAA,CAAAO,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAOlD,MAAMkB,UAAoD,GAAGA,CAAC;EAAEC,IAAI;EAAEC,QAAQ;EAAEC;AAAoB,CAAC,KAAK;EAC7G,MAAMC,KAAK,GAAG,IAAAC,cAAO,EAAC,OAAO;IAAEJ;EAAK,CAAC,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAE/C,MAAMK,cAAc,GAAG,cACnB,IAAA1B,WAAA,CAAA2B,GAAA,EAAC9B,iBAAA,CAAA+B,gBAAgB;IAAaP,IAAI,EAAEA;EAAK,GAAnB,OAAqB,CAAC,eAC5C,IAAArB,WAAA,CAAA2B,GAAA,EAAC5B,mBAAA,CAAA8B,kBAAkB,CAACC,QAAQ;IAAaC,KAAK,EAAEP,KAAM;IAAAF,QAAA,EACjD,IAAAU,4BAAa,EAACX,IAAI,EAAEC,QAAQ;EAAC,GADD,OAEJ,CAAC,eAC9B,IAAAtB,WAAA,CAAA2B,GAAA,EAAC9B,iBAAA,CAAA+B,gBAAgB;IAAeP,IAAI,EAAEE;EAAyD,GAAzE,SAA2E,CAAC,CACrG;EAED,IAAAU,sBAAe,EAAC,MAAM;IAClB;IACAC,8BAAuB,CAACC,KAAK,CAAC,CAAC;EACnC,CAAC,CAAC;EAEF,oBAAO,IAAAnC,WAAA,CAAA2B,GAAA,EAAClC,MAAA,CAAAkB,OAAK,CAACyB,QAAQ;IAAAd,QAAA,EAAEI;EAAc,CAAiB,CAAC;AAC5D,CAAC;AAAAW,OAAA,CAAAjB,UAAA,GAAAA,UAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_specs","_ApplyScopedTheme","_scopeChildren","_ScopedThemeContext","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","NamedTheme","name","children","previousScopedTheme","scope","useMemo","useLayoutEffect","UnistylesShadowRegistry","flush","mappedChildren","jsx","ApplyScopedTheme","ScopedThemeContext","Provider","value","scopeChildren","Fragment","exports"],"sourceRoot":"../../../src","sources":["components/NamedTheme.tsx"],"mappings":";;;;;;AAEA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAIA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,mBAAA,GAAAJ,OAAA;AAAyD,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAD,wBAAAO,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAT,uBAAA,YAAAA,CAAAO,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAOlD,MAAMkB,UAAoD,GAAGA,CAAC;EAAEC,IAAI;EAAEC,QAAQ;EAAEC;AAAoB,CAAC,KAAK;EAC7G,MAAMC,KAAK,GAAG,IAAAC,cAAO,EAAC,OAAO;IAAEJ;EAAK,CAAC,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAE/C,IAAAK,sBAAe,EAAC,MAAM;IAClB;IACAC,8BAAuB,CAACC,KAAK,CAAC,CAAC;EACnC,CAAC,CAAC;EAEF,MAAMC,cAAc,GAAG,cACnB,IAAA7B,WAAA,CAAA8B,GAAA,EAACjC,iBAAA,CAAAkC,gBAAgB;IAAaV,IAAI,EAAEA;EAAK,GAAnB,OAAqB,CAAC,eAC5C,IAAArB,WAAA,CAAA8B,GAAA,EAAC/B,mBAAA,CAAAiC,kBAAkB,CAACC,QAAQ;IAAaC,KAAK,EAAEV,KAAM;IAAAF,QAAA,EACjD,IAAAa,4BAAa,EAACd,IAAI,EAAEC,QAAQ;EAAC,GADD,OAEJ,CAAC,eAC9B,IAAAtB,WAAA,CAAA8B,GAAA,EAACjC,iBAAA,CAAAkC,gBAAgB;IAAeV,IAAI,EAAEE;EAAyD,GAAzE,SAA2E,CAAC,CACrG;EAED,oBAAO,IAAAvB,WAAA,CAAA8B,GAAA,EAACrC,MAAA,CAAAkB,OAAK,CAACyB,QAAQ;IAAAd,QAAA,EAAEO;EAAc,CAAiB,CAAC;AAC5D,CAAC;AAAAQ,OAAA,CAAAjB,UAAA,GAAAA,UAAA","ignoreList":[]}
@@ -5,5 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.ScopedThemeContext = void 0;
7
7
  var _react = require("react");
8
- const ScopedThemeContext = exports.ScopedThemeContext = /*#__PURE__*/(0, _react.createContext)(null);
8
+ // React Server Components load a React build without createContext (or useContext). The Next.js App Router
9
+ // setup imports Unistyles from the root layout, a server component, and nothing can read this context there.
10
+ const ScopedThemeContext = exports.ScopedThemeContext = typeof _react.createContext === 'function' ? /*#__PURE__*/(0, _react.createContext)(null) : null;
9
11
  //# sourceMappingURL=ScopedThemeContext.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","ScopedThemeContext","exports","createContext"],"sourceRoot":"../../../src","sources":["components/ScopedThemeContext.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAQO,MAAMC,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,gBAAG,IAAAE,oBAAa,EAAe,IAAI,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","ScopedThemeContext","exports","createContext"],"sourceRoot":"../../../src","sources":["components/ScopedThemeContext.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAQA;AACA;AACO,MAAMC,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,GAC3B,OAAOE,oBAAa,KAAK,UAAU,gBAAG,IAAAA,oBAAa,EAAe,IAAI,CAAC,GAAG,IACpD","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "ActivityIndicator", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _ActivityIndicator.ActivityIndicator;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "default", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _ActivityIndicator.ActivityIndicator;
16
+ }
17
+ });
18
+ var _ActivityIndicator = require("../ActivityIndicator");
19
+ //# sourceMappingURL=ActivityIndicator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_ActivityIndicator","require"],"sourceRoot":"../../../../../src","sources":["components/native/deep/ActivityIndicator.ts"],"mappings":";;;;;;;;;;;;;;;;;AACA,IAAAA,kBAAA,GAAAC,OAAA","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "Animated", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _Animated.Animated;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "default", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _Animated.Animated;
16
+ }
17
+ });
18
+ var _Animated = require("../Animated");
19
+ //# sourceMappingURL=Animated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_Animated","require"],"sourceRoot":"../../../../../src","sources":["components/native/deep/Animated.ts"],"mappings":";;;;;;;;;;;;;;;;;AACA,IAAAA,SAAA,GAAAC,OAAA","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "FlatList", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _FlatList.FlatList;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "default", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _FlatList.FlatList;
16
+ }
17
+ });
18
+ var _FlatList = require("../FlatList");
19
+ //# sourceMappingURL=FlatList.js.map