react-native-windows 0.81.3 → 0.82.0-preview.10

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 (704) hide show
  1. package/.flowconfig +11 -10
  2. package/Directory.Build.props +3 -3
  3. package/Folly/Folly.vcxproj +1 -3
  4. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +7 -3
  5. package/Libraries/Alert/RCTAlertManager.android.js +4 -2
  6. package/Libraries/Animated/Animated.d.ts +2 -0
  7. package/Libraries/Animated/AnimatedEvent.js +1 -1
  8. package/Libraries/Animated/AnimatedExports.js.flow +1 -0
  9. package/Libraries/Animated/AnimatedImplementation.js +4 -2
  10. package/Libraries/Animated/AnimatedMock.js +1 -1
  11. package/Libraries/Animated/Easing.js +2 -0
  12. package/Libraries/Animated/NativeAnimatedAllowlist.js +1 -0
  13. package/Libraries/Animated/animations/Animation.js +19 -20
  14. package/Libraries/Animated/animations/TimingAnimation.js +2 -0
  15. package/Libraries/Animated/components/AnimatedScrollView.js +3 -2
  16. package/Libraries/Animated/components/AnimatedSectionList.js +1 -1
  17. package/Libraries/Animated/nodes/AnimatedColor.js +9 -9
  18. package/Libraries/Animated/nodes/AnimatedInterpolation.js +4 -4
  19. package/Libraries/Animated/nodes/AnimatedNode.js +14 -7
  20. package/Libraries/Animated/nodes/AnimatedObject.js +7 -7
  21. package/Libraries/Animated/nodes/AnimatedProps.js +32 -32
  22. package/Libraries/Animated/nodes/AnimatedStyle.js +23 -21
  23. package/Libraries/Animated/nodes/AnimatedTransform.js +6 -6
  24. package/Libraries/Animated/nodes/AnimatedValue.js +18 -26
  25. package/Libraries/AppState/AppState.js +8 -4
  26. package/Libraries/BatchedBridge/BatchedBridge.js +1 -0
  27. package/Libraries/BatchedBridge/MessageQueue.js +5 -0
  28. package/Libraries/BatchedBridge/NativeModules.js +1 -1
  29. package/Libraries/Blob/BlobManager.js +1 -1
  30. package/Libraries/Blob/URLSearchParams.js +2 -0
  31. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +2 -2
  32. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.windows.js +2 -2
  33. package/Libraries/Components/Button.js +1 -1
  34. package/Libraries/Components/Button.windows.js +1 -1
  35. package/Libraries/Components/Flyout/FlyoutNativeComponent.js +2 -2
  36. package/Libraries/Components/Glyph/GlyphNativeComponent.js +1 -1
  37. package/Libraries/Components/Popup/PopupNativeComponent.js +1 -0
  38. package/Libraries/Components/Pressable/Pressable.js +10 -1
  39. package/Libraries/Components/Pressable/Pressable.windows.js +9 -0
  40. package/Libraries/Components/Pressable/useAndroidRippleForView.js +2 -2
  41. package/Libraries/Components/ScrollView/ScrollView.js +13 -4
  42. package/Libraries/Components/ScrollView/ScrollView.windows.js +14 -5
  43. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -1
  44. package/Libraries/Components/StatusBar/StatusBar.js +2 -2
  45. package/Libraries/Components/Switch/Switch.js +1 -1
  46. package/Libraries/Components/Switch/Switch.windows.js +1 -1
  47. package/Libraries/Components/TextInput/TextInput.flow.js +12 -5
  48. package/Libraries/Components/TextInput/TextInput.flow.windows.js +12 -5
  49. package/Libraries/Components/TextInput/TextInput.js +14 -5
  50. package/Libraries/Components/TextInput/TextInput.windows.js +23 -11
  51. package/Libraries/Components/TextInput/TextInputState.js +1 -1
  52. package/Libraries/Components/TextInput/TextInputState.windows.js +1 -1
  53. package/Libraries/Components/Touchable/TouchableBounce.js +1 -1
  54. package/Libraries/Components/Touchable/TouchableHighlight.js +1 -1
  55. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
  56. package/Libraries/Components/Touchable/TouchableOpacity.js +1 -1
  57. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +3 -3
  58. package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +1 -1
  59. package/Libraries/Components/View/View.js +81 -167
  60. package/Libraries/Components/View/View.windows.js +202 -302
  61. package/Libraries/Core/Devtools/loadBundleFromServer.js +1 -1
  62. package/Libraries/Core/Devtools/loadBundleFromServer.windows.js +1 -1
  63. package/Libraries/Core/ExceptionsManager.js +4 -2
  64. package/Libraries/Core/ReactFiberErrorDialog.js +3 -3
  65. package/Libraries/Core/ReactNativeVersion.js +37 -10
  66. package/Libraries/Core/Timers/JSTimers.js +4 -1
  67. package/Libraries/Core/Timers/NativeTiming.js +1 -0
  68. package/Libraries/Core/Timers/immediateShim.js +2 -1
  69. package/Libraries/Core/Timers/queueMicrotask.js +1 -0
  70. package/Libraries/Core/setUpPerformance.js +3 -4
  71. package/Libraries/Debugging/DebuggingOverlayRegistry.js +5 -3
  72. package/Libraries/Image/AssetSourceResolver.windows.js +2 -2
  73. package/Libraries/Image/Image.android.js +327 -111
  74. package/Libraries/Image/Image.ios.js +6 -1
  75. package/Libraries/Image/Image.windows.js +28 -61
  76. package/Libraries/Image/ImageSourceUtils.js +8 -2
  77. package/Libraries/Image/resolveAssetSource.js +1 -1
  78. package/Libraries/Image/resolveAssetSource.windows.js +1 -1
  79. package/Libraries/Interaction/InteractionManager.js +118 -167
  80. package/Libraries/Interaction/PanResponder.js +7 -52
  81. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -0
  82. package/Libraries/Lists/FlatList.js +5 -6
  83. package/Libraries/LogBox/Data/LogBoxData.js +5 -2
  84. package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
  85. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +1 -1
  86. package/Libraries/Modal/Modal.js +3 -3
  87. package/Libraries/Modal/Modal.windows.js +2 -2
  88. package/Libraries/NativeComponent/NativeComponentRegistry.js +1 -1
  89. package/Libraries/NativeComponent/ViewConfig.js +2 -2
  90. package/Libraries/Network/RCTNetworking.android.js +1 -1
  91. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  92. package/Libraries/Network/RCTNetworking.windows.js +1 -1
  93. package/Libraries/Network/XMLHttpRequest.js +20 -5
  94. package/Libraries/Network/convertRequestBody.js +1 -1
  95. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +10 -9
  96. package/Libraries/Pressability/HoverState.js +2 -0
  97. package/Libraries/Pressability/Pressability.js +1 -1
  98. package/Libraries/Pressability/Pressability.windows.js +5 -5
  99. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +2 -2
  100. package/Libraries/ReactNative/AppRegistryImpl.js +4 -2
  101. package/Libraries/ReactNative/PaperUIManager.windows.js +4 -4
  102. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +2 -0
  103. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +3 -3
  104. package/Libraries/ReactNative/RendererImplementation.js +116 -116
  105. package/Libraries/ReactNative/UIManager.js +3 -3
  106. package/Libraries/ReactNative/renderApplication.js +1 -0
  107. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -1
  108. package/Libraries/Renderer/implementations/ReactFabric-dev.js +38 -35
  109. package/Libraries/Renderer/implementations/ReactFabric-prod.js +51 -22
  110. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +54 -24
  111. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +36 -33
  112. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +5 -5
  113. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +5 -5
  114. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -1
  115. package/Libraries/Share/Share.js +4 -0
  116. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
  117. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +2 -2
  118. package/Libraries/StyleSheet/PlatformColorValueTypes.windows.js +2 -0
  119. package/Libraries/StyleSheet/StyleSheet.d.ts +7 -22
  120. package/Libraries/StyleSheet/StyleSheetExports.js +2 -8
  121. package/Libraries/StyleSheet/StyleSheetExports.js.flow +11 -18
  122. package/Libraries/StyleSheet/flattenStyle.js +2 -2
  123. package/Libraries/StyleSheet/processAspectRatio.js +2 -0
  124. package/Libraries/StyleSheet/processFilter.js +5 -5
  125. package/Libraries/StyleSheet/splitLayoutProps.js +2 -2
  126. package/Libraries/Text/Text.js +534 -234
  127. package/Libraries/Text/Text.windows.js +622 -265
  128. package/Libraries/Text/TextNativeComponent.js +2 -2
  129. package/Libraries/Utilities/Appearance.d.ts +3 -5
  130. package/Libraries/Utilities/Appearance.js +5 -17
  131. package/Libraries/Utilities/HMRClient.js +2 -1
  132. package/Libraries/Utilities/Platform.android.js +3 -3
  133. package/Libraries/Utilities/Platform.d.ts +1 -0
  134. package/Libraries/Utilities/Platform.ios.js +1 -1
  135. package/Libraries/Utilities/Platform.windows.js +3 -3
  136. package/Libraries/Utilities/PlatformTypes.js +1 -1
  137. package/Libraries/Utilities/ReactNativeTestTools.js +12 -0
  138. package/Libraries/Utilities/SceneTracker.js +1 -1
  139. package/Libraries/Utilities/codegenNativeCommands.js +1 -1
  140. package/Libraries/Utilities/codegenNativeComponent.js +1 -1
  141. package/Libraries/Utilities/createPerformanceLogger.js +32 -0
  142. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +2 -0
  143. package/Libraries/Utilities/differ/pointsDiffer.js +1 -1
  144. package/Libraries/Utilities/useMergeRefs.js +1 -1
  145. package/Libraries/WebSocket/WebSocketInterceptor.js +2 -0
  146. package/Libraries/promiseRejectionTrackingOptions.js +17 -31
  147. package/Libraries/vendor/emitter/EventEmitter.js +1 -1
  148. package/Microsoft.ReactNative/App.xaml +5 -0
  149. package/Microsoft.ReactNative/Base/CxxReactIncludes.h +0 -3
  150. package/Microsoft.ReactNative/ComponentView.idl +2 -0
  151. package/Microsoft.ReactNative/Composition.Input.idl +7 -0
  152. package/Microsoft.ReactNative/CompositionContext.idl +0 -2
  153. package/Microsoft.ReactNative/Fabric/AbiViewProps.cpp +2 -2
  154. package/Microsoft.ReactNative/Fabric/AbiViewProps.h +0 -2
  155. package/Microsoft.ReactNative/Fabric/ComponentView.cpp +18 -0
  156. package/Microsoft.ReactNative/Fabric/ComponentView.h +9 -0
  157. package/Microsoft.ReactNative/Fabric/Composition/Composition.Input.cpp +12 -69
  158. package/Microsoft.ReactNative/Fabric/Composition/Composition.Input.h +16 -15
  159. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +0 -31
  160. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.h +0 -10
  161. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper_emptyimpl.cpp +0 -4
  162. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +75 -6
  163. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.h +1 -2
  164. package/Microsoft.ReactNative/Fabric/Composition/CompositionHelpers.h +0 -2
  165. package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.cpp +0 -9
  166. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.cpp +0 -10
  167. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.h +0 -4
  168. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +2 -4
  169. package/Microsoft.ReactNative/Fabric/Composition/ContentIslandComponentView.cpp +6 -68
  170. package/Microsoft.ReactNative/Fabric/Composition/ContentIslandComponentView.h +0 -4
  171. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.cpp +0 -1
  172. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.h +0 -1
  173. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +82 -14
  174. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.h +11 -4
  175. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.cpp +8 -0
  176. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.h +3 -0
  177. package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.cpp +0 -6
  178. package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.h +0 -2
  179. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.cpp +0 -1
  180. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +61 -32
  181. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.h +3 -0
  182. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.cpp +4 -1
  183. package/Microsoft.ReactNative/Fabric/Composition/Theme.cpp +0 -30
  184. package/Microsoft.ReactNative/Fabric/Composition/Theme.h +1 -3
  185. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.cpp +8 -4
  186. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +0 -1
  187. package/Microsoft.ReactNative/Fabric/ImageManager.cpp +0 -4
  188. package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.cpp +8 -0
  189. package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.h +3 -0
  190. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/PlatformColorUtils.cpp +0 -11
  191. package/Microsoft.ReactNative/IReactContext.cpp +2 -25
  192. package/Microsoft.ReactNative/IReactContext.h +0 -7
  193. package/Microsoft.ReactNative/IReactContext.idl +4 -29
  194. package/Microsoft.ReactNative/IReactModuleBuilder.cpp +24 -140
  195. package/Microsoft.ReactNative/IReactModuleBuilder.h +0 -11
  196. package/Microsoft.ReactNative/IReactPackageBuilder.idl +1 -16
  197. package/Microsoft.ReactNative/IReactPackageProvider.idl +0 -1
  198. package/Microsoft.ReactNative/IReactViewComponentBuilder.idl +2 -0
  199. package/Microsoft.ReactNative/JsiApi.cpp +4 -3
  200. package/Microsoft.ReactNative/JsiApi.h +2 -3
  201. package/Microsoft.ReactNative/JsiApi.idl +3 -2
  202. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +5 -214
  203. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +0 -252
  204. package/Microsoft.ReactNative/Modules/AccessibilityInfoModule.cpp +0 -37
  205. package/Microsoft.ReactNative/Modules/AlertModule.cpp +2 -140
  206. package/Microsoft.ReactNative/Modules/AlertModule.h +0 -2
  207. package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.cpp +5 -10
  208. package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.h +0 -1
  209. package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.cpp +1 -96
  210. package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.h +0 -14
  211. package/Microsoft.ReactNative/Modules/AppStateModule.cpp +0 -53
  212. package/Microsoft.ReactNative/Modules/AppStateModule.h +0 -5
  213. package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.cpp +5 -14
  214. package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.h +0 -2
  215. package/Microsoft.ReactNative/Modules/AppearanceModule.cpp +1 -9
  216. package/Microsoft.ReactNative/Modules/DevSettingsModule.cpp +0 -4
  217. package/Microsoft.ReactNative/Modules/DevSettingsModule.h +0 -2
  218. package/Microsoft.ReactNative/Modules/DeviceInfoModule.cpp +16 -90
  219. package/Microsoft.ReactNative/Modules/I18nManagerModule.cpp +3 -8
  220. package/Microsoft.ReactNative/Modules/ImageViewManagerModule.cpp +33 -43
  221. package/Microsoft.ReactNative/Modules/LinkingManagerModule.cpp +0 -3
  222. package/Microsoft.ReactNative/Modules/LogBoxModule.cpp +30 -102
  223. package/Microsoft.ReactNative/Modules/LogBoxModule.h +0 -7
  224. package/Microsoft.ReactNative/Modules/Timing.cpp +7 -9
  225. package/Microsoft.ReactNative/Pch/pch.h +0 -28
  226. package/Microsoft.ReactNative/ReactCoreInjection.h +0 -1
  227. package/Microsoft.ReactNative/ReactHost/IReactInstance.h +0 -8
  228. package/Microsoft.ReactNative/ReactHost/MsoReactContext.cpp +0 -15
  229. package/Microsoft.ReactNative/ReactHost/MsoReactContext.h +0 -2
  230. package/Microsoft.ReactNative/ReactHost/React.h +0 -44
  231. package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +10 -47
  232. package/Microsoft.ReactNative/ReactHost/ReactHost.h +1 -1
  233. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +30 -586
  234. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +2 -37
  235. package/Microsoft.ReactNative/ReactHost/ReactNativeHeaders.h +0 -13
  236. package/Microsoft.ReactNative/ReactHost/React_Win.h +0 -1
  237. package/Microsoft.ReactNative/ReactInstanceSettings.cpp +0 -8
  238. package/Microsoft.ReactNative/ReactInstanceSettings.h +0 -13
  239. package/Microsoft.ReactNative/ReactInstanceSettings.idl +7 -23
  240. package/Microsoft.ReactNative/ReactNativeHost.cpp +10 -35
  241. package/Microsoft.ReactNative/ReactNativeHost.h +0 -1
  242. package/Microsoft.ReactNative/ReactNativeIsland.idl +0 -4
  243. package/Microsoft.ReactNative/ReactPackageBuilder.cpp +9 -36
  244. package/Microsoft.ReactNative/ReactPackageBuilder.h +4 -38
  245. package/Microsoft.ReactNative/RedBox.cpp +9 -362
  246. package/Microsoft.ReactNative/Theme.idl +0 -2
  247. package/Microsoft.ReactNative/Timer.cpp +3 -2
  248. package/Microsoft.ReactNative/Utils/Helpers.cpp +0 -47
  249. package/Microsoft.ReactNative/Utils/Helpers.h +0 -5
  250. package/Microsoft.ReactNative/Utils/KeyboardUtils.cpp +0 -11
  251. package/Microsoft.ReactNative/Utils/ThemeUtils.cpp +0 -4
  252. package/Microsoft.ReactNative/Utils/ThemeUtils.h +1 -5
  253. package/Microsoft.ReactNative/Utils/UwpPreparedScriptStore.h +0 -2
  254. package/Microsoft.ReactNative/Utils/ValueUtils.cpp +0 -245
  255. package/Microsoft.ReactNative/Utils/ValueUtils.h +0 -23
  256. package/Microsoft.ReactNative/ViewProps.idl +0 -2
  257. package/Microsoft.ReactNative/Views/DevMenu.cpp +2 -278
  258. package/Microsoft.ReactNative/Views/DevMenu.h +0 -5
  259. package/Microsoft.ReactNative/XamlApplication.cpp +71 -0
  260. package/Microsoft.ReactNative/XamlApplication.h +47 -0
  261. package/Microsoft.ReactNative/XamlApplication.idl +19 -0
  262. package/Microsoft.ReactNative/XamlUIService.cpp +0 -54
  263. package/Microsoft.ReactNative/XamlUIService.h +0 -12
  264. package/Microsoft.ReactNative/XamlUIService.idl +0 -12
  265. package/Microsoft.ReactNative.Cxx/CppWinRTIncludes.h +0 -19
  266. package/Microsoft.ReactNative.Cxx/DesktopWindowBridge.h +1 -1
  267. package/Microsoft.ReactNative.Cxx/JSI/decorator.h +191 -114
  268. package/Microsoft.ReactNative.Cxx/JSI/instrumentation.h +5 -0
  269. package/Microsoft.ReactNative.Cxx/JSI/jsi-inl.h +37 -0
  270. package/Microsoft.ReactNative.Cxx/JSI/jsi.cpp +68 -0
  271. package/Microsoft.ReactNative.Cxx/JSI/jsi.h +77 -11
  272. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +2 -2
  273. package/Microsoft.ReactNative.Cxx/NamespaceRedirect.h +0 -5
  274. package/Microsoft.ReactNative.Cxx/NodeApiJsiRuntime.cpp +93 -1
  275. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModule.cpp +4 -3
  276. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModule.h +2 -2
  277. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModuleUtils.cpp +2 -55
  278. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModuleUtils.h +4 -8
  279. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Class.h +5 -0
  280. package/Microsoft.ReactNative.Cxx/ReactCommon/react/timing/primitives.h +44 -4
  281. package/Microsoft.ReactNative.Cxx/ReactContext.h +0 -13
  282. package/Microsoft.ReactNative.Cxx/UI.Composition.Effects.h +0 -4
  283. package/Microsoft.ReactNative.Cxx/UI.Composition.h +0 -4
  284. package/Microsoft.ReactNative.Cxx/UI.Input.h +0 -4
  285. package/Microsoft.ReactNative.Cxx/UI.Popups.h +0 -4
  286. package/Microsoft.ReactNative.Cxx/UI.Text.h +0 -4
  287. package/Microsoft.ReactNative.Cxx/XamlUtils.h +0 -33
  288. package/Microsoft.ReactNative.Managed/JSValueReader.cs +0 -4
  289. package/Microsoft.ReactNative.Managed/Microsoft.ReactNative.Managed.csproj +0 -3
  290. package/Microsoft.ReactNative.Managed/ReactContext.cs +0 -5
  291. package/Microsoft.ReactNative.Managed/ReactContextGenerator.cs +0 -4
  292. package/Microsoft.ReactNative.Managed/ReactPackageBuilderExtensions.cs +0 -25
  293. package/Microsoft.ReactNative.Managed/ReactSettingsSnapshot.cs +0 -4
  294. package/Microsoft.ReactNative.Managed/ReflectionReactPackageProvider.cs +1 -2
  295. package/Microsoft.ReactNative.Managed.CodeGen/CodeAnalyzer.cs +0 -10
  296. package/Microsoft.ReactNative.Managed.CodeGen/CodeGenerator.ViewManager.cs +0 -36
  297. package/Microsoft.ReactNative.Managed.CodeGen/CodeGenerator.cs +0 -6
  298. package/Microsoft.ReactNative.Managed.CodeGen/Model/ReactAssembly.cs +0 -2
  299. package/Microsoft.ReactNative.Managed.CodeGen/Model/ReactTypes.cs +0 -2
  300. package/Microsoft.ReactNative.Managed.CodeGen/ReactNativeNames.cs +0 -2
  301. package/Mso/src/dispatchQueue/queueService.cpp +3 -1
  302. package/Mso/src/dispatchQueue/uiScheduler_winrt.cpp +2 -10
  303. package/PropertySheets/Bundle.Common.targets +1 -1
  304. package/PropertySheets/Bundle.props +3 -4
  305. package/PropertySheets/External/Microsoft.ReactNative.Common.props +0 -1
  306. package/PropertySheets/External/Microsoft.ReactNative.Uwp.CSharpApp.targets +1 -1
  307. package/PropertySheets/External/Microsoft.ReactNative.Uwp.CppApp.targets +1 -1
  308. package/PropertySheets/Generated/PackageVersion.g.props +4 -4
  309. package/PropertySheets/JSEngine.props +1 -1
  310. package/PropertySheets/NuGet.LockFile.props +0 -8
  311. package/PropertySheets/OutputMSBuildProperties.targets +0 -1
  312. package/PropertySheets/React.Cpp.props +3 -5
  313. package/PropertySheets/Warnings.props +1 -2
  314. package/PropertySheets/WinUI.props +3 -3
  315. package/README.md +1 -5
  316. package/ReactCommon/ReactCommon.vcxproj +12 -31
  317. package/ReactCommon/ReactCommon.vcxproj.filters +0 -3
  318. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/CxxNativeModule.cpp +3 -2
  319. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp +5 -2
  320. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/TraceSection.h +20 -4
  321. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +113 -1
  322. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp +14 -6
  323. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/Utf8.h +1 -0
  324. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.cpp +351 -0
  325. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModule.h +2 -2
  326. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/dom/NativeDOM.cpp +42 -36
  327. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/dom/NativeDOM.h +15 -3
  328. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +1 -1
  329. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/image/conversions.h +174 -0
  330. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/BaseParagraphProps.cpp +174 -0
  331. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/BaseParagraphProps.h +69 -0
  332. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/ParagraphShadowNode.cpp +1 -0
  333. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h +26 -3
  334. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h +1 -1
  335. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/ShadowNode.cpp +1 -1
  336. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/imagemanager/primitives.h +189 -0
  337. package/ReactCommon/TEMP_UntilReactCommonUpdate/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +27 -8
  338. package/ReactCommon/cgmanifest.json +1 -1
  339. package/Scripts/Microsoft.ReactNative.nuspec +15 -33
  340. package/Scripts/NuGetRestoreForceEvaluateAllSolutions.ps1 +23 -23
  341. package/Scripts/OfficeReact.Win32.nuspec +0 -3
  342. package/Scripts/creaternwapp.cmd +1 -1
  343. package/Scripts/rnw-dependencies.ps1 +15 -1
  344. package/Shared/DevServerHelper.h +17 -21
  345. package/Shared/DevSettings.h +1 -25
  346. package/Shared/DevSupportManager.cpp +0 -50
  347. package/Shared/DevSupportManager.h +0 -4
  348. package/Shared/Hermes/HermesRuntimeTargetDelegate.cpp +5 -1
  349. package/Shared/HermesRuntimeHolder.cpp +0 -31
  350. package/Shared/HermesRuntimeHolder.h +0 -14
  351. package/Shared/IDevSupportManager.h +0 -6
  352. package/Shared/InstanceManager.cpp +0 -97
  353. package/Shared/InstanceManager.h +0 -53
  354. package/Shared/JSI/ScriptStore.h +1 -1
  355. package/Shared/Logging.cpp +1 -12
  356. package/Shared/Modules/CxxModuleUtilities.cpp +0 -9
  357. package/Shared/Modules/CxxModuleUtilities.h +0 -8
  358. package/Shared/Networking/OriginPolicyHttpFilter.cpp +9 -1
  359. package/Shared/OInstance.cpp +144 -424
  360. package/Shared/OInstance.h +0 -81
  361. package/Shared/Shared.vcxitems +83 -203
  362. package/Shared/Shared.vcxitems.filters +7 -69
  363. package/Shared/Threading/MessageQueueThreadFactory.cpp +0 -6
  364. package/Shared/Threading/MessageQueueThreadFactory.h +0 -4
  365. package/Shared/TurboModuleManager.cpp +0 -4
  366. package/Shared/Utils.cpp +26 -0
  367. package/Shared/Utils.h +3 -0
  368. package/codegen/NativeDOMSpec.g.h +41 -35
  369. package/codegen/NativeIntersectionObserverSpec.g.h +9 -21
  370. package/codegen/NativePerformanceSpec.g.h +53 -35
  371. package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +183 -129
  372. package/codegen/react/components/rnwcore/EventEmitters.cpp +25 -0
  373. package/codegen/react/components/rnwcore/EventEmitters.h +25 -0
  374. package/codegen/react/components/rnwcore/Props.cpp +41 -2
  375. package/codegen/react/components/rnwcore/Props.h +51 -2
  376. package/codegen/react/components/rnwcore/VirtualView.g.h +4 -0
  377. package/codegen/react/components/rnwcore/VirtualViewExperimental.g.h +240 -0
  378. package/codegen/rnwcoreJSI-generated.cpp +534 -467
  379. package/codegen/rnwcoreJSI.h +165 -66
  380. package/fmt/cgmanifest.json +1 -1
  381. package/fmt/fmt.vcxproj +0 -8
  382. package/index.js +14 -2
  383. package/index.windows.js +14 -2
  384. package/jest/local-setup.js +2 -2
  385. package/jest/mock.js +1 -1
  386. package/jest/mockComponent.js +9 -9
  387. package/jest/mockNativeComponent.js +3 -2
  388. package/jest/mocks/Modal.js +1 -1
  389. package/jest/mocks/ScrollView.js +1 -1
  390. package/jest/mocks/ViewNativeComponent.js +1 -1
  391. package/jest/setup.js +23 -12
  392. package/just-task.js +14 -0
  393. package/package.json +31 -31
  394. package/src/private/animated/NativeAnimatedHelper.js +16 -5
  395. package/src/private/animated/createAnimatedPropsHook.js +11 -60
  396. package/src/private/animated/createAnimatedPropsMemoHook.js +8 -54
  397. package/src/private/components/virtualview/VirtualView.js +43 -12
  398. package/src/private/components/virtualview/VirtualViewExperimentalNativeComponent.js +93 -0
  399. package/src/private/components/virtualview/VirtualViewNativeComponent.js +6 -0
  400. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +2 -2
  401. package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +2 -2
  402. package/src/private/featureflags/ReactNativeFeatureFlags.js +85 -52
  403. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +23 -4
  404. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +15 -6
  405. package/src/private/renderer/errorhandling/ErrorHandlers.js +3 -3
  406. package/src/private/setup/{setUpPerformanceObserver.js → setUpPerformanceModern.js} +43 -18
  407. package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +1 -1
  408. package/src/private/specs_DEPRECATED/modules/NativeTiming.js +1 -0
  409. package/src/private/types/HostInstance.js +4 -1
  410. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +22 -2
  411. package/src/private/webapis/dom/nodes/ReactNativeElement.js +1 -1
  412. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +5 -3
  413. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +16 -13
  414. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +45 -22
  415. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +1 -1
  416. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +26 -192
  417. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +15 -12
  418. package/src/private/webapis/dom/oldstylecollections/NodeList.js +14 -11
  419. package/src/private/webapis/geometry/DOMRectList.js +2 -2
  420. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +19 -74
  421. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +0 -4
  422. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +1 -1
  423. package/src/private/webapis/performance/EventTiming.js +40 -25
  424. package/src/private/webapis/performance/LongTasks.js +35 -2
  425. package/src/private/webapis/performance/Performance.js +347 -166
  426. package/src/private/webapis/performance/PerformanceEntry.js +40 -23
  427. package/src/private/webapis/performance/PerformanceObserver.js +37 -29
  428. package/src/private/webapis/performance/ReactNativeStartupTiming.js +3 -24
  429. package/src/private/webapis/performance/ResourceTiming.js +29 -18
  430. package/src/private/webapis/performance/UserTiming.js +92 -34
  431. package/src/private/webapis/performance/UserTimingExtensibility.js.flow +38 -0
  432. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +3 -4
  433. package/src/private/webapis/performance/internals/Utilities.js +9 -0
  434. package/src/private/webapis/performance/specs/NativePerformance.js +23 -23
  435. package/src/private/webapis/structuredClone/structuredClone.js +10 -10
  436. package/stubs/double-conversion/README.md +1 -1
  437. package/template/cpp-lib/proj/MyLib.sln +0 -5
  438. package/template/cpp-lib/src/pch.h +0 -5
  439. package/template/cs-lib/proj/MyLib.sln +0 -5
  440. package/template/metro.config.js +1 -0
  441. package/templates/cpp-app/metro.config.js +2 -1
  442. package/templates/cpp-app/windows/MyApp.sln +0 -5
  443. package/templates/cpp-lib/example/metro.config.js +3 -4
  444. package/templates/cpp-lib/windows/MyLib.sln +0 -5
  445. package/Chakra/Chakra.vcxitems +0 -32
  446. package/Chakra/Chakra.vcxitems.filters +0 -54
  447. package/Chakra/ChakraHelpers.cpp +0 -468
  448. package/Chakra/ChakraHelpers.h +0 -146
  449. package/Chakra/ChakraInstanceArgs.h +0 -52
  450. package/Chakra/ChakraPlatform.cpp +0 -42
  451. package/Chakra/ChakraPlatform.h +0 -51
  452. package/Chakra/ChakraTracing.cpp +0 -275
  453. package/Chakra/ChakraTracing.h +0 -11
  454. package/Chakra/ChakraUtils.cpp +0 -190
  455. package/Chakra/ChakraUtils.h +0 -72
  456. package/Chakra/ChakraValue.cpp +0 -257
  457. package/Chakra/ChakraValue.h +0 -308
  458. package/Chakra/Utf8DebugExtensions.cpp +0 -62
  459. package/Chakra/Utf8DebugExtensions.h +0 -29
  460. package/Libraries/Interaction/InteractionManagerStub.js +0 -184
  461. package/Libraries/Interaction/TaskQueue.js +0 -183
  462. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +0 -31
  463. package/Microsoft.ReactNative/ABICxxModule.cpp +0 -51
  464. package/Microsoft.ReactNative/ABICxxModule.h +0 -38
  465. package/Microsoft.ReactNative/ABIViewManager.cpp +0 -263
  466. package/Microsoft.ReactNative/ABIViewManager.h +0 -100
  467. package/Microsoft.ReactNative/Base/CoreUIManagers.cpp +0 -55
  468. package/Microsoft.ReactNative/DevMenuControl.cpp +0 -14
  469. package/Microsoft.ReactNative/DevMenuControl.h +0 -20
  470. package/Microsoft.ReactNative/DevMenuControl.idl +0 -28
  471. package/Microsoft.ReactNative/DevMenuControl.xaml +0 -139
  472. package/Microsoft.ReactNative/GlyphViewManager.cpp +0 -167
  473. package/Microsoft.ReactNative/GlyphViewManager.h +0 -24
  474. package/Microsoft.ReactNative/INativeUIManager.h +0 -75
  475. package/Microsoft.ReactNative/IViewManager.idl +0 -120
  476. package/Microsoft.ReactNative/IViewManagerCore.idl +0 -45
  477. package/Microsoft.ReactNative/LayoutService.cpp +0 -51
  478. package/Microsoft.ReactNative/LayoutService.h +0 -32
  479. package/Microsoft.ReactNative/LayoutService.idl +0 -41
  480. package/Microsoft.ReactNative/Modules/NativeUIManager.cpp +0 -1187
  481. package/Microsoft.ReactNative/Modules/NativeUIManager.h +0 -128
  482. package/Microsoft.ReactNative/Modules/PaperUIManagerModule.cpp +0 -891
  483. package/Microsoft.ReactNative/Modules/PaperUIManagerModule.h +0 -185
  484. package/Microsoft.ReactNative/NativeModulesProvider.cpp +0 -49
  485. package/Microsoft.ReactNative/NativeModulesProvider.h +0 -25
  486. package/Microsoft.ReactNative/ReactApplication.cpp +0 -276
  487. package/Microsoft.ReactNative/ReactApplication.h +0 -156
  488. package/Microsoft.ReactNative/ReactApplication.idl +0 -48
  489. package/Microsoft.ReactNative/ReactHost/ViewManagerProvider.h +0 -19
  490. package/Microsoft.ReactNative/ReactPointerEventArgs.cpp +0 -55
  491. package/Microsoft.ReactNative/ReactPointerEventArgs.h +0 -32
  492. package/Microsoft.ReactNative/ReactPointerEventArgs.idl +0 -79
  493. package/Microsoft.ReactNative/ReactRootView.cpp +0 -592
  494. package/Microsoft.ReactNative/ReactRootView.h +0 -127
  495. package/Microsoft.ReactNative/ReactRootView.idl +0 -40
  496. package/Microsoft.ReactNative/TestHook.cpp +0 -99
  497. package/Microsoft.ReactNative/TestHook.h +0 -15
  498. package/Microsoft.ReactNative/Utils/AccessibilityUtils.cpp +0 -36
  499. package/Microsoft.ReactNative/Utils/AccessibilityUtils.h +0 -15
  500. package/Microsoft.ReactNative/Utils/BatchingEventEmitter.cpp +0 -171
  501. package/Microsoft.ReactNative/Utils/BatchingEventEmitter.h +0 -72
  502. package/Microsoft.ReactNative/Utils/PropertyHandlerUtils.h +0 -87
  503. package/Microsoft.ReactNative/Utils/PropertyUtils.h +0 -568
  504. package/Microsoft.ReactNative/Utils/ResourceBrushUtils.cpp +0 -182
  505. package/Microsoft.ReactNative/Utils/ResourceBrushUtils.h +0 -58
  506. package/Microsoft.ReactNative/Utils/ShadowNodeTypeUtils.h +0 -26
  507. package/Microsoft.ReactNative/Utils/XamlIslandUtils.cpp +0 -93
  508. package/Microsoft.ReactNative/Utils/XamlIslandUtils.h +0 -48
  509. package/Microsoft.ReactNative/ViewManagersProvider.cpp +0 -39
  510. package/Microsoft.ReactNative/ViewManagersProvider.h +0 -27
  511. package/Microsoft.ReactNative/Views/ActivityIndicatorViewManager.cpp +0 -62
  512. package/Microsoft.ReactNative/Views/ActivityIndicatorViewManager.h +0 -29
  513. package/Microsoft.ReactNative/Views/ConfigureBundlerDlg.cpp +0 -186
  514. package/Microsoft.ReactNative/Views/ConfigureBundlerDlg.h +0 -11
  515. package/Microsoft.ReactNative/Views/ControlViewManager.cpp +0 -143
  516. package/Microsoft.ReactNative/Views/ControlViewManager.h +0 -38
  517. package/Microsoft.ReactNative/Views/DebuggingOverlayViewManager.cpp +0 -53
  518. package/Microsoft.ReactNative/Views/DebuggingOverlayViewManager.h +0 -30
  519. package/Microsoft.ReactNative/Views/DynamicAutomationPeer.cpp +0 -586
  520. package/Microsoft.ReactNative/Views/DynamicAutomationPeer.h +0 -104
  521. package/Microsoft.ReactNative/Views/DynamicAutomationProperties.cpp +0 -330
  522. package/Microsoft.ReactNative/Views/DynamicAutomationProperties.h +0 -111
  523. package/Microsoft.ReactNative/Views/DynamicValueProvider.cpp +0 -59
  524. package/Microsoft.ReactNative/Views/DynamicValueProvider.h +0 -32
  525. package/Microsoft.ReactNative/Views/ExpressionAnimationStore.cpp +0 -61
  526. package/Microsoft.ReactNative/Views/ExpressionAnimationStore.h +0 -26
  527. package/Microsoft.ReactNative/Views/FlyoutViewManager.cpp +0 -559
  528. package/Microsoft.ReactNative/Views/FlyoutViewManager.h +0 -34
  529. package/Microsoft.ReactNative/Views/FrameworkElementTransferProperties.cpp +0 -126
  530. package/Microsoft.ReactNative/Views/FrameworkElementTransferProperties.h +0 -23
  531. package/Microsoft.ReactNative/Views/FrameworkElementViewManager.cpp +0 -957
  532. package/Microsoft.ReactNative/Views/FrameworkElementViewManager.h +0 -41
  533. package/Microsoft.ReactNative/Views/IXamlRootView.h +0 -17
  534. package/Microsoft.ReactNative/Views/Image/ImageViewManager.cpp +0 -245
  535. package/Microsoft.ReactNative/Views/Image/ImageViewManager.h +0 -45
  536. package/Microsoft.ReactNative/Views/Image/ReactImage.cpp +0 -469
  537. package/Microsoft.ReactNative/Views/Image/ReactImage.h +0 -80
  538. package/Microsoft.ReactNative/Views/Image/ReactImageBrush.cpp +0 -247
  539. package/Microsoft.ReactNative/Views/Image/ReactImageBrush.h +0 -67
  540. package/Microsoft.ReactNative/Views/KeyboardEventHandler.cpp +0 -261
  541. package/Microsoft.ReactNative/Views/KeyboardEventHandler.h +0 -132
  542. package/Microsoft.ReactNative/Views/PaperShadowNode.cpp +0 -18
  543. package/Microsoft.ReactNative/Views/PaperShadowNode.h +0 -38
  544. package/Microsoft.ReactNative/Views/PopupViewManager.cpp +0 -349
  545. package/Microsoft.ReactNative/Views/PopupViewManager.h +0 -36
  546. package/Microsoft.ReactNative/Views/RawTextViewManager.cpp +0 -69
  547. package/Microsoft.ReactNative/Views/RawTextViewManager.h +0 -46
  548. package/Microsoft.ReactNative/Views/ReactViewInstance.cpp +0 -43
  549. package/Microsoft.ReactNative/Views/ReactViewInstance.h +0 -53
  550. package/Microsoft.ReactNative/Views/RefreshControlManager.cpp +0 -116
  551. package/Microsoft.ReactNative/Views/RefreshControlManager.h +0 -28
  552. package/Microsoft.ReactNative/Views/RootViewManager.cpp +0 -65
  553. package/Microsoft.ReactNative/Views/RootViewManager.h +0 -36
  554. package/Microsoft.ReactNative/Views/SIPEventHandler.cpp +0 -117
  555. package/Microsoft.ReactNative/Views/SIPEventHandler.h +0 -45
  556. package/Microsoft.ReactNative/Views/ScrollContentViewManager.cpp +0 -16
  557. package/Microsoft.ReactNative/Views/ScrollContentViewManager.h +0 -19
  558. package/Microsoft.ReactNative/Views/ScrollViewManager.cpp +0 -540
  559. package/Microsoft.ReactNative/Views/ScrollViewManager.h +0 -42
  560. package/Microsoft.ReactNative/Views/ShadowNodeBase.cpp +0 -228
  561. package/Microsoft.ReactNative/Views/ShadowNodeBase.h +0 -169
  562. package/Microsoft.ReactNative/Views/ShadowNodeRegistry.cpp +0 -68
  563. package/Microsoft.ReactNative/Views/ShadowNodeRegistry.h +0 -40
  564. package/Microsoft.ReactNative/Views/SliderViewManager.cpp +0 -97
  565. package/Microsoft.ReactNative/Views/SliderViewManager.h +0 -32
  566. package/Microsoft.ReactNative/Views/SwitchViewManager.cpp +0 -227
  567. package/Microsoft.ReactNative/Views/SwitchViewManager.h +0 -31
  568. package/Microsoft.ReactNative/Views/Text/TextHighlighterVisitor.cpp +0 -52
  569. package/Microsoft.ReactNative/Views/Text/TextHighlighterVisitor.h +0 -37
  570. package/Microsoft.ReactNative/Views/Text/TextHitTestUtils.cpp +0 -348
  571. package/Microsoft.ReactNative/Views/Text/TextHitTestUtils.h +0 -13
  572. package/Microsoft.ReactNative/Views/Text/TextHitTestVisitor.cpp +0 -76
  573. package/Microsoft.ReactNative/Views/Text/TextHitTestVisitor.h +0 -32
  574. package/Microsoft.ReactNative/Views/Text/TextParentVisitor.cpp +0 -12
  575. package/Microsoft.ReactNative/Views/Text/TextParentVisitor.h +0 -19
  576. package/Microsoft.ReactNative/Views/Text/TextPropertyChangedParentVisitor.cpp +0 -75
  577. package/Microsoft.ReactNative/Views/Text/TextPropertyChangedParentVisitor.h +0 -43
  578. package/Microsoft.ReactNative/Views/Text/TextTransformParentVisitor.cpp +0 -21
  579. package/Microsoft.ReactNative/Views/Text/TextTransformParentVisitor.h +0 -23
  580. package/Microsoft.ReactNative/Views/Text/TextTransformVisitor.cpp +0 -70
  581. package/Microsoft.ReactNative/Views/Text/TextTransformVisitor.h +0 -34
  582. package/Microsoft.ReactNative/Views/Text/TextVisitor.cpp +0 -56
  583. package/Microsoft.ReactNative/Views/Text/TextVisitor.h +0 -34
  584. package/Microsoft.ReactNative/Views/Text/TextVisitorScope.h +0 -35
  585. package/Microsoft.ReactNative/Views/Text/TextVisitors.h +0 -47
  586. package/Microsoft.ReactNative/Views/TextInputViewManager.cpp +0 -1003
  587. package/Microsoft.ReactNative/Views/TextInputViewManager.h +0 -33
  588. package/Microsoft.ReactNative/Views/TextViewManager.cpp +0 -414
  589. package/Microsoft.ReactNative/Views/TextViewManager.h +0 -47
  590. package/Microsoft.ReactNative/Views/TouchEventHandler.cpp +0 -608
  591. package/Microsoft.ReactNative/Views/TouchEventHandler.h +0 -116
  592. package/Microsoft.ReactNative/Views/UnimplementedViewManager.cpp +0 -79
  593. package/Microsoft.ReactNative/Views/UnimplementedViewManager.h +0 -27
  594. package/Microsoft.ReactNative/Views/ViewControl.cpp +0 -43
  595. package/Microsoft.ReactNative/Views/ViewControl.h +0 -32
  596. package/Microsoft.ReactNative/Views/ViewManager.h +0 -33
  597. package/Microsoft.ReactNative/Views/ViewManagerBase.cpp +0 -487
  598. package/Microsoft.ReactNative/Views/ViewManagerBase.h +0 -121
  599. package/Microsoft.ReactNative/Views/ViewPanel.cpp +0 -164
  600. package/Microsoft.ReactNative/Views/ViewPanel.h +0 -82
  601. package/Microsoft.ReactNative/Views/ViewViewManager.cpp +0 -507
  602. package/Microsoft.ReactNative/Views/ViewViewManager.h +0 -52
  603. package/Microsoft.ReactNative/Views/VirtualTextViewManager.cpp +0 -143
  604. package/Microsoft.ReactNative/Views/VirtualTextViewManager.h +0 -57
  605. package/Microsoft.ReactNative/Views/XamlFeatures.cpp +0 -11
  606. package/Microsoft.ReactNative/Views/XamlFeatures.h +0 -11
  607. package/Microsoft.ReactNative/Views/cppwinrt/AccessibilityAction.idl +0 -12
  608. package/Microsoft.ReactNative/Views/cppwinrt/DynamicAutomationPeer.idl +0 -231
  609. package/Microsoft.ReactNative/Views/cppwinrt/ViewPanel.idl +0 -48
  610. package/Microsoft.ReactNative/XamlHelper.cpp +0 -78
  611. package/Microsoft.ReactNative/XamlHelper.h +0 -54
  612. package/Microsoft.ReactNative/XamlHelper.idl +0 -30
  613. package/Microsoft.ReactNative/XamlLoadState.cpp +0 -217
  614. package/Microsoft.ReactNative/XamlLoadState.h +0 -44
  615. package/Microsoft.ReactNative/XamlView.cpp +0 -59
  616. package/Microsoft.ReactNative/XamlView.h +0 -58
  617. package/Microsoft.ReactNative/getLayoutProps.ps1 +0 -5
  618. package/Microsoft.ReactNative.Cxx/UI.Xaml.Automation.Peers.h +0 -10
  619. package/Microsoft.ReactNative.Cxx/UI.Xaml.Automation.h +0 -10
  620. package/Microsoft.ReactNative.Cxx/UI.Xaml.Controls.Primitives.h +0 -10
  621. package/Microsoft.ReactNative.Cxx/UI.Xaml.Controls.h +0 -13
  622. package/Microsoft.ReactNative.Cxx/UI.Xaml.Documents.h +0 -10
  623. package/Microsoft.ReactNative.Cxx/UI.Xaml.Hosting.DesktopWindowXamlSource.h +0 -11
  624. package/Microsoft.ReactNative.Cxx/UI.Xaml.Hosting.h +0 -10
  625. package/Microsoft.ReactNative.Cxx/UI.Xaml.Input.h +0 -10
  626. package/Microsoft.ReactNative.Cxx/UI.Xaml.Markup.h +0 -10
  627. package/Microsoft.ReactNative.Cxx/UI.Xaml.Media.Imaging.h +0 -10
  628. package/Microsoft.ReactNative.Cxx/UI.Xaml.Media.Media3D.h +0 -10
  629. package/Microsoft.ReactNative.Cxx/UI.Xaml.Media.h +0 -10
  630. package/Microsoft.ReactNative.Cxx/UI.Xaml.Navigation.h +0 -10
  631. package/Microsoft.ReactNative.Cxx/UI.Xaml.Shapes.h +0 -10
  632. package/Microsoft.ReactNative.Managed/AttributedViewManager.cs +0 -527
  633. package/Microsoft.ReactNative.Managed/ViewManagerAttributes.cs +0 -91
  634. package/Microsoft.ReactNative.Managed/ViewManagerEvent.cs +0 -13
  635. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityProps.cpp +0 -344
  636. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/DynamicEventPayload.cpp +0 -42
  637. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/YGEnums.h +0 -146
  638. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/algorithm/CalculateLayout.cpp +0 -2435
  639. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/enums/ExperimentalFeature.h +0 -40
  640. package/Shared/BatchingMessageQueueThread.h +0 -20
  641. package/Shared/ChakraRuntimeHolder.cpp +0 -62
  642. package/Shared/ChakraRuntimeHolder.h +0 -46
  643. package/Shared/CreateInstance.h +0 -25
  644. package/Shared/Executors/WebSocketJSExecutor.cpp +0 -294
  645. package/Shared/Executors/WebSocketJSExecutor.h +0 -123
  646. package/Shared/Executors/WebSocketJSExecutorFactory.cpp +0 -25
  647. package/Shared/Hermes/HermesSamplingProfiler.cpp +0 -114
  648. package/Shared/Hermes/HermesSamplingProfiler.h +0 -26
  649. package/Shared/JSI/ChakraApi.cpp +0 -436
  650. package/Shared/JSI/ChakraApi.h +0 -474
  651. package/Shared/JSI/ChakraJsiRuntime_edgemode.cpp +0 -100
  652. package/Shared/JSI/ChakraRuntime.cpp +0 -1132
  653. package/Shared/JSI/ChakraRuntime.h +0 -512
  654. package/Shared/JSI/ChakraRuntimeArgs.h +0 -45
  655. package/Shared/JSI/ChakraRuntimeFactory.h +0 -15
  656. package/Shared/JSI/JSExecutorFactoryDelegate.h +0 -12
  657. package/Shared/JSI/JSExecutorFactorySettings.cpp +0 -30
  658. package/Shared/JSI/JSExecutorFactorySettings.h +0 -21
  659. package/Shared/NativeModuleProvider.h +0 -40
  660. package/Shared/SystemChakraRuntime.h +0 -38
  661. package/Shared/Threading/BatchingQueueThread.cpp +0 -128
  662. package/Shared/Threading/BatchingQueueThread.h +0 -59
  663. package/Shared/WebSocketJSExecutorFactory.h +0 -27
  664. package/fmt/TEMP_UntilFmtUpdate/core.h +0 -2925
  665. package/template/cpp-app/proj/MyApp.sln +0 -166
  666. package/template/cpp-app/proj/MyApp.vcxproj +0 -176
  667. package/template/cpp-app/proj/MyApp.vcxproj.filters +0 -62
  668. package/template/cpp-app/src/App.cpp +0 -93
  669. package/template/cpp-app/src/App.h +0 -21
  670. package/template/cpp-app/src/App.idl +0 -3
  671. package/template/cpp-app/src/AutolinkedNativeModules.g.cpp +0 -13
  672. package/template/cpp-app/src/AutolinkedNativeModules.g.h +0 -10
  673. package/template/cpp-app/src/MainPage.cpp +0 -20
  674. package/template/cpp-app/src/MainPage.h +0 -19
  675. package/template/cpp-app/src/MainPage.idl +0 -10
  676. package/template/cpp-app/src/PropertySheet.props +0 -16
  677. package/template/cpp-app/src/ReactPackageProvider.cpp +0 -15
  678. package/template/cpp-app/src/ReactPackageProvider.h +0 -13
  679. package/template/cpp-app/src/pch.cpp +0 -1
  680. package/template/cpp-app/src/pch.h +0 -24
  681. package/template/cs-app/proj/MyApp.csproj +0 -162
  682. package/template/cs-app/proj/MyApp.sln +0 -191
  683. package/template/cs-app/src/App.xaml.cs +0 -62
  684. package/template/cs-app/src/AutolinkedNativeModules.g.cs +0 -13
  685. package/template/cs-app/src/MainPage.xaml.cs +0 -34
  686. package/template/cs-app/src/Properties/AssemblyInfo.cs +0 -29
  687. package/template/cs-app/src/Properties/Default.rd.xml +0 -32
  688. package/template/cs-app/src/ReactPackageProvider.cs +0 -17
  689. package/template/shared-app/assets/LockScreenLogo.scale-200.png +0 -0
  690. package/template/shared-app/assets/SplashScreen.scale-200.png +0 -0
  691. package/template/shared-app/assets/Square150x150Logo.scale-200.png +0 -0
  692. package/template/shared-app/assets/Square44x44Logo.scale-200.png +0 -0
  693. package/template/shared-app/assets/Square44x44Logo.targetsize-24_altform-unplated.png +0 -0
  694. package/template/shared-app/assets/StoreLogo.png +0 -0
  695. package/template/shared-app/assets/Wide310x150Logo.scale-200.png +0 -0
  696. package/template/shared-app/proj/ExperimentalFeatures.props +0 -32
  697. package/template/shared-app/proj/NuGet_Config +0 -19
  698. package/template/shared-app/src/App.xaml +0 -10
  699. package/template/shared-app/src/AutolinkedNativeModules.g.props +0 -6
  700. package/template/shared-app/src/AutolinkedNativeModules.g.targets +0 -6
  701. package/template/shared-app/src/MainPage.xaml +0 -21
  702. package/template/shared-app/src/Package.appxmanifest +0 -50
  703. package/templates/old/uwp-cpp-app/template.config.js +0 -15
  704. package/templates/old/uwp-cs-app/template.config.js +0 -15
@@ -1,468 +0,0 @@
1
- // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT License.
3
-
4
- #include "pch.h"
5
-
6
- #include "ChakraHelpers.h"
7
- #include "ChakraUtils.h"
8
- #include "ChakraValue.h"
9
- #include "Unicode.h"
10
-
11
- #ifdef WITH_FBSYSTRACE
12
- #include <fbsystrace.h>
13
- #endif
14
-
15
- #include <folly/Memory.h>
16
- #include <folly/String.h>
17
- #include <glog/logging.h>
18
-
19
- #include <cxxreact/ReactMarker.h>
20
-
21
- #include <windows.h>
22
- #include <algorithm>
23
- #include <cstdio>
24
- #include <cstdlib>
25
- #include <future>
26
- #include <memory>
27
- #include <string>
28
- #include <thread>
29
- #include <type_traits>
30
-
31
- namespace facebook {
32
- namespace react {
33
-
34
- MinimalChakraRuntime::MinimalChakraRuntime(bool multithreaded)
35
- : runtime{new JsRuntimeHandle,
36
- [](JsRuntimeHandle *h) {
37
- JsDisposeRuntime(*h);
38
- delete h;
39
- }},
40
- context{new JsContextRef, [](JsContextRef *c) {
41
- JsSetCurrentContext(JS_INVALID_REFERENCE);
42
- delete c;
43
- }} {
44
- JsErrorCode lastError = JsCreateRuntime(
45
- multithreaded ? JsRuntimeAttributeNone : JsRuntimeAttributeDisableBackgroundWork, nullptr, &(*runtime));
46
- assert(lastError == JsNoError && "JsCreateRuntime failed in MinimalChakraRuntime constructor.");
47
-
48
- lastError = JsCreateContext(*runtime, &(*context));
49
- assert(lastError == JsNoError && "JsCreateContext failed in MinimalChakraRuntime constructor.");
50
-
51
- lastError = JsSetCurrentContext(*context);
52
- assert(lastError == JsNoError && "JsSetCurrentContext failed in MinimalChakraRuntime constructor.");
53
- }
54
-
55
- JsValueRef functionCaller(
56
- JsContextRef ctx,
57
- JsValueRef /*function*/,
58
- JsValueRef thisObject,
59
- size_t argumentCount,
60
- const JsValueRef arguments[],
61
- JsValueRef * /*exception*/) {
62
- // JsContextRef ctx;
63
- // JsGetCurrentContext(&ctx);
64
- void *voidPtr;
65
- JsGetContextData(ctx, &voidPtr);
66
-
67
- auto *f = static_cast<ChakraJSFunction *>(voidPtr);
68
- return (*f)(ctx, thisObject, argumentCount, arguments);
69
- }
70
-
71
- JsValueRef makeFunction(JsValueRef name, ChakraJSFunction function) {
72
- // dealloc in kClassDef.finalize
73
- ChakraJSFunction *functionPtr = new ChakraJSFunction(std::move(function));
74
-
75
- JsValueRef value;
76
- JsCreateExternalObject(functionPtr, nullptr /*JsFinalizeCallback*/, &value);
77
-
78
- auto functionObject = ChakraObject(value);
79
- functionObject.setProperty("name", ChakraValue(name));
80
- return functionObject;
81
- }
82
-
83
- void ChakraJSException::buildMessage(JsValueRef exn, JsValueRef sourceURL, const char *errorMsg) {
84
- std::ostringstream msgBuilder;
85
- if (errorMsg && strlen(errorMsg) > 0) {
86
- msgBuilder << errorMsg << ": ";
87
- }
88
-
89
- ChakraValue exnValue = ChakraValue(exn);
90
- msgBuilder << exnValue.toString().str();
91
-
92
- // The null/empty-ness of source tells us if the JS came from a
93
- // file/resource, or was a constructed statement. The location
94
- // info will include that source, if any.
95
- std::string locationInfo = sourceURL != nullptr ? ChakraString::ref(sourceURL).str() : "";
96
- ChakraObject exnObject = exnValue.asObject();
97
- auto line = exnObject.getProperty("line");
98
- if (line != nullptr && line.isNumber()) {
99
- if (locationInfo.empty() && line.asInteger() != 1) {
100
- // If there is a non-trivial line number, but there was no
101
- // location info, we include a placeholder, and the line
102
- // number.
103
- locationInfo = folly::to<std::string>("<unknown file>:", line.asInteger());
104
- } else if (!locationInfo.empty()) {
105
- // If there is location info, we always include the line
106
- // number, regardless of its value.
107
- locationInfo += folly::to<std::string>(":", line.asInteger());
108
- }
109
- }
110
-
111
- if (!locationInfo.empty()) {
112
- msgBuilder << " (" << locationInfo << ")";
113
- }
114
-
115
- auto exceptionText = msgBuilder.str();
116
- LOG(ERROR) << "Got JS Exception: " << exceptionText;
117
- msg_ = std::move(exceptionText);
118
-
119
- ChakraValue jsStack = exnObject.getProperty("stack");
120
- if (jsStack.isString()) {
121
- auto stackText = jsStack.toString().str();
122
- LOG(ERROR) << "Got JS Stack: " << stackText;
123
- stack_ = std::move(stackText);
124
- }
125
- }
126
-
127
- JsValueRef makeFunction(const char *name, ChakraJSFunction function) {
128
- return makeFunction(ChakraString(name), std::move(function));
129
- }
130
-
131
- void installGlobalFunction(const char *name, ChakraJSFunction function) {
132
- auto jsName = ChakraString(name);
133
- auto functionObj = makeFunction(jsName, std::move(function));
134
- ChakraObject::getGlobalObject().setProperty(jsName, ChakraValue(functionObj));
135
- }
136
-
137
- JsValueRef makeFunction(const char *name, JsNativeFunction callback) {
138
- auto jsName = ChakraString(name);
139
- JsValueRef functionObj;
140
- JsCreateNamedFunction(jsName, callback, nullptr /*callbackstate*/, &functionObj);
141
- return functionObj;
142
- }
143
-
144
- void installGlobalFunction(const char *name, JsNativeFunction callback) {
145
- ChakraString jsName(name);
146
- JsValueRef functionObj;
147
- JsCreateNamedFunction(jsName, callback, nullptr /*callbackstate*/, &functionObj);
148
- ChakraObject::getGlobalObject().setProperty(jsName, ChakraValue(functionObj));
149
- }
150
-
151
- void removeGlobal(const char *name) {
152
- ChakraObject::getGlobalObject().setProperty(name, ChakraValue::makeUndefined());
153
- }
154
-
155
- JsSourceContext getNextSourceContext() {
156
- static JsSourceContext nextSourceContext = 0;
157
-
158
- return nextSourceContext++;
159
- }
160
-
161
- JsValueRef evaluateScript(JsValueRef script, JsValueRef source) {
162
- JsValueRef exn = nullptr;
163
- JsValueRef value = nullptr;
164
-
165
- const wchar_t *scriptRaw;
166
- size_t scriptRawLength;
167
- JsStringToPointer(script, &scriptRaw, &scriptRawLength);
168
-
169
- const wchar_t *sourceRaw;
170
- size_t sourceRawLength;
171
- JsStringToPointer(source, &sourceRaw, &sourceRawLength);
172
-
173
- auto result = JsRunScript(scriptRaw, JS_SOURCE_CONTEXT_NONE /*sourceContext*/, sourceRaw, &value);
174
- bool hasException = false;
175
- if (result == JsErrorInExceptionState || (JsHasException(&hasException), hasException)) {
176
- JsGetAndClearException(&exn);
177
- throw ChakraJSException(exn, source);
178
- }
179
-
180
- if (value == nullptr) {
181
- formatAndThrowJSException(exn, source);
182
- }
183
-
184
- return value;
185
- }
186
-
187
- JsValueRef evaluateScript(std::unique_ptr<const JSBigString> &&script, JsValueRef sourceURL) {
188
- ReactMarker::logMarker(ReactMarker::JS_BUNDLE_STRING_CONVERT_START);
189
- JsValueRef jsScript = jsStringFromBigString(*script.get());
190
- ReactMarker::logMarker(ReactMarker::JS_BUNDLE_STRING_CONVERT_STOP);
191
-
192
- return evaluateScript(jsScript, sourceURL);
193
- }
194
-
195
- JsValueRef evaluateScriptWithBytecode(
196
- std::unique_ptr<const JSBigString> &&script,
197
- [[maybe_unused]] uint64_t scriptVersion,
198
- JsValueRef scriptFileName,
199
- [[maybe_unused]] std::string &&bytecodeFileName,
200
- [[maybe_unused]] bool asyncBytecodeGeneration) {
201
- // TODO:
202
- // ChakraRT does not support the JsRunSerialized() API.
203
- // Hence for UWP implementation, we fall back to using the original source
204
- // code right now.
205
- return evaluateScript(std::move(script), scriptFileName);
206
- }
207
-
208
- void formatAndThrowJSException(JsValueRef exn, JsValueRef source) {
209
- ChakraValue exception = ChakraValue(exn);
210
- std::string exceptionText = exception.toString().str();
211
-
212
- // The null/empty-ness of source tells us if the JS came from a
213
- // file/resource, or was a constructed statement. The location
214
- // info will include that source, if any.
215
- std::string locationInfo = source != nullptr ? ChakraString::ref(source).str() : "";
216
- ChakraObject exObject = exception.asObject();
217
- auto line = exObject.getProperty("line");
218
- if (line != nullptr && line.isNumber()) {
219
- if (locationInfo.empty() && line.asInteger() != 1) {
220
- // If there is a non-trivial line number, but there was no
221
- // location info, we include a placeholder, and the line
222
- // number.
223
- locationInfo = folly::to<std::string>("<unknown file>:", line.asInteger());
224
- } else if (!locationInfo.empty()) {
225
- // If there is location info, we always include the line
226
- // number, regardless of its value.
227
- locationInfo += folly::to<std::string>(":", line.asInteger());
228
- }
229
- }
230
-
231
- if (!locationInfo.empty()) {
232
- exceptionText += " (" + locationInfo + ")";
233
- }
234
-
235
- LOG(ERROR) << "Got JS Exception: " << exceptionText;
236
-
237
- ChakraValue jsStack = exObject.getProperty("stack");
238
- if (jsStack.isNull() || !jsStack.isString()) {
239
- throwJSExecutionException("%s", exceptionText.c_str());
240
- } else {
241
- LOG(ERROR) << "Got JS Stack: " << jsStack.toString().str();
242
- throwJSExecutionExceptionWithStack(exceptionText.c_str(), jsStack.toString().str().c_str());
243
- }
244
- }
245
-
246
- JsValueRef translatePendingCppExceptionToJSError(const char *exceptionLocation) {
247
- std::ostringstream msg;
248
- try {
249
- throw;
250
- } catch (const std::bad_alloc &) {
251
- throw; // We probably shouldn't try to handle this in JS
252
- } catch (const std::exception &ex) {
253
- msg << "C++ Exception in '" << exceptionLocation << "': " << ex.what();
254
- return ChakraValue::makeError(msg.str().c_str());
255
- } catch (const char *ex) {
256
- msg << "C++ Exception (thrown as a char*) in '" << exceptionLocation << "': " << ex;
257
- return ChakraValue::makeError(msg.str().c_str());
258
- } catch (...) {
259
- msg << "Unknown C++ Exception in '" << exceptionLocation << "'";
260
- return ChakraValue::makeError(msg.str().c_str());
261
- }
262
- }
263
-
264
- JsValueRef translatePendingCppExceptionToJSError(JsValueRef jsFunctionCause) {
265
- try {
266
- auto functionName = ChakraObject(jsFunctionCause).getProperty("name").toString().str();
267
- return translatePendingCppExceptionToJSError(functionName.c_str());
268
- } catch (...) {
269
- return ChakraValue::makeError("Failed to get function name while handling exception");
270
- }
271
- }
272
-
273
- JsValueRef GetJSONObject() {
274
- JsValueRef globalObject;
275
- JsGetGlobalObject(&globalObject);
276
-
277
- JsPropertyIdRef propertyId;
278
- if (JsNoError != JsGetPropertyIdFromName(L"JSON", &propertyId)) {
279
- return nullptr;
280
- }
281
- JsValueRef jsonObject;
282
- if (JsNoError != JsGetProperty(globalObject, propertyId, &jsonObject)) {
283
- return nullptr;
284
- }
285
- return jsonObject;
286
- }
287
-
288
- int StringGetLength(_In_ JsValueRef string) {
289
- int length;
290
- JsGetStringLength(string, &length);
291
- return length;
292
- }
293
-
294
- JsValueRef JSObjectCallAsFunction(
295
- JsValueRef methodJSRef,
296
- JsValueRef batchedBridgeRef,
297
- unsigned nArgs,
298
- const JsValueRef args[],
299
- JsValueRef *error) {
300
- auto argsWithThis = new JsValueRef[nArgs + 1];
301
-
302
- argsWithThis[0] = batchedBridgeRef;
303
- for (unsigned i = 0; i < nArgs; i++)
304
- argsWithThis[i + 1] = args[i];
305
-
306
- JsValueRef value;
307
- auto result = JsCallFunction(
308
- methodJSRef, const_cast<JsValueRef *>(argsWithThis), static_cast<unsigned short>(nArgs + 1), &value);
309
- delete[] argsWithThis;
310
- bool hasException = false;
311
- if (result != JsNoError || (JsHasException(&hasException), hasException)) {
312
- JsGetAndClearException(error);
313
- return nullptr;
314
- }
315
- return value;
316
- }
317
-
318
- JsValueRef JSValueMakeFromJSONString(JsValueRef string) {
319
- // Handle special case with Chakra runtime where if you pass an empty string
320
- // to parseFunction it will throw an exception instead of returning nullptr
321
- if (StringGetLength(string) == 0) {
322
- JsValueRef value;
323
- JsGetNullValue(&value);
324
- return value;
325
- }
326
-
327
- auto jsonObject = GetJSONObject();
328
-
329
- JsPropertyIdRef propertyId;
330
- if (JsNoError != JsGetPropertyIdFromName(L"parse", &propertyId) || !jsonObject) {
331
- return nullptr;
332
- }
333
- JsValueRef parseFunction;
334
- if (JsNoError != JsGetProperty(jsonObject, propertyId, &parseFunction)) {
335
- return nullptr;
336
- }
337
-
338
- JsValueRef error;
339
- JsValueRef arguments[1] = {string};
340
- return JSObjectCallAsFunction(parseFunction, jsonObject, 1, arguments, &error);
341
- }
342
-
343
- JsValueRef JSValueCreateJSONString(JsValueRef value, unsigned /*indent*/, JsValueRef *error) {
344
- auto jsonObject = GetJSONObject();
345
-
346
- JsPropertyIdRef propertyId;
347
- if (JsNoError != JsGetPropertyIdFromName(L"stringify", &propertyId) || !jsonObject) {
348
- JsGetAndClearException(error);
349
- return nullptr;
350
- }
351
- JsValueRef stringifyFunction;
352
- if (JsNoError != JsGetProperty(jsonObject, propertyId, &stringifyFunction)) {
353
- JsGetAndClearException(error);
354
- return nullptr;
355
- }
356
-
357
- JsValueRef arguments[1] = {value};
358
- return JSObjectCallAsFunction(stringifyFunction, jsonObject, 1, arguments, error);
359
- }
360
-
361
- // TODO ensure proper clean up of error states in the middle of function
362
- JsValueRef JSObjectGetProperty(JsValueRef object, JsValueRef propertyName, JsValueRef *exception) {
363
- std::string propName;
364
-
365
- auto result = JsStringToStdStringUtf8(propertyName, propName);
366
- if (result == JsErrorScriptException)
367
- JsGetAndClearException(exception);
368
-
369
- JsPropertyIdRef propId = JS_INVALID_REFERENCE;
370
- result = JsGetPropertyIdFromNameUtf8(propName.c_str(), &propId);
371
- if (result == JsErrorScriptException)
372
- JsGetAndClearException(exception);
373
-
374
- JsValueRef value;
375
- result = JsGetProperty(object, propId, &value);
376
- if (result == JsErrorScriptException)
377
- JsGetAndClearException(exception);
378
- return value;
379
- }
380
-
381
- JsValueRef JSObjectGetPropertyAtIndex(JsValueRef object, unsigned propertyIndex, JsValueRef *exception) {
382
- JsValueRef index;
383
- JsIntToNumber(propertyIndex, &index);
384
- JsValueRef property;
385
- auto result = JsGetIndexedProperty(object, index, &property);
386
- if (result == JsErrorScriptException)
387
- JsGetAndClearException(exception);
388
-
389
- return property;
390
- }
391
-
392
- // Only support None
393
- void JSObjectSetProperty(
394
- JsValueRef jsObj,
395
- JsValueRef propertyName,
396
- JsValueRef value,
397
- JSPropertyAttributes /*attributes*/,
398
- JsValueRef *exception) {
399
- // TODO exception handing -- ensure proper clean up if failure in middle of
400
- // function
401
- JsPropertyIdRef propId = JS_INVALID_REFERENCE;
402
- std::string propName;
403
-
404
- auto result = JsStringToStdStringUtf8(propertyName, propName);
405
- if (result == JsErrorScriptException)
406
- JsGetAndClearException(exception);
407
- result = JsGetPropertyIdFromNameUtf8(propName.c_str(), &propId);
408
- if (result == JsErrorScriptException)
409
- JsGetAndClearException(exception);
410
- if (result == JsErrorScriptException)
411
- JsGetAndClearException(exception);
412
-
413
- // TODO - should we use strict rules?
414
- result = JsSetProperty(jsObj, propId, value, true /*useStrictRules*/);
415
- if (result == JsErrorScriptException)
416
- JsGetAndClearException(exception);
417
- }
418
-
419
- JsValueRef JSObjectCopyPropertyNames(JsValueRef object) {
420
- JsValueRef propertyNamesArrayRef;
421
- JsGetOwnPropertyNames(object, &propertyNamesArrayRef);
422
- return propertyNamesArrayRef;
423
- }
424
-
425
- unsigned JSPropertyNameArrayGetCount(JsValueRef namesRef) {
426
- JsPropertyIdRef propertyId;
427
- JsGetPropertyIdFromName(L"length", &propertyId);
428
- JsValueRef countRef;
429
- JsGetProperty(namesRef, propertyId, &countRef);
430
- int count;
431
- JsNumberToInt(countRef, &count);
432
- return count;
433
- }
434
-
435
- JsValueRef JSPropertyNameArrayGetNameAtIndex(JsValueRef namesRef, unsigned idx) {
436
- JsValueRef index;
437
- JsIntToNumber(idx, &index);
438
- JsValueRef propertyName;
439
- JsGetIndexedProperty(namesRef, index, &propertyName);
440
- return propertyName;
441
- }
442
-
443
- double JSValueToNumber(JsValueRef obj, JsValueRef *exception) {
444
- double value;
445
- auto result = JsNumberToDouble(obj, &value);
446
- if (result == JsErrorScriptException)
447
- JsGetAndClearException(exception);
448
- return value;
449
- }
450
-
451
- JsValueRef JSValueToStringCopy(JsValueRef obj, JsValueRef *exception) {
452
- JsValueRef value;
453
- auto result = JsConvertValueToString(obj, &value);
454
- if (JsNoError == result)
455
- JsAddRef(value, nullptr); // TODO is this the right lifetime semantics?
456
- else if (result == JsErrorScriptException)
457
- JsGetAndClearException(exception);
458
- return value;
459
- }
460
-
461
- JsValueRef ValueMakeUndefined() {
462
- JsValueRef value = nullptr;
463
- JsGetUndefinedValue(&value);
464
- return value;
465
- }
466
-
467
- } // namespace react
468
- } // namespace facebook
@@ -1,146 +0,0 @@
1
- // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT License.
3
-
4
- #pragma once
5
-
6
- #include "ChakraUtils.h"
7
- #include "ChakraValue.h"
8
-
9
- #include <algorithm>
10
- #include <functional>
11
- #include <stdexcept>
12
-
13
- namespace facebook {
14
- namespace react {
15
-
16
- class MinimalChakraRuntime {
17
- public:
18
- MinimalChakraRuntime(bool multithreaded);
19
-
20
- private:
21
- std::unique_ptr<JsRuntimeHandle, std::function<void(JsRuntimeHandle *)>> runtime;
22
- std::unique_ptr<JsContextRef, std::function<void(JsContextRef *)>> context;
23
- };
24
-
25
- class ChakraJSException : public std::exception {
26
- public:
27
- explicit ChakraJSException(const char *msg) : msg_(msg) {}
28
-
29
- explicit ChakraJSException(JsValueRef exn, const char *msg) {
30
- buildMessage(exn, nullptr, msg);
31
- }
32
-
33
- explicit ChakraJSException(JsValueRef exn, JsValueRef sourceURL) {
34
- buildMessage(exn, sourceURL, nullptr);
35
- }
36
-
37
- const std::string &getStack() const {
38
- return stack_;
39
- }
40
-
41
- virtual const char *what() const noexcept override {
42
- return msg_.c_str();
43
- }
44
-
45
- private:
46
- std::string msg_;
47
- std::string stack_;
48
-
49
- void buildMessage(JsValueRef exn, JsValueRef sourceURL, const char *errorMsg);
50
- };
51
-
52
- JsValueRef functionCaller(
53
- JsContextRef ctx,
54
- JsValueRef function,
55
- JsValueRef thisObject,
56
- size_t argumentCount,
57
- const JsValueRef arguments[],
58
- JsValueRef *exception);
59
-
60
- inline void throwJSExecutionException(const char *msg) {
61
- throw ChakraJSException(msg);
62
- }
63
-
64
- template <typename... Args>
65
- inline void throwJSExecutionException(const char *fmt, Args... args) {
66
- int msgSize = snprintf(nullptr, 0, fmt, args...);
67
- msgSize = std::min(512, msgSize + 1);
68
- char *msg = (char *)alloca(msgSize);
69
- snprintf(msg, msgSize, fmt, args...);
70
- throw ChakraJSException(msg);
71
- }
72
-
73
- template <typename... Args>
74
- inline void throwJSExecutionExceptionWithStack(const char * /*msg*/, const char * /*stack*/) {
75
- // throw JSException(msg, stack);
76
- }
77
-
78
- using ChakraJSFunction = std::function<JsValueRef(JsContextRef, JsValueRef, size_t, const JsValueRef[])>;
79
-
80
- JsValueRef makeFunction(JsValueRef name, ChakraJSFunction function);
81
-
82
- JsValueRef makeFunction(const char *name, ChakraJSFunction function);
83
-
84
- void installGlobalFunction(const char *name, ChakraJSFunction function);
85
-
86
- JsValueRef makeFunction(const char *name, JsNativeFunction callback);
87
-
88
- void installGlobalFunction(const char *name, JsNativeFunction callback);
89
-
90
- void removeGlobal(const char *name);
91
-
92
- JsSourceContext getNextSourceContext();
93
-
94
- JsValueRef evaluateScript(JsValueRef script, JsValueRef sourceURL);
95
-
96
- JsValueRef evaluateScript(std::unique_ptr<const JSBigString> &&script, JsValueRef sourceURL);
97
-
98
- JsValueRef evaluateScriptWithBytecode(
99
- std::unique_ptr<const JSBigString> &&script,
100
- uint64_t scriptVersion,
101
- JsValueRef scriptFileName,
102
- std::string &&bytecodeFileName,
103
- bool asyncBytecodeGeneration = true);
104
-
105
- #if WITH_FBJSCEXTENSIONS
106
- JsValueRef evaluateSourceCode(JSSourceCodeRef source, JsValueRef sourceURL);
107
- #endif
108
-
109
- void formatAndThrowJSException(JsValueRef exn, JsValueRef sourceURL);
110
-
111
- JsValueRef translatePendingCppExceptionToJSError(const char *exceptionLocation);
112
- JsValueRef translatePendingCppExceptionToJSError(JsValueRef jsFunctionCause);
113
-
114
- JsValueRef GetJSONObject();
115
- int StringGetLength(_In_ JsValueRef string);
116
- JsValueRef JSObjectCallAsFunction(
117
- JsValueRef methodJSRef,
118
- JsValueRef batchedBridgeRef,
119
- unsigned nArgs,
120
- const JsValueRef args[],
121
- JsValueRef *error);
122
- JsValueRef JSValueMakeFromJSONString(JsValueRef string);
123
- JsValueRef JSValueCreateJSONString(JsValueRef value, unsigned /*indent*/, JsValueRef *error);
124
-
125
- // TODO ensure proper clean up of error states in the middle of function
126
- JsValueRef JSObjectGetProperty(JsValueRef object, JsValueRef propertyName, JsValueRef *exception);
127
- JsValueRef JSObjectGetPropertyAtIndex(JsValueRef object, unsigned propertyIndex, JsValueRef *exception);
128
-
129
- // Only support None
130
- void JSObjectSetProperty(
131
- JsValueRef jsObj,
132
- JsValueRef propertyName,
133
- JsValueRef value,
134
- JSPropertyAttributes /*attributes*/,
135
- JsValueRef *exception);
136
-
137
- JsValueRef JSObjectCopyPropertyNames(JsValueRef object);
138
- unsigned JSPropertyNameArrayGetCount(JsValueRef namesRef);
139
- JsValueRef JSPropertyNameArrayGetNameAtIndex(JsValueRef namesRef, unsigned idx);
140
-
141
- double JSValueToNumber(JsValueRef obj, JsValueRef *exception);
142
- JsValueRef JSValueToStringCopy(JsValueRef obj, JsValueRef *exception);
143
- JsValueRef ValueMakeUndefined();
144
-
145
- } // namespace react
146
- } // namespace facebook
@@ -1,52 +0,0 @@
1
- // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT License.
3
-
4
- #pragma once
5
-
6
- #include <jsrt.h>
7
- #include "DevSettings.h"
8
-
9
- namespace facebook {
10
- namespace react {
11
-
12
- /**
13
- * @struct ChakraInstanceArgs
14
- *
15
- * @brief Arguments used during the instantiation of a Chakra Runtime.
16
- */
17
- struct ChakraInstanceArgs {
18
- /**
19
- * @brief Attributes passed to JsCreateRuntime.
20
- */
21
- JsRuntimeAttributes RuntimeAttributes = JsRuntimeAttributeNone;
22
-
23
- NativeLoggingHook LoggingCallback{};
24
-
25
- /**
26
- * @brief Whether to enable debugging for the runtime instance.
27
- */
28
- bool EnableDebugging{false};
29
-
30
- /**
31
- * @brief Whether to break on the next line when debugging.
32
- */
33
- bool DebuggerBreakOnNextLine{false};
34
-
35
- /**
36
- * @brief Whether to enable function nativePerformanceNow.
37
- */
38
- bool EnableNativePerformanceNow{true};
39
-
40
- /**
41
- * @brief Port number to use when debugging.
42
- */
43
- uint16_t DebuggerPort{9229};
44
-
45
- /**
46
- * @brief Name to associate with runtime instance when debugging.
47
- */
48
- std::string DebuggerRuntimeName;
49
- };
50
-
51
- } // namespace react
52
- } // namespace facebook
@@ -1,42 +0,0 @@
1
- // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT License.
3
-
4
- #include "pch.h"
5
-
6
- #include <cxxreact/ReactMarker.h>
7
- #include "ChakraPlatform.h"
8
-
9
- namespace facebook {
10
- namespace react {
11
-
12
- #if __clang__
13
- #pragma clang diagnostic push
14
- #pragma clang diagnostic ignored "-Wglobal-constructors"
15
- #endif
16
-
17
- namespace JSNativeHooks {
18
-
19
- LoggingHook loggingHook = nullptr;
20
- NowHook nowHook = nullptr;
21
-
22
- JsValueRef __stdcall nowHookJNF(
23
- JsValueRef /*function*/,
24
- bool /*isConstructCall*/,
25
- JsValueRef * /*arguments*/,
26
- [[maybe_unused]] unsigned short argumentCount,
27
- void * /*callbackState*/) {
28
- assert(argumentCount == 1);
29
- double now = nowHook != nullptr ? nowHook() : 0;
30
- JsValueRef value = nullptr;
31
- CHAKRA_ASSERTDO(JsDoubleToNumber(now, &value));
32
- return value;
33
- }
34
-
35
- } // namespace JSNativeHooks
36
-
37
- #if __clang__
38
- #pragma clang diagnostic pop
39
- #endif
40
-
41
- } // namespace react
42
- } // namespace facebook