react-native-windows 0.76.2 → 0.77.0-preview.1

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 (459) hide show
  1. package/.flowconfig +5 -1
  2. package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +1 -0
  3. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +13 -0
  4. package/Libraries/Animated/AnimatedEvent.js +1 -1
  5. package/Libraries/Animated/AnimatedImplementation.js +2 -2
  6. package/Libraries/Animated/NativeAnimatedAllowlist.js +20 -9
  7. package/Libraries/Animated/NativeAnimatedAllowlist.windows.js +122 -0
  8. package/Libraries/Animated/animations/Animation.js +60 -25
  9. package/Libraries/Animated/animations/DecayAnimation.js +26 -38
  10. package/Libraries/Animated/animations/SpringAnimation.js +33 -39
  11. package/Libraries/Animated/animations/TimingAnimation.js +34 -42
  12. package/Libraries/Animated/components/AnimatedFlatList.js +1 -1
  13. package/Libraries/Animated/components/AnimatedSectionList.js +3 -1
  14. package/Libraries/Animated/createAnimatedComponent.js +60 -33
  15. package/Libraries/Animated/nodes/AnimatedColor.js +1 -1
  16. package/Libraries/Animated/nodes/AnimatedInterpolation.js +1 -1
  17. package/Libraries/Animated/nodes/AnimatedNode.js +39 -45
  18. package/Libraries/Animated/nodes/AnimatedObject.js +13 -3
  19. package/Libraries/Animated/nodes/AnimatedProps.js +96 -46
  20. package/Libraries/Animated/nodes/AnimatedProps.windows.js +281 -0
  21. package/Libraries/Animated/nodes/AnimatedStyle.js +108 -39
  22. package/Libraries/Animated/nodes/AnimatedStyle.windows.js +251 -0
  23. package/Libraries/Animated/nodes/AnimatedTransform.js +56 -23
  24. package/Libraries/Animated/nodes/AnimatedValue.js +1 -1
  25. package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -3
  26. package/Libraries/Animated/useAnimatedProps.js +41 -35
  27. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +19 -3
  28. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +77 -5
  29. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.windows.js +82 -5
  30. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +4 -4
  31. package/Libraries/Components/Button.js +9 -4
  32. package/Libraries/Components/Button.windows.js +19 -5
  33. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +3 -1
  34. package/Libraries/Components/Glyph/Glyph.js +2 -1
  35. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +7 -0
  36. package/Libraries/Components/Popup/PopupNativeComponent.js +0 -1
  37. package/Libraries/Components/Pressable/Pressable.js +4 -4
  38. package/Libraries/Components/Pressable/Pressable.windows.js +10 -4
  39. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +13 -7
  40. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +3 -2
  41. package/Libraries/Components/SafeAreaView/SafeAreaView.js +4 -4
  42. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +0 -1
  43. package/Libraries/Components/ScrollView/ScrollView.js +49 -88
  44. package/Libraries/Components/ScrollView/ScrollViewCommands.js +1 -1
  45. package/Libraries/Components/ScrollView/ScrollViewContext.js +2 -0
  46. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +0 -2
  47. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.windows.js +0 -5
  48. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +8 -9
  49. package/Libraries/Components/Switch/Switch.js +8 -6
  50. package/Libraries/Components/Switch/Switch.windows.js +8 -6
  51. package/Libraries/Components/TextInput/InputAccessoryView.js +1 -1
  52. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +4 -4
  53. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +6 -4
  54. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +2 -1
  55. package/Libraries/Components/TextInput/TextInput.d.ts +27 -4
  56. package/Libraries/Components/TextInput/TextInput.flow.js +36 -19
  57. package/Libraries/Components/TextInput/TextInput.js +37 -13
  58. package/Libraries/Components/TextInput/TextInput.windows.js +47 -16
  59. package/Libraries/Components/TextInput/TextInputState.js +11 -13
  60. package/Libraries/Components/TextInput/TextInputState.windows.js +11 -13
  61. package/Libraries/Components/Touchable/BoundingDimensions.js +11 -3
  62. package/Libraries/Components/Touchable/Position.js +7 -2
  63. package/Libraries/Components/Touchable/Touchable.js +4 -0
  64. package/Libraries/Components/Touchable/Touchable.windows.js +4 -0
  65. package/Libraries/Components/Touchable/TouchableBounce.js +6 -2
  66. package/Libraries/Components/Touchable/TouchableBounce.windows.js +227 -0
  67. package/Libraries/Components/Touchable/TouchableHighlight.js +5 -5
  68. package/Libraries/Components/Touchable/TouchableHighlight.windows.js +5 -5
  69. package/Libraries/Components/Touchable/TouchableNativeFeedback.windows.js +371 -0
  70. package/Libraries/Components/Touchable/TouchableOpacity.js +6 -5
  71. package/Libraries/Components/Touchable/TouchableOpacity.windows.js +11 -5
  72. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +1 -2
  73. package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +9 -3
  74. package/Libraries/Components/View/ReactNativeStyleAttributes.js +6 -1
  75. package/Libraries/Components/View/View.js +4 -4
  76. package/Libraries/Components/View/View.windows.js +88 -57
  77. package/Libraries/Components/View/ViewAccessibility.d.ts +10 -0
  78. package/Libraries/Components/View/ViewAccessibility.windows.js +2 -0
  79. package/Libraries/Components/View/ViewNativeComponent.js +6 -98
  80. package/Libraries/Components/View/ViewPropTypes.d.ts +7 -0
  81. package/Libraries/Components/View/ViewPropTypes.js +0 -3
  82. package/Libraries/Components/View/ViewPropTypes.windows.js +2 -3
  83. package/Libraries/Core/ExceptionsManager.js +50 -29
  84. package/Libraries/Core/ReactNativeVersion.js +3 -3
  85. package/Libraries/Core/__mocks__/NativeExceptionsManager.js +0 -1
  86. package/Libraries/Core/setUpBatchedBridge.js +1 -10
  87. package/Libraries/Core/setUpDeveloperTools.js +1 -5
  88. package/Libraries/Core/setUpErrorHandling.js +20 -18
  89. package/Libraries/Core/setUpReactDevTools.js +107 -8
  90. package/Libraries/Core/setUpSegmentFetcher.js +1 -0
  91. package/Libraries/Core/setUpTimers.js +21 -18
  92. package/Libraries/Debugging/DebuggingOverlay.js +4 -5
  93. package/Libraries/Image/AssetSourceResolver.js +12 -1
  94. package/Libraries/Image/AssetSourceResolver.windows.js +12 -1
  95. package/Libraries/Image/Image.android.js +1 -5
  96. package/Libraries/Image/Image.d.ts +20 -29
  97. package/Libraries/Image/Image.ios.js +0 -2
  98. package/Libraries/Image/Image.windows.js +5 -1
  99. package/Libraries/Image/ImageBackground.js +2 -5
  100. package/Libraries/Image/ImageProps.js +7 -6
  101. package/Libraries/Image/ImageResizeMode.d.ts +8 -1
  102. package/Libraries/Image/ImageResizeMode.js +4 -1
  103. package/Libraries/Image/ImageSource.d.ts +0 -2
  104. package/Libraries/Image/ImageSource.js +0 -2
  105. package/Libraries/Image/ImageTypes.flow.js +11 -9
  106. package/Libraries/Image/ImageUtils.js +6 -3
  107. package/Libraries/Image/ImageViewNativeComponent.js +5 -3
  108. package/Libraries/Inspector/Inspector.js +1 -0
  109. package/Libraries/Inspector/NetworkOverlay.js +4 -0
  110. package/Libraries/Inspector/ReactDevToolsOverlay.js +8 -14
  111. package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +3 -5
  112. package/Libraries/Interaction/InteractionManager.js +6 -1
  113. package/Libraries/Interaction/InteractionManagerStub.js +176 -0
  114. package/Libraries/Interaction/TouchHistoryMath.js +22 -19
  115. package/Libraries/JSInspector/NetworkAgent.js +1 -1
  116. package/Libraries/Lists/FlatList.d.ts +1 -2
  117. package/Libraries/Lists/FlatList.js +2 -2
  118. package/Libraries/Lists/SectionListModern.js +7 -7
  119. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +2 -2
  120. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +1 -1
  121. package/Libraries/LogBox/Data/LogBoxData.js +3 -3
  122. package/Libraries/LogBox/LogBox.js +18 -5
  123. package/Libraries/LogBox/LogBoxInspectorContainer.js +1 -1
  124. package/Libraries/LogBox/LogBoxNotificationContainer.js +2 -2
  125. package/Libraries/LogBox/UI/AnsiHighlight.js +26 -17
  126. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +6 -1
  127. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.windows.js +6 -1
  128. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +1 -1
  129. package/Libraries/LogBox/UI/LogBoxInspectorHeader.windows.js +1 -1
  130. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +1 -1
  131. package/Libraries/LogBox/UI/LogBoxMessage.js +2 -2
  132. package/Libraries/Modal/Modal.d.ts +12 -0
  133. package/Libraries/Modal/Modal.js +31 -4
  134. package/Libraries/Modal/Modal.windows.js +370 -0
  135. package/Libraries/NativeComponent/BaseViewConfig.android.js +72 -1
  136. package/Libraries/NativeComponent/BaseViewConfig.ios.js +2 -1
  137. package/Libraries/NativeComponent/BaseViewConfig.windows.js +3 -11
  138. package/Libraries/NativeComponent/NativeComponentRegistry.js +3 -3
  139. package/Libraries/NativeComponent/StaticViewConfigValidator.js +0 -1
  140. package/Libraries/Network/XHRInterceptor.js +63 -14
  141. package/Libraries/Network/XMLHttpRequest.js +26 -1
  142. package/Libraries/NewAppScreen/components/HermesBadge.js +1 -1
  143. package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +49 -2
  144. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +4 -4
  145. package/Libraries/Pressability/HoverState.js +2 -0
  146. package/Libraries/Pressability/Pressability.js +2 -3
  147. package/Libraries/Pressability/Pressability.windows.js +2 -3
  148. package/Libraries/Pressability/usePressability.js +4 -1
  149. package/Libraries/ReactNative/AppContainer.js +1 -1
  150. package/Libraries/ReactNative/AppRegistry.js +1 -11
  151. package/Libraries/ReactNative/DisplayMode.js +1 -1
  152. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +2 -3
  153. package/Libraries/ReactNative/RendererImplementation.js +18 -17
  154. package/Libraries/ReactNative/getCachedComponentWithDebugName.js +1 -3
  155. package/Libraries/ReactNative/renderApplication.js +9 -8
  156. package/Libraries/ReactNative/requireNativeComponent.js +5 -2
  157. package/Libraries/Renderer/shims/ReactFabric.js +3 -3
  158. package/Libraries/Renderer/shims/ReactFeatureFlags.js +2 -2
  159. package/Libraries/Renderer/shims/ReactNative.js +3 -3
  160. package/Libraries/Renderer/shims/ReactNativeTypes.js +22 -35
  161. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +5 -6
  162. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -2
  163. package/Libraries/StyleSheet/StyleSheet.js +7 -1
  164. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +13 -2
  165. package/Libraries/StyleSheet/StyleSheetTypes.js +24 -6
  166. package/Libraries/StyleSheet/processBackgroundImage.js +87 -110
  167. package/Libraries/StyleSheet/processTransform.js +3 -34
  168. package/Libraries/Text/Text.js +248 -249
  169. package/Libraries/Text/Text.windows.js +298 -292
  170. package/Libraries/Text/TextNativeComponent.js +0 -1
  171. package/Libraries/Text/TextProps.windows.js +2 -0
  172. package/Libraries/TurboModule/TurboModuleRegistry.js +5 -5
  173. package/Libraries/Types/CoreEventTypes.d.ts +3 -10
  174. package/Libraries/Types/CoreEventTypes.js +4 -6
  175. package/Libraries/Types/CoreEventTypes.windows.js +4 -6
  176. package/Libraries/Utilities/Appearance.js +3 -1
  177. package/Libraries/Utilities/BackHandler.android.js +6 -18
  178. package/Libraries/Utilities/BackHandler.d.ts +0 -4
  179. package/Libraries/Utilities/BackHandler.ios.js +0 -7
  180. package/Libraries/Utilities/BackHandler.windows.js +6 -18
  181. package/Libraries/Utilities/HMRClient.js +3 -4
  182. package/Libraries/Utilities/Platform.flow.js +2 -2
  183. package/Libraries/Utilities/Platform.flow.windows.js +3 -2
  184. package/Libraries/Utilities/__mocks__/BackHandler.js +3 -8
  185. package/Libraries/Utilities/codegenNativeComponent.js +1 -1
  186. package/Libraries/Utilities/useMergeRefs.js +26 -7
  187. package/Libraries/WebSocket/WebSocketEvent.js +4 -1
  188. package/Libraries/WebSocket/WebSocketInterceptor.js +31 -13
  189. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +6 -5
  190. package/Libraries/promiseRejectionTrackingOptions.js +1 -1
  191. package/Microsoft.ReactNative/AsynchronousEventBeat.cpp +9 -8
  192. package/Microsoft.ReactNative/AsynchronousEventBeat.h +5 -5
  193. package/Microsoft.ReactNative/CompositionComponentView.idl +2 -1
  194. package/Microsoft.ReactNative/FBReactNativeSpec/FBReactNativeSpecJSI.h +5 -0
  195. package/Microsoft.ReactNative/Fabric/AbiComponentDescriptor.cpp +6 -3
  196. package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.cpp +1 -1
  197. package/Microsoft.ReactNative/Fabric/AbiViewProps.cpp +7 -0
  198. package/Microsoft.ReactNative/Fabric/AbiViewProps.h +2 -0
  199. package/Microsoft.ReactNative/Fabric/ComponentView.cpp +45 -50
  200. package/Microsoft.ReactNative/Fabric/ComponentView.h +14 -22
  201. package/Microsoft.ReactNative/Fabric/Composition/BorderPrimitive.cpp +943 -0
  202. package/Microsoft.ReactNative/Fabric/Composition/BorderPrimitive.h +80 -0
  203. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.cpp +223 -21
  204. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.h +19 -1
  205. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +187 -6
  206. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.h +10 -1
  207. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.cpp +8 -32
  208. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +349 -929
  209. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.h +32 -29
  210. package/Microsoft.ReactNative/Fabric/Composition/ContentIslandComponentView.cpp +9 -2
  211. package/Microsoft.ReactNative/Fabric/Composition/ContentIslandComponentView.h +2 -1
  212. package/Microsoft.ReactNative/Fabric/Composition/DebuggingOverlayComponentView.cpp +1 -1
  213. package/Microsoft.ReactNative/Fabric/Composition/Modal/WindowsModalHostViewComponentView.cpp +181 -123
  214. package/Microsoft.ReactNative/Fabric/Composition/Modal/WindowsModalHostViewComponentView.h +16 -8
  215. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.cpp +99 -37
  216. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.h +25 -3
  217. package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.cpp +64 -3
  218. package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.h +12 -0
  219. package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.cpp +51 -3
  220. package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.h +3 -0
  221. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.cpp +18 -8
  222. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.h +3 -0
  223. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentDescriptor.h +6 -8
  224. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +56 -7
  225. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.h +8 -0
  226. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.cpp +3 -2
  227. package/Microsoft.ReactNative/Fabric/Composition/Theme.cpp +9 -3
  228. package/Microsoft.ReactNative/Fabric/Composition/TooltipService.cpp +1 -1
  229. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.cpp +35 -0
  230. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.h +7 -0
  231. package/Microsoft.ReactNative/Fabric/Composition/UnimplementedNativeViewComponentView.cpp +1 -1
  232. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +12 -12
  233. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +4 -4
  234. package/Microsoft.ReactNative/Fabric/ImageRequest.cpp +4 -8
  235. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewProps.cpp +16 -15
  236. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +1 -5
  237. package/Microsoft.ReactNative/IReactCompositionViewComponentBuilder.idl +26 -0
  238. package/Microsoft.ReactNative/IReactViewComponentBuilder.idl +1 -1
  239. package/Microsoft.ReactNative/Modules/AccessibilityInfoModule.cpp +15 -0
  240. package/Microsoft.ReactNative/Modules/AccessibilityInfoModule.h +9 -0
  241. package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +20 -1
  242. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +11 -6
  243. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +1 -1
  244. package/Microsoft.ReactNative/ReactNativeIsland.idl +3 -2
  245. package/Microsoft.ReactNative/SynchronousEventBeat.cpp +14 -4
  246. package/Microsoft.ReactNative/SynchronousEventBeat.h +4 -2
  247. package/Microsoft.ReactNative/ViewProps.idl +2 -0
  248. package/Microsoft.ReactNative.Cxx/ApiLoaders/JSRuntimeApi.cpp +78 -0
  249. package/Microsoft.ReactNative.Cxx/ApiLoaders/JSRuntimeApi.h +51 -0
  250. package/Microsoft.ReactNative.Cxx/ApiLoaders/JSRuntimeApi.inc +48 -0
  251. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi.cpp +41 -0
  252. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi.h +127 -0
  253. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi.inc +125 -0
  254. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi_posix.cpp +16 -0
  255. package/Microsoft.ReactNative.Cxx/ApiLoaders/NodeApi_win.cpp +23 -0
  256. package/Microsoft.ReactNative.Cxx/ComponentView.Experimental.interop.h +14 -0
  257. package/Microsoft.ReactNative.Cxx/JSI/decorator.h +834 -0
  258. package/Microsoft.ReactNative.Cxx/JSI/instrumentation.h +117 -0
  259. package/Microsoft.ReactNative.Cxx/JSI/jsi-inl.h +366 -0
  260. package/Microsoft.ReactNative.Cxx/JSI/jsi.cpp +560 -0
  261. package/Microsoft.ReactNative.Cxx/JSI/jsi.h +1611 -0
  262. package/Microsoft.ReactNative.Cxx/JSI/threadsafe.h +79 -0
  263. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +7 -11
  264. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems.filters +1 -1
  265. package/Microsoft.ReactNative.Cxx/NodeApiJsiRuntime.cpp +2878 -0
  266. package/Microsoft.ReactNative.Cxx/NodeApiJsiRuntime.h +36 -0
  267. package/Microsoft.ReactNative.Cxx/ReactCommon/CallInvoker.h +64 -0
  268. package/Microsoft.ReactNative.Cxx/ReactCommon/SchedulerPriority.h +22 -0
  269. package/{ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core → Microsoft.ReactNative.Cxx}/ReactCommon/TurboModule.cpp +63 -63
  270. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModule.h +165 -0
  271. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModuleUtils.cpp +105 -0
  272. package/{ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core → Microsoft.ReactNative.Cxx}/ReactCommon/TurboModuleUtils.h +57 -58
  273. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/AString.h +42 -0
  274. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Array.h +151 -0
  275. package/{ReactCommon/TEMP_UntilReactCommonUpdate → Microsoft.ReactNative.Cxx/ReactCommon}/react/bridging/Base.h +177 -154
  276. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Bool.h +25 -0
  277. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Bridging.h +21 -0
  278. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/CallbackWrapper.h +67 -0
  279. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Class.h +90 -0
  280. package/{ReactCommon/TEMP_UntilReactCommonUpdate → Microsoft.ReactNative.Cxx/ReactCommon}/react/bridging/Convert.h +170 -172
  281. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Error.h +51 -0
  282. package/{ReactCommon/TEMP_UntilReactCommonUpdate → Microsoft.ReactNative.Cxx/ReactCommon}/react/bridging/EventEmitter.h +134 -136
  283. package/{ReactCommon/TEMP_UntilReactCommonUpdate → Microsoft.ReactNative.Cxx/ReactCommon}/react/bridging/Function.h +283 -283
  284. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/LongLivedObject.cpp +63 -0
  285. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/LongLivedObject.h +61 -0
  286. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Object.h +93 -0
  287. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Promise.h +104 -0
  288. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Value.h +107 -0
  289. package/Microsoft.ReactNative.Cxx/ReactCommon/react/debug/flags.h +22 -0
  290. package/Microsoft.ReactNative.Cxx/ReactCommon/react/debug/react_native_assert.h +72 -0
  291. package/Microsoft.ReactNative.Cxx/node-api/js_native_api.h +553 -0
  292. package/Microsoft.ReactNative.Cxx/node-api/js_native_api_types.h +167 -0
  293. package/Microsoft.ReactNative.Cxx/node-api/js_runtime_api.h +186 -0
  294. package/Microsoft.ReactNative.Cxx/stubs/glog/logging.h +82 -0
  295. package/PropertySheets/Bundle.Common.targets +1 -1
  296. package/PropertySheets/Bundle.props +3 -0
  297. package/PropertySheets/Generated/PackageVersion.g.props +4 -4
  298. package/PropertySheets/ManagedCodeGen/Microsoft.ReactNative.Managed.CodeGen.targets +1 -1
  299. package/PropertySheets/OutputMSBuildProperties.targets +3 -1
  300. package/ReactCommon/ReactCommon.vcxproj +5 -0
  301. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/JSExecutor.cpp +2 -3
  302. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +61 -0
  303. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModule.h +26 -23
  304. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +150 -0
  305. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h +252 -0
  306. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/accessibilityPropsConversions.h +795 -0
  307. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/runtimescheduler/SchedulerPriorityUtils.h +59 -0
  308. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/runtime/ReactInstance.cpp +188 -39
  309. package/Scripts/Microsoft.ReactNative.Managed.CodeGen.targets +1 -1
  310. package/Scripts/Tfs/Layout-MSRN-Headers.ps1 +97 -62
  311. package/Shared/InspectorPackagerConnection.cpp +3 -6
  312. package/Shared/InspectorPackagerConnection.h +2 -2
  313. package/Shared/InstanceManager.h +1 -1
  314. package/Shared/OInstance.h +1 -1
  315. package/Shared/Shared.vcxitems +20 -2
  316. package/Shared/Shared.vcxitems.filters +4 -1
  317. package/Shared/TurboModuleManager.cpp +29 -4
  318. package/codegen/NativeAccessibilityInfoSpec.g.h +28 -9
  319. package/codegen/NativeAccessibilityManagerSpec.g.h +20 -13
  320. package/codegen/NativeActionSheetManagerSpec.g.h +5 -0
  321. package/codegen/NativeAlertManagerSpec.g.h +1 -0
  322. package/codegen/NativeAnimatedModuleSpec.g.h +1 -0
  323. package/codegen/NativeAnimatedTurboModuleSpec.g.h +1 -0
  324. package/codegen/NativeAppStateSpec.g.h +1 -0
  325. package/codegen/NativeAppThemeSpec.g.h +1 -0
  326. package/codegen/NativeAppearanceSpec.g.h +1 -0
  327. package/codegen/NativeBlobModuleSpec.g.h +1 -0
  328. package/codegen/NativeBugReportingSpec.g.h +1 -0
  329. package/codegen/NativeClipboardSpec.g.h +1 -0
  330. package/codegen/NativeDOMSpec.g.h +1 -0
  331. package/codegen/NativeDevLoadingViewSpec.g.h +1 -0
  332. package/codegen/NativeDevMenuSpec.g.h +1 -0
  333. package/codegen/NativeDevSettingsSpec.g.h +1 -0
  334. package/codegen/NativeDeviceEventManagerSpec.g.h +1 -0
  335. package/codegen/NativeDeviceInfoSpec.g.h +1 -0
  336. package/codegen/NativeDialogManagerAndroidSpec.g.h +1 -0
  337. package/codegen/NativeDialogManagerWindowsSpec.g.h +1 -0
  338. package/codegen/NativeExceptionsManagerSpec.g.h +2 -7
  339. package/codegen/NativeFileReaderModuleSpec.g.h +1 -0
  340. package/codegen/NativeFrameRateLoggerSpec.g.h +1 -0
  341. package/codegen/NativeHeadlessJsTaskSupportSpec.g.h +1 -0
  342. package/codegen/NativeI18nManagerSpec.g.h +1 -0
  343. package/codegen/NativeIdleCallbacksSpec.g.h +1 -0
  344. package/codegen/NativeImageEditorSpec.g.h +1 -0
  345. package/codegen/NativeImageLoaderAndroidSpec.g.h +1 -0
  346. package/codegen/NativeImageLoaderIOSSpec.g.h +1 -0
  347. package/codegen/NativeImageStoreAndroidSpec.g.h +1 -0
  348. package/codegen/NativeImageStoreIOSSpec.g.h +1 -0
  349. package/codegen/NativeIntentAndroidSpec.g.h +1 -0
  350. package/codegen/NativeIntersectionObserverSpec.g.h +3 -0
  351. package/codegen/NativeJSCHeapCaptureSpec.g.h +1 -0
  352. package/codegen/NativeJSCSamplingProfilerSpec.g.h +1 -0
  353. package/codegen/NativeKeyboardObserverSpec.g.h +1 -0
  354. package/codegen/NativeLinkingManagerSpec.g.h +1 -0
  355. package/codegen/NativeLogBoxSpec.g.h +1 -0
  356. package/codegen/NativeMicrotasksSpec.g.h +1 -0
  357. package/codegen/NativeModalManagerSpec.g.h +1 -0
  358. package/codegen/NativeMutationObserverSpec.g.h +1 -0
  359. package/codegen/NativeNetworkingAndroidSpec.g.h +1 -0
  360. package/codegen/NativeNetworkingIOSSpec.g.h +1 -0
  361. package/codegen/NativePerformanceSpec.g.h +128 -3
  362. package/codegen/NativePermissionsAndroidSpec.g.h +1 -0
  363. package/codegen/NativePlatformConstantsAndroidSpec.g.h +1 -0
  364. package/codegen/NativePlatformConstantsIOSSpec.g.h +1 -0
  365. package/codegen/NativePlatformConstantsWindowsSpec.g.h +1 -0
  366. package/codegen/NativePushNotificationManagerIOSSpec.g.h +1 -0
  367. package/codegen/NativeReactDevToolsRuntimeSettingsModuleSpec.g.h +67 -0
  368. package/codegen/NativeReactDevToolsSettingsManagerSpec.g.h +41 -0
  369. package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +126 -137
  370. package/codegen/NativeRedBoxSpec.g.h +1 -0
  371. package/codegen/NativeSampleTurboModuleSpec.g.h +1 -0
  372. package/codegen/NativeSegmentFetcherSpec.g.h +1 -0
  373. package/codegen/NativeSettingsManagerSpec.g.h +1 -0
  374. package/codegen/NativeShareModuleSpec.g.h +1 -0
  375. package/codegen/NativeSoundManagerSpec.g.h +1 -0
  376. package/codegen/NativeSourceCodeSpec.g.h +1 -0
  377. package/codegen/NativeStatusBarManagerAndroidSpec.g.h +1 -0
  378. package/codegen/NativeStatusBarManagerIOSSpec.g.h +1 -0
  379. package/codegen/NativeTimingSpec.g.h +1 -0
  380. package/codegen/NativeToastAndroidSpec.g.h +1 -0
  381. package/codegen/NativeUIManagerSpec.g.h +1 -0
  382. package/codegen/NativeVibrationSpec.g.h +1 -0
  383. package/codegen/NativeWebSocketModuleSpec.g.h +1 -0
  384. package/codegen/react/components/rnwcore/ComponentDescriptors.h +0 -1
  385. package/codegen/react/components/rnwcore/Props.cpp +1 -0
  386. package/codegen/react/components/rnwcore/Props.h +1 -0
  387. package/codegen/react/components/rnwcore/ShadowNodes.cpp +0 -1
  388. package/codegen/react/components/rnwcore/ShadowNodes.h +0 -11
  389. package/codegen/react/components/rnwcore/States.h +0 -12
  390. package/codegen/rnwcoreJSI-generated.cpp +219 -186
  391. package/codegen/rnwcoreJSI.h +942 -511
  392. package/index.js +10 -3
  393. package/index.windows.js +10 -3
  394. package/jest/setup.js +36 -1
  395. package/just-task.js +15 -0
  396. package/package.json +22 -22
  397. package/src/private/animated/NativeAnimatedHelper.js +18 -16
  398. package/src/private/animated/useAnimatedPropsMemo.js +348 -0
  399. package/src/private/animated/useAnimatedPropsMemo.windows.js +356 -0
  400. package/src/private/components/HScrollViewNativeComponents.js +1 -27
  401. package/src/private/components/SafeAreaView_INTERNAL_DO_NOT_USE.js +11 -8
  402. package/src/private/components/VScrollViewNativeComponents.js +2 -25
  403. package/src/private/debugging/ReactDevToolsSettingsManager.android.js +20 -0
  404. package/src/private/debugging/ReactDevToolsSettingsManager.ios.js +30 -0
  405. package/src/private/debugging/ReactDevToolsSettingsManager.windows.js +20 -0
  406. package/src/private/{fusebox → debugging}/setUpFuseboxReactDevToolsDispatcher.js +6 -0
  407. package/src/private/devmenu/DevMenu.d.ts +20 -0
  408. package/src/private/devmenu/DevMenu.js +31 -0
  409. package/src/private/featureflags/ReactNativeFeatureFlags.js +95 -86
  410. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +8 -2
  411. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +17 -19
  412. package/src/private/fusebox/specs/NativeReactDevToolsRuntimeSettingsModule.js +34 -0
  413. package/src/private/setup/setUpDOM.js +14 -6
  414. package/src/private/setup/setUpMutationObserver.js +5 -0
  415. package/src/private/specs/components/AndroidHorizontalScrollContentViewNativeComponent.js +1 -0
  416. package/src/private/specs/components/RCTModalHostViewNativeComponent.js +8 -0
  417. package/src/private/specs/modules/NativeAccessibilityInfo.js +9 -0
  418. package/src/private/specs/modules/NativeAccessibilityManager.js +4 -0
  419. package/src/private/specs/modules/NativeActionSheetManager.js +2 -0
  420. package/src/private/specs/modules/NativeAppearance.js +4 -10
  421. package/src/private/specs/modules/NativeExceptionsManager.js +0 -12
  422. package/src/private/specs/modules/{NativeDevToolsSettingsManager.js → NativeReactDevToolsSettingsManager.js} +3 -5
  423. package/src/private/webapis/dom/geometry/DOMRect.js +2 -2
  424. package/src/private/webapis/dom/geometry/DOMRectReadOnly.js +2 -2
  425. package/src/private/webapis/dom/nodes/ReactNativeElement.js +2 -3
  426. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +102 -11
  427. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +26 -0
  428. package/src/private/webapis/intersectionobserver/IntersectionObserverManager.js +1 -0
  429. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +1 -0
  430. package/src/private/webapis/intersectionobserver/specs/__mocks__/NativeIntersectionObserver.js +9 -0
  431. package/src/private/webapis/performance/EventTiming.js +13 -8
  432. package/src/private/webapis/performance/Performance.js +66 -73
  433. package/src/private/webapis/performance/PerformanceEntry.js +2 -5
  434. package/src/private/webapis/performance/PerformanceObserver.js +65 -164
  435. package/src/private/webapis/performance/RawPerformanceEntry.js +1 -1
  436. package/src/private/webapis/performance/UserTiming.js +11 -7
  437. package/src/private/webapis/performance/Utilities.js +18 -0
  438. package/src/private/webapis/performance/specs/NativePerformance.js +71 -2
  439. package/src/private/webapis/performance/specs/__mocks__/NativePerformanceMock.js +267 -0
  440. package/templates/cpp-lib/template.config.js +13 -7
  441. package/templates/templateUtils.js +10 -0
  442. package/types/index.d.ts +1 -1
  443. package/types/public/ReactNativeTypes.d.ts +4 -8
  444. package/Libraries/DevToolsSettings/DevToolsSettingsManager.android.js +0 -35
  445. package/Libraries/DevToolsSettings/DevToolsSettingsManager.d.ts +0 -20
  446. package/Libraries/DevToolsSettings/DevToolsSettingsManager.ios.js +0 -49
  447. package/Libraries/DevToolsSettings/DevToolsSettingsManager.windows.js +0 -35
  448. package/Libraries/DevToolsSettings/NativeDevToolsSettingsManager.js +0 -13
  449. package/Libraries/ReactNative/ReactFabricInternals.js +0 -17
  450. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/CallbackWrapper.h +0 -101
  451. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/scrollview/ScrollViewProps.cpp +0 -569
  452. package/codegen/NativeDevToolsSettingsManagerSpec.g.h +0 -52
  453. package/codegen/NativePerformanceObserverSpec.g.h +0 -130
  454. package/src/private/components/useSyncOnScroll.js +0 -48
  455. package/src/private/webapis/performance/specs/NativePerformanceObserver.js +0 -61
  456. package/src/private/webapis/performance/specs/__mocks__/NativePerformance.js +0 -67
  457. package/src/private/webapis/performance/specs/__mocks__/NativePerformanceObserver.js +0 -127
  458. package/types/experimental.d.ts +0 -59
  459. /package/src/private/{fusebox → debugging}/FuseboxSessionObserver.js +0 -0
@@ -1,17 +0,0 @@
1
- /**
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- *
7
- * @flow strict-local
8
- * @format
9
- */
10
-
11
- 'use strict';
12
-
13
- const createReactNativeComponentClass = require('../Renderer/shims/createReactNativeComponentClass');
14
-
15
- module.exports = {
16
- createReactNativeComponentClass,
17
- };
@@ -1,101 +0,0 @@
1
- /*
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
- #pragma once
9
-
10
- #include <jsi/jsi.h>
11
-
12
- #include <memory>
13
-
14
- #include <LongLivedObject.h> // [Windows #13391]
15
-
16
- namespace facebook::react {
17
-
18
- class CallInvoker;
19
-
20
- // Helper for passing jsi::Function arg to other methods.
21
- class CallbackWrapper : public LongLivedObject {
22
- private:
23
- CallbackWrapper(
24
- jsi::Function&& callback,
25
- jsi::Runtime& runtime,
26
- std::shared_ptr<CallInvoker> jsInvoker)
27
- : LongLivedObject(runtime),
28
- callback_(std::move(callback)),
29
- jsInvoker_(std::move(jsInvoker)) {}
30
-
31
- CallbackWrapper(
32
- std::shared_ptr<LongLivedObjectCollection> longLivedObjectCollection,
33
- jsi::Function &&callback,
34
- jsi::Runtime &runtime,
35
- std::shared_ptr<CallInvoker> jsInvoker)
36
- : LongLivedObject(runtime),
37
- callback_(std::move(callback)),
38
- jsInvoker_(std::move(jsInvoker)) {}
39
-
40
- // Use a weak_ptr to avoid a retain cycle: LongLivedObjectCollection owns all
41
- // CallbackWrappers. So, CallbackWrapper cannot own its
42
- // LongLivedObjectCollection.
43
- std::weak_ptr<LongLivedObjectCollection> longLivedObjectCollection_;
44
- jsi::Function callback_;
45
- std::shared_ptr<CallInvoker> jsInvoker_;
46
-
47
- public:
48
- static std::weak_ptr<CallbackWrapper> createWeak(
49
- jsi::Function &&callback,
50
- jsi::Runtime &runtime,
51
- std::shared_ptr<CallInvoker> jsInvoker) {
52
- auto wrapper = std::shared_ptr<CallbackWrapper>(new CallbackWrapper(
53
- std::move(callback), runtime, std::move(jsInvoker)));
54
- LongLivedObjectCollection::get(runtime).add(wrapper);
55
- return wrapper;
56
- }
57
-
58
- static std::weak_ptr<CallbackWrapper> createWeak(
59
- std::shared_ptr<LongLivedObjectCollection> longLivedObjectCollection,
60
- jsi::Function &&callback,
61
- jsi::Runtime &runtime,
62
- std::shared_ptr<CallInvoker> jsInvoker) {
63
- auto wrapper = std::shared_ptr<CallbackWrapper>(new CallbackWrapper(
64
- longLivedObjectCollection, std::move(callback), runtime, jsInvoker));
65
- longLivedObjectCollection->add(wrapper);
66
- return wrapper;
67
- }
68
-
69
- // Delete the enclosed jsi::Function
70
- void destroy() {
71
- allowRelease();
72
- }
73
-
74
- jsi::Function &callback() {
75
- return callback_;
76
- }
77
-
78
- jsi::Runtime &runtime() {
79
- return runtime_;
80
- }
81
-
82
- CallInvoker &jsInvoker() {
83
- return *(jsInvoker_);
84
- }
85
-
86
- std::shared_ptr<CallInvoker> jsInvokerPtr() {
87
- return jsInvoker_;
88
- }
89
-
90
- void allowRelease() {
91
- if (auto longLivedObjectCollection = longLivedObjectCollection_.lock()) {
92
- if (longLivedObjectCollection != nullptr) {
93
- longLivedObjectCollection->remove(this);
94
- return;
95
- }
96
- }
97
- LongLivedObject::allowRelease();
98
- }
99
- };
100
-
101
- } // namespace facebook::react
@@ -1,569 +0,0 @@
1
- /*
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
- #include "ScrollViewProps.h"
9
-
10
- #include <react/renderer/components/scrollview/conversions.h>
11
- #include <react/renderer/core/graphicsConversions.h>
12
- #include <react/renderer/debug/debugStringConvertibleUtils.h>
13
- #include <react/utils/CoreFeatures.h>
14
-
15
- #include <react/renderer/core/propsConversions.h>
16
-
17
- namespace facebook::react {
18
-
19
- ScrollViewProps::ScrollViewProps(
20
- const PropsParserContext& context,
21
- const ScrollViewProps& sourceProps,
22
- const RawProps& rawProps)
23
- : ViewProps(context, sourceProps, rawProps),
24
- alwaysBounceHorizontal(
25
- CoreFeatures::enablePropIteratorSetter
26
- ? sourceProps.alwaysBounceHorizontal
27
- : convertRawProp(
28
- context,
29
- rawProps,
30
- "alwaysBounceHorizontal",
31
- sourceProps.alwaysBounceHorizontal,
32
- {})),
33
- alwaysBounceVertical(
34
- CoreFeatures::enablePropIteratorSetter
35
- ? sourceProps.alwaysBounceVertical
36
- : convertRawProp(
37
- context,
38
- rawProps,
39
- "alwaysBounceVertical",
40
- sourceProps.alwaysBounceVertical,
41
- {})),
42
- bounces(
43
- CoreFeatures::enablePropIteratorSetter ? sourceProps.bounces
44
- : convertRawProp(
45
- context,
46
- rawProps,
47
- "bounces",
48
- sourceProps.bounces,
49
- true)),
50
- bouncesZoom(
51
- CoreFeatures::enablePropIteratorSetter ? sourceProps.bouncesZoom
52
- : convertRawProp(
53
- context,
54
- rawProps,
55
- "bouncesZoom",
56
- sourceProps.bouncesZoom,
57
- true)),
58
- canCancelContentTouches(
59
- CoreFeatures::enablePropIteratorSetter
60
- ? sourceProps.canCancelContentTouches
61
- : convertRawProp(
62
- context,
63
- rawProps,
64
- "canCancelContentTouches",
65
- sourceProps.canCancelContentTouches,
66
- true)),
67
- centerContent(
68
- CoreFeatures::enablePropIteratorSetter
69
- ? sourceProps.centerContent
70
- : convertRawProp(
71
- context,
72
- rawProps,
73
- "centerContent",
74
- sourceProps.centerContent,
75
- {})),
76
- automaticallyAdjustContentInsets(
77
- CoreFeatures::enablePropIteratorSetter
78
- ? sourceProps.automaticallyAdjustContentInsets
79
- : convertRawProp(
80
- context,
81
- rawProps,
82
- "automaticallyAdjustContentInsets",
83
- sourceProps.automaticallyAdjustContentInsets,
84
- {})),
85
- automaticallyAdjustsScrollIndicatorInsets(
86
- CoreFeatures::enablePropIteratorSetter
87
- ? sourceProps.automaticallyAdjustsScrollIndicatorInsets
88
- : convertRawProp(
89
- context,
90
- rawProps,
91
- "automaticallyAdjustsScrollIndicatorInsets",
92
- sourceProps.automaticallyAdjustsScrollIndicatorInsets,
93
- true)),
94
- automaticallyAdjustKeyboardInsets(
95
- CoreFeatures::enablePropIteratorSetter
96
- ? sourceProps.automaticallyAdjustKeyboardInsets
97
- : convertRawProp(
98
- context,
99
- rawProps,
100
- "automaticallyAdjustKeyboardInsets",
101
- sourceProps.automaticallyAdjustKeyboardInsets,
102
- false)),
103
- decelerationRate(
104
- CoreFeatures::enablePropIteratorSetter
105
- ? sourceProps.decelerationRate
106
- : convertRawProp(
107
- context,
108
- rawProps,
109
- "decelerationRate",
110
- sourceProps.decelerationRate,
111
- (Float)0.998)),
112
- endDraggingSensitivityMultiplier(
113
- CoreFeatures::enablePropIteratorSetter
114
- ? sourceProps.endDraggingSensitivityMultiplier
115
- : convertRawProp(
116
- context,
117
- rawProps,
118
- "endDraggingSensitivityMultiplier",
119
- sourceProps.endDraggingSensitivityMultiplier,
120
- // [Windows fix
121
- (Float)1)),
122
- // Windows]
123
- enableSyncOnScroll(
124
- CoreFeatures::enablePropIteratorSetter
125
- ? sourceProps.enableSyncOnScroll
126
- : convertRawProp(
127
- context,
128
- rawProps,
129
- "enableSyncOnScroll",
130
- sourceProps.enableSyncOnScroll,
131
- false)),
132
- directionalLockEnabled(
133
- CoreFeatures::enablePropIteratorSetter
134
- ? sourceProps.directionalLockEnabled
135
- : convertRawProp(
136
- context,
137
- rawProps,
138
- "directionalLockEnabled",
139
- sourceProps.directionalLockEnabled,
140
- {})),
141
- indicatorStyle(
142
- CoreFeatures::enablePropIteratorSetter
143
- ? sourceProps.indicatorStyle
144
- : convertRawProp(
145
- context,
146
- rawProps,
147
- "indicatorStyle",
148
- sourceProps.indicatorStyle,
149
- {})),
150
- keyboardDismissMode(
151
- CoreFeatures::enablePropIteratorSetter
152
- ? sourceProps.keyboardDismissMode
153
- : convertRawProp(
154
- context,
155
- rawProps,
156
- "keyboardDismissMode",
157
- sourceProps.keyboardDismissMode,
158
- {})),
159
- maintainVisibleContentPosition(
160
- CoreFeatures::enablePropIteratorSetter
161
- ? sourceProps.maintainVisibleContentPosition
162
- : convertRawProp(
163
- context,
164
- rawProps,
165
- "maintainVisibleContentPosition",
166
- sourceProps.maintainVisibleContentPosition,
167
- {})),
168
- maximumZoomScale(
169
- CoreFeatures::enablePropIteratorSetter
170
- ? sourceProps.maximumZoomScale
171
- : convertRawProp(
172
- context,
173
- rawProps,
174
- "maximumZoomScale",
175
- sourceProps.maximumZoomScale,
176
- (Float)1.0)),
177
- minimumZoomScale(
178
- CoreFeatures::enablePropIteratorSetter
179
- ? sourceProps.minimumZoomScale
180
- : convertRawProp(
181
- context,
182
- rawProps,
183
- "minimumZoomScale",
184
- sourceProps.minimumZoomScale,
185
- (Float)1.0)),
186
- scrollEnabled(
187
- CoreFeatures::enablePropIteratorSetter
188
- ? sourceProps.scrollEnabled
189
- : convertRawProp(
190
- context,
191
- rawProps,
192
- "scrollEnabled",
193
- sourceProps.scrollEnabled,
194
- true)),
195
- pagingEnabled(
196
- CoreFeatures::enablePropIteratorSetter
197
- ? sourceProps.pagingEnabled
198
- : convertRawProp(
199
- context,
200
- rawProps,
201
- "pagingEnabled",
202
- sourceProps.pagingEnabled,
203
- {})),
204
- pinchGestureEnabled(
205
- CoreFeatures::enablePropIteratorSetter
206
- ? sourceProps.pinchGestureEnabled
207
- : convertRawProp(
208
- context,
209
- rawProps,
210
- "pinchGestureEnabled",
211
- sourceProps.pinchGestureEnabled,
212
- true)),
213
- scrollsToTop(
214
- CoreFeatures::enablePropIteratorSetter ? sourceProps.scrollsToTop
215
- : convertRawProp(
216
- context,
217
- rawProps,
218
- "scrollsToTop",
219
- sourceProps.scrollsToTop,
220
- true)),
221
- showsHorizontalScrollIndicator(
222
- CoreFeatures::enablePropIteratorSetter
223
- ? sourceProps.showsHorizontalScrollIndicator
224
- : convertRawProp(
225
- context,
226
- rawProps,
227
- "showsHorizontalScrollIndicator",
228
- sourceProps.showsHorizontalScrollIndicator,
229
- true)),
230
- showsVerticalScrollIndicator(
231
- CoreFeatures::enablePropIteratorSetter
232
- ? sourceProps.showsVerticalScrollIndicator
233
- : convertRawProp(
234
- context,
235
- rawProps,
236
- "showsVerticalScrollIndicator",
237
- sourceProps.showsVerticalScrollIndicator,
238
- true)),
239
- persistentScrollbar(
240
- CoreFeatures::enablePropIteratorSetter
241
- ? sourceProps.persistentScrollbar
242
- : convertRawProp(
243
- context,
244
- rawProps,
245
- "persistentScrollbar",
246
- sourceProps.persistentScrollbar,
247
- true)),
248
- horizontal(
249
- CoreFeatures::enablePropIteratorSetter ? sourceProps.horizontal
250
- : convertRawProp(
251
- context,
252
- rawProps,
253
- "horizontal",
254
- sourceProps.horizontal,
255
- true)),
256
- scrollEventThrottle(
257
- CoreFeatures::enablePropIteratorSetter
258
- ? sourceProps.scrollEventThrottle
259
- : convertRawProp(
260
- context,
261
- rawProps,
262
- "scrollEventThrottle",
263
- sourceProps.scrollEventThrottle,
264
- {})),
265
- zoomScale(
266
- CoreFeatures::enablePropIteratorSetter ? sourceProps.zoomScale
267
- : convertRawProp(
268
- context,
269
- rawProps,
270
- "zoomScale",
271
- sourceProps.zoomScale,
272
- (Float)1.0)),
273
- contentInset(
274
- CoreFeatures::enablePropIteratorSetter ? sourceProps.contentInset
275
- : convertRawProp(
276
- context,
277
- rawProps,
278
- "contentInset",
279
- sourceProps.contentInset,
280
- {})),
281
- contentOffset(
282
- CoreFeatures::enablePropIteratorSetter
283
- ? sourceProps.contentOffset
284
- : convertRawProp(
285
- context,
286
- rawProps,
287
- "contentOffset",
288
- sourceProps.contentOffset,
289
- {})),
290
- scrollIndicatorInsets(
291
- CoreFeatures::enablePropIteratorSetter
292
- ? sourceProps.scrollIndicatorInsets
293
- : convertRawProp(
294
- context,
295
- rawProps,
296
- "scrollIndicatorInsets",
297
- sourceProps.scrollIndicatorInsets,
298
- {})),
299
- snapToInterval(
300
- CoreFeatures::enablePropIteratorSetter
301
- ? sourceProps.snapToInterval
302
- : convertRawProp(
303
- context,
304
- rawProps,
305
- "snapToInterval",
306
- sourceProps.snapToInterval,
307
- {})),
308
- snapToAlignment(
309
- CoreFeatures::enablePropIteratorSetter
310
- ? sourceProps.snapToAlignment
311
- : convertRawProp(
312
- context,
313
- rawProps,
314
- "snapToAlignment",
315
- sourceProps.snapToAlignment,
316
- {})),
317
- disableIntervalMomentum(
318
- CoreFeatures::enablePropIteratorSetter
319
- ? sourceProps.disableIntervalMomentum
320
- : convertRawProp(
321
- context,
322
- rawProps,
323
- "disableIntervalMomentum",
324
- sourceProps.disableIntervalMomentum,
325
- {})),
326
- snapToOffsets(
327
- CoreFeatures::enablePropIteratorSetter
328
- ? sourceProps.snapToOffsets
329
- : convertRawProp(
330
- context,
331
- rawProps,
332
- "snapToOffsets",
333
- sourceProps.snapToOffsets,
334
- {})),
335
- snapToStart(
336
- CoreFeatures::enablePropIteratorSetter ? sourceProps.snapToStart
337
- : convertRawProp(
338
- context,
339
- rawProps,
340
- "snapToStart",
341
- sourceProps.snapToStart,
342
- true)),
343
- snapToEnd(
344
- CoreFeatures::enablePropIteratorSetter ? sourceProps.snapToEnd
345
- : convertRawProp(
346
- context,
347
- rawProps,
348
- "snapToEnd",
349
- sourceProps.snapToEnd,
350
- true)),
351
- contentInsetAdjustmentBehavior(
352
- CoreFeatures::enablePropIteratorSetter
353
- ? sourceProps.contentInsetAdjustmentBehavior
354
- : convertRawProp(
355
- context,
356
- rawProps,
357
- "contentInsetAdjustmentBehavior",
358
- sourceProps.contentInsetAdjustmentBehavior,
359
- {ContentInsetAdjustmentBehavior::Never})),
360
- scrollToOverflowEnabled(
361
- CoreFeatures::enablePropIteratorSetter
362
- ? sourceProps.scrollToOverflowEnabled
363
- : convertRawProp(
364
- context,
365
- rawProps,
366
- "scrollToOverflowEnabled",
367
- sourceProps.scrollToOverflowEnabled,
368
- {})),
369
- isInvertedVirtualizedList(
370
- CoreFeatures::enablePropIteratorSetter
371
- ? sourceProps.isInvertedVirtualizedList
372
- : convertRawProp(
373
- context,
374
- rawProps,
375
- "isInvertedVirtualizedList",
376
- sourceProps.isInvertedVirtualizedList,
377
- {})) {}
378
-
379
- void ScrollViewProps::setProp(
380
- const PropsParserContext& context,
381
- RawPropsPropNameHash hash,
382
- const char* propName,
383
- const RawValue& value) {
384
- // All Props structs setProp methods must always, unconditionally,
385
- // call all super::setProp methods, since multiple structs may
386
- // reuse the same values.
387
- ViewProps::setProp(context, hash, propName, value);
388
-
389
- static auto defaults = ScrollViewProps{};
390
-
391
- switch (hash) {
392
- RAW_SET_PROP_SWITCH_CASE_BASIC(alwaysBounceHorizontal);
393
- RAW_SET_PROP_SWITCH_CASE_BASIC(alwaysBounceVertical);
394
- RAW_SET_PROP_SWITCH_CASE_BASIC(bounces);
395
- RAW_SET_PROP_SWITCH_CASE_BASIC(bouncesZoom);
396
- RAW_SET_PROP_SWITCH_CASE_BASIC(canCancelContentTouches);
397
- RAW_SET_PROP_SWITCH_CASE_BASIC(centerContent);
398
- RAW_SET_PROP_SWITCH_CASE_BASIC(automaticallyAdjustContentInsets);
399
- RAW_SET_PROP_SWITCH_CASE_BASIC(automaticallyAdjustsScrollIndicatorInsets);
400
- RAW_SET_PROP_SWITCH_CASE_BASIC(decelerationRate);
401
- RAW_SET_PROP_SWITCH_CASE_BASIC(directionalLockEnabled);
402
- RAW_SET_PROP_SWITCH_CASE_BASIC(indicatorStyle);
403
- RAW_SET_PROP_SWITCH_CASE_BASIC(keyboardDismissMode);
404
- RAW_SET_PROP_SWITCH_CASE_BASIC(maintainVisibleContentPosition);
405
- RAW_SET_PROP_SWITCH_CASE_BASIC(maximumZoomScale);
406
- RAW_SET_PROP_SWITCH_CASE_BASIC(minimumZoomScale);
407
- RAW_SET_PROP_SWITCH_CASE_BASIC(scrollEnabled);
408
- RAW_SET_PROP_SWITCH_CASE_BASIC(enableSyncOnScroll);
409
- RAW_SET_PROP_SWITCH_CASE_BASIC(endDraggingSensitivityMultiplier);
410
- RAW_SET_PROP_SWITCH_CASE_BASIC(pagingEnabled);
411
- RAW_SET_PROP_SWITCH_CASE_BASIC(pinchGestureEnabled);
412
- RAW_SET_PROP_SWITCH_CASE_BASIC(scrollsToTop);
413
- RAW_SET_PROP_SWITCH_CASE_BASIC(showsHorizontalScrollIndicator);
414
- RAW_SET_PROP_SWITCH_CASE_BASIC(persistentScrollbar);
415
- RAW_SET_PROP_SWITCH_CASE_BASIC(horizontal);
416
- RAW_SET_PROP_SWITCH_CASE_BASIC(scrollEventThrottle);
417
- RAW_SET_PROP_SWITCH_CASE_BASIC(zoomScale);
418
- RAW_SET_PROP_SWITCH_CASE_BASIC(contentInset);
419
- RAW_SET_PROP_SWITCH_CASE_BASIC(contentOffset);
420
- RAW_SET_PROP_SWITCH_CASE_BASIC(scrollIndicatorInsets);
421
- RAW_SET_PROP_SWITCH_CASE_BASIC(snapToInterval);
422
- RAW_SET_PROP_SWITCH_CASE_BASIC(snapToAlignment);
423
- RAW_SET_PROP_SWITCH_CASE_BASIC(disableIntervalMomentum);
424
- RAW_SET_PROP_SWITCH_CASE_BASIC(snapToOffsets);
425
- RAW_SET_PROP_SWITCH_CASE_BASIC(snapToStart);
426
- RAW_SET_PROP_SWITCH_CASE_BASIC(snapToEnd);
427
- RAW_SET_PROP_SWITCH_CASE_BASIC(contentInsetAdjustmentBehavior);
428
- RAW_SET_PROP_SWITCH_CASE_BASIC(scrollToOverflowEnabled);
429
- RAW_SET_PROP_SWITCH_CASE_BASIC(isInvertedVirtualizedList);
430
- }
431
- }
432
-
433
- #pragma mark - DebugStringConvertible
434
-
435
- #if RN_DEBUG_STRING_CONVERTIBLE
436
- SharedDebugStringConvertibleList ScrollViewProps::getDebugProps() const {
437
- auto defaultScrollViewProps = ScrollViewProps{};
438
-
439
- return ViewProps::getDebugProps() +
440
- SharedDebugStringConvertibleList{
441
- debugStringConvertibleItem(
442
- "alwaysBounceHorizontal",
443
- alwaysBounceHorizontal,
444
- defaultScrollViewProps.alwaysBounceHorizontal),
445
- debugStringConvertibleItem(
446
- "alwaysBounceVertical",
447
- alwaysBounceVertical,
448
- defaultScrollViewProps.alwaysBounceVertical),
449
- debugStringConvertibleItem(
450
- "bounces", bounces, defaultScrollViewProps.bounces),
451
- debugStringConvertibleItem(
452
- "bouncesZoom", bouncesZoom, defaultScrollViewProps.bouncesZoom),
453
- debugStringConvertibleItem(
454
- "canCancelContentTouches",
455
- canCancelContentTouches,
456
- defaultScrollViewProps.canCancelContentTouches),
457
- debugStringConvertibleItem(
458
- "centerContent",
459
- centerContent,
460
- defaultScrollViewProps.centerContent),
461
- debugStringConvertibleItem(
462
- "automaticallyAdjustContentInsets",
463
- automaticallyAdjustContentInsets,
464
- defaultScrollViewProps.automaticallyAdjustContentInsets),
465
- debugStringConvertibleItem(
466
- "automaticallyAdjustsScrollIndicatorInsets",
467
- automaticallyAdjustsScrollIndicatorInsets,
468
- defaultScrollViewProps.automaticallyAdjustsScrollIndicatorInsets),
469
- debugStringConvertibleItem(
470
- "decelerationRate",
471
- decelerationRate,
472
- defaultScrollViewProps.decelerationRate),
473
- debugStringConvertibleItem(
474
- "directionalLockEnabled",
475
- directionalLockEnabled,
476
- defaultScrollViewProps.directionalLockEnabled),
477
- debugStringConvertibleItem(
478
- "indicatorStyle",
479
- indicatorStyle,
480
- defaultScrollViewProps.indicatorStyle),
481
- debugStringConvertibleItem(
482
- "keyboardDismissMode",
483
- keyboardDismissMode,
484
- defaultScrollViewProps.keyboardDismissMode),
485
- debugStringConvertibleItem(
486
- "maintainVisibleContentPosition",
487
- maintainVisibleContentPosition,
488
- defaultScrollViewProps.maintainVisibleContentPosition),
489
- debugStringConvertibleItem(
490
- "maximumZoomScale",
491
- maximumZoomScale,
492
- defaultScrollViewProps.maximumZoomScale),
493
- debugStringConvertibleItem(
494
- "minimumZoomScale",
495
- minimumZoomScale,
496
- defaultScrollViewProps.minimumZoomScale),
497
- debugStringConvertibleItem(
498
- "scrollEnabled",
499
- scrollEnabled,
500
- defaultScrollViewProps.scrollEnabled),
501
- debugStringConvertibleItem(
502
- "pagingEnabled",
503
- pagingEnabled,
504
- defaultScrollViewProps.pagingEnabled),
505
- debugStringConvertibleItem(
506
- "pinchGestureEnabled",
507
- pinchGestureEnabled,
508
- defaultScrollViewProps.pinchGestureEnabled),
509
- debugStringConvertibleItem(
510
- "scrollsToTop",
511
- scrollsToTop,
512
- defaultScrollViewProps.scrollsToTop),
513
- debugStringConvertibleItem(
514
- "showsHorizontalScrollIndicator",
515
- showsHorizontalScrollIndicator,
516
- defaultScrollViewProps.showsHorizontalScrollIndicator),
517
- debugStringConvertibleItem(
518
- "showsVerticalScrollIndicator",
519
- showsVerticalScrollIndicator,
520
- defaultScrollViewProps.showsVerticalScrollIndicator),
521
- debugStringConvertibleItem(
522
- "persistentScrollbar",
523
- persistentScrollbar,
524
- defaultScrollViewProps.persistentScrollbar),
525
- debugStringConvertibleItem(
526
- "horizontal", horizontal, defaultScrollViewProps.horizontal),
527
- debugStringConvertibleItem(
528
- "scrollEventThrottle",
529
- scrollEventThrottle,
530
- defaultScrollViewProps.scrollEventThrottle),
531
- debugStringConvertibleItem(
532
- "zoomScale", zoomScale, defaultScrollViewProps.zoomScale),
533
- debugStringConvertibleItem(
534
- "contentInset",
535
- contentInset,
536
- defaultScrollViewProps.contentInset),
537
- debugStringConvertibleItem(
538
- "contentOffset",
539
- contentOffset,
540
- defaultScrollViewProps.contentOffset),
541
- debugStringConvertibleItem(
542
- "scrollIndicatorInsets",
543
- scrollIndicatorInsets,
544
- defaultScrollViewProps.scrollIndicatorInsets),
545
- debugStringConvertibleItem(
546
- "snapToInterval",
547
- snapToInterval,
548
- defaultScrollViewProps.snapToInterval),
549
- debugStringConvertibleItem(
550
- "snapToAlignment",
551
- snapToAlignment,
552
- defaultScrollViewProps.snapToAlignment),
553
- debugStringConvertibleItem(
554
- "disableIntervalMomentum",
555
- disableIntervalMomentum,
556
- defaultScrollViewProps.disableIntervalMomentum),
557
- debugStringConvertibleItem(
558
- "snapToStart", snapToStart, defaultScrollViewProps.snapToStart),
559
- debugStringConvertibleItem(
560
- "snapToEnd", snapToEnd, defaultScrollViewProps.snapToEnd),
561
- debugStringConvertibleItem(
562
- "isInvertedVirtualizedList",
563
- snapToEnd,
564
- defaultScrollViewProps.isInvertedVirtualizedList)};
565
- }
566
- #endif
567
-
568
- } // namespace facebook::react
569
-