react-native-windows 0.68.1 → 0.69.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 (392) hide show
  1. package/.flowconfig +1 -3
  2. package/Chakra/ChakraHelpers.cpp +0 -1
  3. package/Directory.Build.props +3 -0
  4. package/Directory.Build.targets +1 -1
  5. package/Folly/TEMP_UntilFollyUpdate/dynamic-inl.h +1411 -0
  6. package/Folly/TEMP_UntilFollyUpdate/lang/ToAscii.cpp +336 -0
  7. package/Folly/TEMP_UntilFollyUpdate/lang/ToAscii.h +182 -0
  8. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +7 -0
  9. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +1 -0
  10. package/Libraries/Alert/Alert.windows.js +2 -2
  11. package/Libraries/Animated/AnimatedImplementation.js +1 -1
  12. package/Libraries/Animated/NativeAnimatedHelper.js +55 -9
  13. package/Libraries/Animated/NativeAnimatedModule.js +1 -0
  14. package/Libraries/Animated/NativeAnimatedTurboModule.js +1 -0
  15. package/Libraries/Animated/animations/TimingAnimation.js +6 -11
  16. package/Libraries/Animated/createAnimatedComponent.js +2 -2
  17. package/Libraries/Animated/nodes/AnimatedColor.js +95 -29
  18. package/Libraries/Animated/nodes/AnimatedInterpolation.js +19 -22
  19. package/Libraries/Animated/nodes/AnimatedNode.js +2 -2
  20. package/Libraries/Animated/nodes/AnimatedValue.js +1 -1
  21. package/Libraries/AppState/AppState.js +1 -1
  22. package/Libraries/Blob/URL.js +7 -1
  23. package/Libraries/Components/Button.js +3 -0
  24. package/Libraries/Components/Button.windows.js +4 -0
  25. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +5 -0
  26. package/Libraries/Components/Pressable/Pressable.js +3 -3
  27. package/Libraries/Components/Pressable/Pressable.windows.js +3 -3
  28. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +47 -38
  29. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +15 -7
  30. package/Libraries/Components/ScrollView/ScrollView.js +1 -1
  31. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +16 -3
  32. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +3 -1
  33. package/Libraries/Components/Slider/Slider.js +0 -2
  34. package/Libraries/Components/Slider/SliderNativeComponent.js +0 -1
  35. package/Libraries/Components/StatusBar/StatusBar.js +6 -1
  36. package/Libraries/Components/Switch/Switch.js +11 -1
  37. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +114 -109
  38. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +17 -9
  39. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +13 -5
  40. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +10 -0
  41. package/Libraries/Components/TextInput/TextInput.js +1 -8
  42. package/Libraries/Components/TextInput/TextInput.windows.js +4 -9
  43. package/Libraries/Components/TextInput/TextInputState.js +10 -2
  44. package/Libraries/Components/TextInput/TextInputState.windows.js +10 -3
  45. package/Libraries/Components/TextInput/WindowsTextInputNativeComponent.js +1 -1
  46. package/Libraries/Components/Touchable/TouchableBounce.js +1 -0
  47. package/Libraries/Components/Touchable/TouchableHighlight.js +1 -0
  48. package/Libraries/Components/Touchable/TouchableHighlight.windows.js +6 -5
  49. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -0
  50. package/Libraries/Components/Touchable/TouchableOpacity.js +7 -1
  51. package/Libraries/Components/Touchable/TouchableOpacity.windows.js +11 -5
  52. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +2 -0
  53. package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +2 -0
  54. package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -0
  55. package/Libraries/Components/View/ReactNativeViewAttributes.windows.js +1 -0
  56. package/Libraries/Components/View/View.windows.js +33 -1
  57. package/Libraries/Components/View/ViewNativeComponent.js +68 -8
  58. package/Libraries/Components/View/ViewPropTypes.js +36 -4
  59. package/Libraries/Components/View/ViewPropTypes.windows.js +36 -4
  60. package/Libraries/Core/Devtools/parseHermesStack.js +1 -1
  61. package/Libraries/Core/ExceptionsManager.js +1 -1
  62. package/Libraries/Core/RawEventEmitter.js +38 -0
  63. package/Libraries/Core/ReactNativeVersion.js +2 -2
  64. package/Libraries/Core/polyfillPromise.js +32 -0
  65. package/Libraries/Core/setUpReactDevTools.js +3 -2
  66. package/Libraries/EventEmitter/NativeEventEmitter.js +3 -3
  67. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +2 -1
  68. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +3 -3
  69. package/Libraries/Events/CustomEvent.js +32 -0
  70. package/Libraries/Events/EventPolyfill.js +239 -0
  71. package/Libraries/Image/Image.android.js +0 -6
  72. package/Libraries/Image/Image.ios.js +0 -6
  73. package/Libraries/Image/Image.windows.js +2 -8
  74. package/Libraries/Image/ImageViewNativeComponent.js +18 -3
  75. package/Libraries/Image/TextInlineImageNativeComponent.js +23 -15
  76. package/Libraries/Inspector/Inspector.js +2 -4
  77. package/Libraries/Interaction/BridgeSpyStallHandler.js +4 -3
  78. package/Libraries/Interaction/InteractionManager.js +1 -12
  79. package/Libraries/Interaction/TaskQueue.js +5 -4
  80. package/Libraries/LayoutAnimation/LayoutAnimation.js +13 -0
  81. package/Libraries/Linking/Linking.js +1 -1
  82. package/Libraries/Lists/FlatList.js +27 -6
  83. package/Libraries/Lists/VirtualizedList.js +71 -55
  84. package/Libraries/Lists/VirtualizedListContext.js +7 -3
  85. package/Libraries/Lists/VirtualizedSectionList.js +2 -2
  86. package/Libraries/Lists/__tests__/{FillRateHelper-test.windows.js → FillRateHelper-test.js} +2 -2
  87. package/Libraries/Lists/__tests__/{FlatList-test.windows.js → FlatList-test.js} +2 -2
  88. package/Libraries/Lists/__tests__/{SectionList-test.windows.js → SectionList-test.js} +14 -14
  89. package/Libraries/Lists/__tests__/{VirtualizeUtils-test.windows.js → VirtualizeUtils-test.js} +3 -3
  90. package/Libraries/Lists/__tests__/{VirtualizedList-test.windows.js → VirtualizedList-test.js} +91 -42
  91. package/Libraries/Lists/__tests__/{VirtualizedSectionList-test.windows.js → VirtualizedSectionList-test.js} +13 -13
  92. package/Libraries/LogBox/Data/LogBoxData.js +2 -2
  93. package/Libraries/LogBox/Data/LogBoxLog.js +1 -1
  94. package/Libraries/LogBox/Data/LogBoxSymbolication.js +1 -1
  95. package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
  96. package/Libraries/LogBox/LogBox.js +2 -21
  97. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +1 -0
  98. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +2 -1
  99. package/Libraries/NativeComponent/BaseViewConfig.android.js +295 -0
  100. package/Libraries/NativeComponent/BaseViewConfig.ios.js +333 -0
  101. package/Libraries/NativeComponent/BaseViewConfig.windows.js +334 -0
  102. package/Libraries/NativeComponent/NativeComponentRegistry.js +0 -2
  103. package/Libraries/NativeComponent/PlatformBaseViewConfig.js +24 -0
  104. package/Libraries/NativeComponent/StaticViewConfigValidator.js +7 -42
  105. package/Libraries/NativeComponent/ViewConfig.js +4 -4
  106. package/Libraries/NativeComponent/ViewConfigIgnore.js +54 -0
  107. package/Libraries/Network/FormData.js +7 -1
  108. package/Libraries/Pressability/Pressability.js +115 -46
  109. package/Libraries/Pressability/Pressability.windows.js +190 -74
  110. package/Libraries/Pressability/PressabilityDebug.js +5 -9
  111. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +1 -0
  112. package/Libraries/ReactNative/AppContainer.js +1 -1
  113. package/Libraries/ReactNative/{DummyUIManager.js → BridgelessUIManager.js} +62 -40
  114. package/Libraries/ReactNative/PaperUIManager.windows.js +5 -5
  115. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +39 -0
  116. package/Libraries/ReactNative/UIManager.js +2 -3
  117. package/Libraries/ReactNative/renderApplication.js +4 -0
  118. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +8 -0
  119. package/Libraries/Renderer/implementations/ReactFabric-dev.js +5908 -4906
  120. package/Libraries/Renderer/implementations/ReactFabric-prod.js +2100 -1918
  121. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +2567 -2352
  122. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +5610 -4844
  123. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +1710 -1556
  124. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +1830 -1639
  125. package/Libraries/Renderer/shims/ReactNativeTypes.js +2 -1
  126. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +2 -1
  127. package/Libraries/StyleSheet/EdgeInsetsPropType.js +4 -1
  128. package/Libraries/StyleSheet/StyleSheetTypes.js +59 -66
  129. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  130. package/Libraries/StyleSheet/private/_StyleSheetTypesOverrides.js +15 -0
  131. package/Libraries/StyleSheet/private/_TransformStyle.js +53 -0
  132. package/Libraries/StyleSheet/processTransform.windows.js +272 -0
  133. package/Libraries/Text/Text.js +13 -7
  134. package/Libraries/Text/Text.windows.js +16 -7
  135. package/Libraries/Text/TextNativeComponent.js +2 -0
  136. package/Libraries/Text/TextProps.js +10 -0
  137. package/Libraries/Types/CoreEventTypes.js +13 -1
  138. package/Libraries/Types/CoreEventTypes.windows.js +26 -1
  139. package/Libraries/Utilities/Appearance.js +0 -8
  140. package/Libraries/Utilities/HMRClient.js +1 -1
  141. package/Libraries/Utilities/ReactNativeTestTools.js +1 -0
  142. package/Libraries/Utilities/codegenNativeComponent.js +17 -6
  143. package/Libraries/Utilities/stringifySafe.js +4 -1
  144. package/Libraries/Utilities/verifyComponentAttributeEquivalence.js +3 -3
  145. package/Libraries/WebSocket/WebSocket.js +1 -1
  146. package/Libraries/vendor/emitter/_EmitterSubscription.js +1 -1
  147. package/Libraries/vendor/emitter/_EventEmitter.js +1 -1
  148. package/Libraries/vendor/emitter/_EventSubscription.js +1 -1
  149. package/Microsoft.ReactNative/Base/CoreNativeModules.cpp +1 -4
  150. package/Microsoft.ReactNative/DynamicReader.cpp +3 -3
  151. package/Microsoft.ReactNative/Fabric/ComponentView.h +1 -0
  152. package/Microsoft.ReactNative/Fabric/ComponentViewRegistry.cpp +36 -2
  153. package/Microsoft.ReactNative/Fabric/ComponentViewRegistry.h +1 -0
  154. package/Microsoft.ReactNative/Fabric/DWriteHelpers.cpp +19 -0
  155. package/Microsoft.ReactNative/Fabric/DWriteHelpers.h +13 -0
  156. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +65 -19
  157. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +2 -0
  158. package/Microsoft.ReactNative/Fabric/ParagraphComponentView.cpp +36 -10
  159. package/Microsoft.ReactNative/Fabric/ScrollViewComponentView.cpp +2 -0
  160. package/Microsoft.ReactNative/Fabric/SliderComponentView.cpp +107 -0
  161. package/Microsoft.ReactNative/Fabric/SliderComponentView.h +51 -0
  162. package/Microsoft.ReactNative/Fabric/SwitchComponentView.cpp +109 -0
  163. package/Microsoft.ReactNative/Fabric/SwitchComponentView.h +52 -0
  164. package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputComponentDescriptor.h +197 -0
  165. package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputComponentView.cpp +308 -0
  166. package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputComponentView.h +52 -0
  167. package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputEventEmitter.cpp +31 -0
  168. package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputEventEmitter.h +33 -0
  169. package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputProps.cpp +81 -0
  170. package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputProps.h +132 -0
  171. package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputShadowNode.cpp +193 -0
  172. package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputShadowNode.h +85 -0
  173. package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputState.cpp +76 -0
  174. package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputState.h +99 -0
  175. package/Microsoft.ReactNative/Fabric/ViewComponentView.cpp +35 -3
  176. package/Microsoft.ReactNative/Fabric/ViewComponentView.h +1 -0
  177. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/rncore/EventEmitters.h +5 -0
  178. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/rncore/Props.h +5 -0
  179. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/slider/SliderMeasurementsManager.cpp +46 -0
  180. package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/slider/SliderMeasurementsManager.h +30 -0
  181. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/Color.cpp +2 -0
  182. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/conversions.h +1 -9
  183. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.h +3 -1
  184. package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/TextLayoutManager.cpp +119 -57
  185. package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/TextLayoutManager.h +18 -1
  186. package/Microsoft.ReactNative/IViewManager.idl +3 -3
  187. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +13 -107
  188. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +2 -2
  189. package/Microsoft.ReactNative/Modules/AppStateModule.cpp +2 -0
  190. package/Microsoft.ReactNative/Modules/AppStateModule.h +2 -0
  191. package/Microsoft.ReactNative/Modules/CreateModules.cpp +3 -3
  192. package/Microsoft.ReactNative/Modules/NativeUIManager.cpp +7 -5
  193. package/Microsoft.ReactNative/Modules/TimingModule.cpp +2 -2
  194. package/Microsoft.ReactNative/Modules/TimingModule.h +2 -2
  195. package/Microsoft.ReactNative/ReactHost/{ReactContext.cpp → MsoReactContext.cpp} +1 -1
  196. package/Microsoft.ReactNative/ReactHost/{ReactContext.h → MsoReactContext.h} +0 -0
  197. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +15 -2
  198. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +1 -1
  199. package/Microsoft.ReactNative/ReactHost/ReactNativeHeaders.h +1 -1
  200. package/Microsoft.ReactNative/ReactInstanceSettings.idl +12 -2
  201. package/Microsoft.ReactNative/ReactPackageBuilder.cpp +1 -1
  202. package/Microsoft.ReactNative/ReactRootView.cpp +2 -1
  203. package/Microsoft.ReactNative/RedBox.cpp +3 -2
  204. package/Microsoft.ReactNative/TurboModulesProvider.cpp +3 -2
  205. package/Microsoft.ReactNative/TurboModulesProvider.h +4 -1
  206. package/Microsoft.ReactNative/Utils/LocalBundleReader.cpp +41 -0
  207. package/Microsoft.ReactNative/Utils/ValueUtils.cpp +3 -2
  208. package/Microsoft.ReactNative/Views/ControlViewManager.cpp +32 -0
  209. package/Microsoft.ReactNative/Views/ControlViewManager.h +11 -0
  210. package/Microsoft.ReactNative/Views/DevMenu.cpp +2 -2
  211. package/Microsoft.ReactNative/Views/FrameworkElementTransferProperties.cpp +13 -2
  212. package/Microsoft.ReactNative/Views/FrameworkElementViewManager.cpp +149 -22
  213. package/Microsoft.ReactNative/Views/Image/ImageViewManager.cpp +1 -1
  214. package/Microsoft.ReactNative/Views/Image/Microsoft.UI.Composition.Effects_Impl.h +5 -11
  215. package/Microsoft.ReactNative/Views/Image/ReactImage.cpp +2 -1
  216. package/Microsoft.ReactNative/Views/SliderViewManager.cpp +12 -4
  217. package/Microsoft.ReactNative/Views/TextInputViewManager.cpp +1 -1
  218. package/Microsoft.ReactNative/Views/TextViewManager.cpp +2 -2
  219. package/Microsoft.ReactNative/Views/TouchEventHandler.cpp +163 -37
  220. package/Microsoft.ReactNative/Views/TouchEventHandler.h +11 -4
  221. package/Microsoft.ReactNative/Views/ViewPanel.cpp +3 -23
  222. package/Microsoft.ReactNative/Views/ViewPanel.h +2 -3
  223. package/Microsoft.ReactNative/Views/ViewViewManager.cpp +21 -0
  224. package/Microsoft.ReactNative/XamlUIService.cpp +1 -1
  225. package/Microsoft.ReactNative/XamlView.h +8 -3
  226. package/Microsoft.ReactNative.Cxx/CppWinRTIncludes.h +3 -5
  227. package/Microsoft.ReactNative.Cxx/DesktopWindowBridge.h +1 -1
  228. package/Microsoft.ReactNative.Cxx/JSI/JsiAbiApi.cpp +11 -2
  229. package/Microsoft.ReactNative.Cxx/JSI/JsiAbiApi.h +1 -0
  230. package/Microsoft.ReactNative.Cxx/JSI/NodeApiJsiRuntime.cpp +19 -14
  231. package/Microsoft.ReactNative.Cxx/JSI/NodeApiJsiRuntime.h +4 -0
  232. package/Microsoft.ReactNative.Cxx/JSValueReader.h +2 -2
  233. package/Microsoft.ReactNative.Cxx/JSValueWriter.h +5 -5
  234. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +5 -1
  235. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems.filters +2 -3
  236. package/Microsoft.ReactNative.Cxx/NativeModules.h +3 -3
  237. package/Microsoft.ReactNative.Cxx/ReactContext.h +3 -3
  238. package/Microsoft.ReactNative.Cxx/ReactNonAbiValue.h +3 -3
  239. package/Microsoft.ReactNative.Cxx/XamlUtils.h +44 -5
  240. package/Microsoft.ReactNative.Managed/Microsoft.ReactNative.Managed.csproj +0 -6
  241. package/Mso/activeObject/activeObject.h +2 -2
  242. package/Mso/compilerAdapters/cppMacros.h +3 -5
  243. package/Mso/errorCode/errorProvider.h +2 -2
  244. package/Mso/errorCode/maybe.h +4 -4
  245. package/Mso/functional/functor.h +6 -6
  246. package/Mso/functional/functorRef.h +2 -2
  247. package/Mso/future/details/executor.h +2 -2
  248. package/Mso/future/details/futureFuncInl.h +4 -4
  249. package/Mso/future/details/ifuture.h +3 -3
  250. package/Mso/future/details/maybeInvoker.h +6 -6
  251. package/Mso/future/details/promiseGroupInl.h +4 -4
  252. package/Mso/future/details/promiseInl.h +4 -4
  253. package/Mso/future/details/resultTraits.h +4 -4
  254. package/Mso/future/details/whenAllInl.h +1 -1
  255. package/Mso/future/future.h +13 -13
  256. package/Mso/guid/msoGuidDetails.h +1 -1
  257. package/Mso/memoryApi/memoryApi.h +13 -7
  258. package/Mso/motifCpp/gTestAdapter.h +1 -1
  259. package/Mso/motifCpp/testInfo.h +7 -9
  260. package/Mso/object/make.h +8 -8
  261. package/Mso/object/objectRefCount.h +3 -5
  262. package/Mso/object/objectWithWeakRef.h +10 -14
  263. package/Mso/object/queryCast.h +4 -4
  264. package/Mso/object/refCountedObject.h +4 -4
  265. package/Mso/object/unknownObject.h +7 -7
  266. package/Mso/platformAdapters/windowsFirst.h +1 -1
  267. package/Mso/smartPtr/cntPtr.h +8 -8
  268. package/Mso/src/dispatchQueue/threadPoolScheduler_win.cpp +96 -4
  269. package/Mso/src/dispatchQueue/uiScheduler_winrt.cpp +2 -2
  270. package/Mso/src/future/futureImpl.h +1 -1
  271. package/Mso/src/memoryApi/memoryApi.cpp +4 -4
  272. package/PropertySheets/CppAppConsumeCSharpModule.props +3 -0
  273. package/PropertySheets/External/Microsoft.ReactNative.WinAppSDK.CSharpApp.props +26 -0
  274. package/PropertySheets/External/Microsoft.ReactNative.WinAppSDK.Common.props +12 -0
  275. package/PropertySheets/Generated/PackageVersion.g.props +3 -3
  276. package/PropertySheets/JSEngine.props +1 -1
  277. package/PropertySheets/React.Cpp.props +13 -0
  278. package/PropertySheets/WinUI.props +3 -6
  279. package/ReactCommon/ReactCommon.vcxproj +2 -4
  280. package/ReactCommon/ReactCommon.vcxproj.filters +4 -1
  281. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/JSCRuntime.cpp +1480 -0
  282. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/decorator.h +753 -0
  283. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/jsi.h +1331 -0
  284. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +1431 -0
  285. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/CallbackWrapper.h +103 -0
  286. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModule.h +87 -0
  287. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +61 -0
  288. package/ReactCommon/Yoga.cpp +1 -1
  289. package/Scripts/{Microsoft.ReactNative.ProjectReunion.nuspec → Microsoft.ReactNative.WindowsAppSDK.nuspec} +7 -9
  290. package/Scripts/OfficeReact.Win32.nuspec +1 -3
  291. package/Scripts/Tfs/Layout-MSRN-Headers.ps1 +2 -1
  292. package/Scripts/copyRNLibraries.js +8 -8
  293. package/Scripts/just.js +1 -1
  294. package/Scripts/rnw-dependencies.ps1 +41 -10
  295. package/Scripts/run-desktop-integration-tests.js +6 -6
  296. package/Shared/AbiSafe.h +3 -3
  297. package/Shared/BaseScriptStoreImpl.cpp +1 -1
  298. package/Shared/CppRuntimeOptions.h +50 -0
  299. package/Shared/CreateModules.h +4 -0
  300. package/Shared/DevSupportManager.cpp +34 -33
  301. package/Shared/DevSupportManager.h +1 -2
  302. package/Shared/HermesRuntimeHolder.cpp +23 -14
  303. package/Shared/HermesRuntimeHolder.h +8 -2
  304. package/Shared/IDevSupportManager.h +1 -2
  305. package/Shared/InspectorPackagerConnection.cpp +7 -5
  306. package/Shared/InspectorPackagerConnection.h +2 -2
  307. package/Shared/JSI/ChakraApi.cpp +0 -1
  308. package/Shared/JSI/ChakraRuntime.cpp +1 -2
  309. package/Shared/JSI/NapiJsiV8RuntimeHolder.h +1 -1
  310. package/Shared/JSI/RuntimeHolder.h +2 -0
  311. package/Shared/Modules/HttpModule.cpp +198 -0
  312. package/Shared/Modules/HttpModule.h +53 -0
  313. package/Shared/Modules/WebSocketModule.cpp +5 -1
  314. package/Shared/Modules/WebSocketModule.h +8 -5
  315. package/Shared/Networking/IHttpResource.h +53 -0
  316. package/Shared/{IWebSocketResource.h → Networking/IWebSocketResource.h} +3 -3
  317. package/Shared/Networking/OriginPolicy.h +15 -0
  318. package/Shared/Networking/OriginPolicyHttpFilter.cpp +746 -0
  319. package/Shared/Networking/OriginPolicyHttpFilter.h +112 -0
  320. package/Shared/Networking/WinRTHttpResource.cpp +347 -0
  321. package/Shared/Networking/WinRTHttpResource.h +67 -0
  322. package/Shared/Networking/WinRTTypes.h +30 -0
  323. package/Shared/{WinRTWebSocketResource.cpp → Networking/WinRTWebSocketResource.cpp} +31 -22
  324. package/Shared/{WinRTWebSocketResource.h → Networking/WinRTWebSocketResource.h} +3 -3
  325. package/Shared/OInstance.cpp +37 -11
  326. package/Shared/RuntimeOptions.cpp +93 -15
  327. package/Shared/RuntimeOptions.h +22 -9
  328. package/Shared/Shared.vcxitems +126 -5
  329. package/Shared/Shared.vcxitems.filters +55 -15
  330. package/Shared/Threading/BatchingQueueThread.cpp +1 -1
  331. package/Shared/Utils/WinRTConversions.cpp +22 -0
  332. package/Shared/Utils/WinRTConversions.h +15 -0
  333. package/Shared/tracing/fbsystrace.h +2 -2
  334. package/codegen/NativeActionSheetManagerSpec.g.h +6 -0
  335. package/codegen/NativeAnimatedModuleSpec.g.h +43 -37
  336. package/codegen/NativeAnimatedTurboModuleSpec.g.h +43 -37
  337. package/codegen/NativePushNotificationManagerIOSSpec.g.h +2 -0
  338. package/codegen/react/components/rnwcore/ComponentDescriptors.h +0 -1
  339. package/codegen/react/components/rnwcore/EventEmitters.cpp +133 -0
  340. package/codegen/react/components/rnwcore/EventEmitters.h +0 -18
  341. package/codegen/react/components/rnwcore/Props.cpp +0 -13
  342. package/codegen/react/components/rnwcore/Props.h +0 -16
  343. package/codegen/react/components/rnwcore/ShadowNodes.cpp +0 -1
  344. package/codegen/react/components/rnwcore/ShadowNodes.h +0 -10
  345. package/include/Shared/cdebug.h +9 -9
  346. package/index.js +30 -25
  347. package/index.windows.js +30 -25
  348. package/jest/preprocessor.js +24 -107
  349. package/jest/preprocessor_DO_NOT_USE.js +122 -0
  350. package/metro.config.js +3 -70
  351. package/package.json +29 -28
  352. package/react-native.config.js +40 -6
  353. package/rntypes/index.d.ts +19 -7
  354. package/stubs/glog/logging.h +1 -1
  355. package/template/cpp-app/src/App.h +0 -4
  356. package/template/cs-app/src/App.xaml.cs +0 -5
  357. package/template/cs-app/src/MainPage.xaml.cs +1 -10
  358. package/template/cs-app-WinAppSDK/MyApp/App.xaml +16 -0
  359. package/template/cs-app-WinAppSDK/MyApp/App.xaml.cs +70 -0
  360. package/template/cs-app-WinAppSDK/MyApp/MainWindow.xaml +14 -0
  361. package/template/cs-app-WinAppSDK/MyApp/MainWindow.xaml.cs +38 -0
  362. package/template/cs-app-WinAppSDK/MyApp/Package.appxmanifest +48 -0
  363. package/template/cs-app-WinAppSDK/MyApp/Properties/PublishProfiles/win10-arm64.pubxml +19 -0
  364. package/template/cs-app-WinAppSDK/MyApp/Properties/PublishProfiles/win10-x64.pubxml +19 -0
  365. package/template/cs-app-WinAppSDK/MyApp/Properties/PublishProfiles/win10-x86.pubxml +19 -0
  366. package/template/cs-app-WinAppSDK/MyApp/Properties/launchSettings.json +10 -0
  367. package/template/cs-app-WinAppSDK/MyApp/app.manifest +15 -0
  368. package/template/cs-app-WinAppSDK/proj/ExperimentalFeatures.props +23 -0
  369. package/template/cs-app-WinAppSDK/proj/MyApp.csproj +49 -0
  370. package/template/cs-app-WinAppSDK/proj/MyApp.sln +43 -0
  371. package/template/cs-app-WinAppSDK/proj/NuGet.Config +17 -0
  372. package/template/metro.devMode.config.js +2 -51
  373. package/typings-index.js +5 -1
  374. package/typings-index.js.map +1 -1
  375. package/Libraries/Components/SegmentedControlIOS/RCTSegmentedControlNativeComponent.js +0 -44
  376. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.android.js +0 -45
  377. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.ios.js +0 -123
  378. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.windows.js +0 -45
  379. package/Libraries/Components/View/ReactNativeViewViewConfig.js +0 -360
  380. package/Libraries/Components/View/ReactNativeViewViewConfig.windows.js +0 -390
  381. package/Libraries/Components/View/ReactNativeViewViewConfigAndroid.js +0 -83
  382. package/Libraries/ReactNative/UIManagerInjection.js +0 -15
  383. package/Libraries/Renderer/implementations/ReactFabric-dev.fb.js +0 -24527
  384. package/Libraries/Renderer/implementations/ReactFabric-prod.fb.js +0 -8309
  385. package/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js +0 -8961
  386. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js +0 -24948
  387. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js +0 -8400
  388. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js +0 -9049
  389. package/PropertySheets/CppEnablePackageReferences.props +0 -13
  390. package/Shared/IHttpResource.h +0 -34
  391. package/Shared/cdebug.cpp +0 -6
  392. package/include/Shared/ViewManager.h +0 -34
@@ -0,0 +1,122 @@
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
+ * @format
8
+ * @flow
9
+ */
10
+
11
+ /* eslint-env node */
12
+
13
+ 'use strict';
14
+
15
+ const babelRegisterOnly = require('metro-babel-register');
16
+ const createCacheKeyFunction =
17
+ require('@jest/create-cache-key-function').default;
18
+
19
+ const {transformSync: babelTransformSync} = require('@babel/core');
20
+ const generate = require('@babel/generator').default;
21
+
22
+ const nodeFiles = new RegExp(
23
+ [
24
+ '/metro(?:-[^/]*)?/', // metro, metro-core, metro-source-map, metro-etc.
25
+ ].join('|'),
26
+ );
27
+ const nodeOptions = babelRegisterOnly.config([nodeFiles]);
28
+
29
+ babelRegisterOnly([]);
30
+
31
+ const transformer = require('metro-react-native-babel-transformer');
32
+ module.exports = {
33
+ process(src /*: string */, file /*: string */) /*: {code: string, ...} */ {
34
+ if (nodeFiles.test(file)) {
35
+ // node specific transforms only
36
+ return babelTransformSync(src, {
37
+ filename: file,
38
+ sourceType: 'script',
39
+ ...nodeOptions,
40
+ ast: false,
41
+ });
42
+ }
43
+
44
+ const {ast} = transformer.transform({
45
+ filename: file,
46
+ options: {
47
+ ast: true, // needed for open source (?) https://github.com/facebook/react-native/commit/f8d6b97140cffe8d18b2558f94570c8d1b410d5c#r28647044
48
+ dev: true,
49
+ enableBabelRuntime: false,
50
+ experimentalImportSupport: false,
51
+ globalPrefix: '',
52
+ hot: false,
53
+ inlineRequires: true,
54
+ minify: false,
55
+ platform: '',
56
+ projectRoot: '',
57
+ publicPath: '/assets',
58
+ retainLines: true,
59
+ sourceType: 'unambiguous', // b7 required. detects module vs script mode
60
+ },
61
+ src,
62
+ plugins: [
63
+ [require('@babel/plugin-transform-block-scoping')],
64
+ // the flow strip types plugin must go BEFORE class properties!
65
+ // there'll be a test case that fails if you don't.
66
+ [require('@babel/plugin-transform-flow-strip-types')],
67
+ [
68
+ require('@babel/plugin-proposal-class-properties'),
69
+ // use `this.foo = bar` instead of `this.defineProperty('foo', ...)`
70
+ {loose: true},
71
+ ],
72
+ [require('@babel/plugin-transform-computed-properties')],
73
+ [require('@babel/plugin-transform-destructuring')],
74
+ [require('@babel/plugin-transform-function-name')],
75
+ [require('@babel/plugin-transform-literals')],
76
+ [require('@babel/plugin-transform-parameters')],
77
+ [require('@babel/plugin-transform-shorthand-properties')],
78
+ [require('@babel/plugin-transform-react-jsx')],
79
+ [require('@babel/plugin-transform-regenerator')],
80
+ [require('@babel/plugin-transform-sticky-regex')],
81
+ [require('@babel/plugin-transform-unicode-regex')],
82
+ [
83
+ require('@babel/plugin-transform-modules-commonjs'),
84
+ {strict: false, allowTopLevelThis: true},
85
+ ],
86
+ [require('@babel/plugin-transform-classes')],
87
+ [require('@babel/plugin-transform-arrow-functions')],
88
+ [require('@babel/plugin-transform-spread')],
89
+ [require('@babel/plugin-proposal-object-rest-spread')],
90
+ [
91
+ require('@babel/plugin-transform-template-literals'),
92
+ {loose: true}, // dont 'a'.concat('b'), just use 'a'+'b'
93
+ ],
94
+ [require('@babel/plugin-transform-exponentiation-operator')],
95
+ [require('@babel/plugin-transform-for-of'), {loose: true}],
96
+ [require('@babel/plugin-transform-react-display-name')],
97
+ [require('@babel/plugin-transform-react-jsx-source')],
98
+ ],
99
+ });
100
+
101
+ return generate(
102
+ ast,
103
+ // $FlowFixMe[prop-missing] Error found when improving flow typing for libs
104
+ {
105
+ code: true,
106
+ comments: false,
107
+ compact: false,
108
+ filename: file,
109
+ retainLines: true,
110
+ sourceFileName: file,
111
+ sourceMaps: true,
112
+ },
113
+ src,
114
+ );
115
+ },
116
+
117
+ getCacheKey: (createCacheKeyFunction([
118
+ __filename,
119
+ require.resolve('metro-react-native-babel-transformer'),
120
+ require.resolve('@babel/core/package.json'),
121
+ ]) /*: any */),
122
+ };
package/metro.config.js CHANGED
@@ -3,76 +3,6 @@
3
3
  */
4
4
  const fs = require('fs');
5
5
  const path = require('path');
6
- const rnwPath = __dirname;
7
- const {resolve} = require('metro-resolver');
8
- const exclusionList = require('metro-config/src/defaults/exclusionList');
9
-
10
- const virtualizedListPath = fs.realpathSync(
11
- path.resolve(
12
- require.resolve('@react-native-windows/virtualized-list/package.json'),
13
- '..',
14
- ),
15
- );
16
-
17
- function reactNativePlatformResolver(platformImplementations) {
18
- return (context, _realModuleName, platform, moduleName) => {
19
- let backupResolveRequest = context.resolveRequest;
20
- delete context.resolveRequest;
21
-
22
- try {
23
- let modifiedModuleName = moduleName;
24
- if (platformImplementations[platform]) {
25
- if (moduleName === 'react-native') {
26
- modifiedModuleName = platformImplementations[platform];
27
- } else if (moduleName.startsWith('react-native/')) {
28
- modifiedModuleName = `${
29
- platformImplementations[platform]
30
- }/${modifiedModuleName.slice('react-native/'.length)}`;
31
- }
32
- }
33
- let result = resolve(context, modifiedModuleName, platform);
34
- return result;
35
- } catch (e) {
36
- throw e;
37
- } finally {
38
- context.resolveRequest = backupResolveRequest;
39
- }
40
- };
41
- }
42
-
43
- module.exports = {
44
- // WatchFolders is only needed due to the yarn workspace layout of node_modules, we need to watch the symlinked locations separately
45
- watchFolders: [
46
- // Include hoisted modules
47
- path.resolve(__dirname, '../node_modules'),
48
- // Add virtualized-list dependency, whose unsymlinked representation is not in node_modules, only in our repo
49
- virtualizedListPath,
50
- ],
51
-
52
- resolver: {
53
- resolveRequest: reactNativePlatformResolver({
54
- windows: 'react-native-windows',
55
- }),
56
- extraNodeModules: {
57
- // Redirect react-native-windows to this folder
58
- 'react-native-windows': rnwPath,
59
- '@react-native-windows/virtualized-list': virtualizedListPath,
60
- },
61
- blockList: exclusionList([
62
- // Avoid error EBUSY: resource busy or locked, open '...\vnext\msbuild.ProjectImports.zip' when building 'vnext\Microsoft.ReactNative.sln' with '/bl'
63
- /.*\.ProjectImports\.zip/,
64
- ]),
65
- },
66
-
67
- transformer: {
68
- getTransformOptions: async () => ({
69
- transform: {
70
- experimentalImportSupport: false,
71
- inlineRequires: true,
72
- },
73
- }),
74
- },
75
- };
76
6
 
77
7
  // Check that we have built our JS files before running the bundler, otherwise we'll get a harder to diagnose "Unable to resolve module" error
78
8
  if (
@@ -87,3 +17,6 @@ if (
87
17
  '\nThis package must be built before running the bundler. Did you mean to run "yarn build" first?\n',
88
18
  );
89
19
  }
20
+
21
+ const {makeMetroConfig} = require('@rnw-scripts/metro-dev-config');
22
+ module.exports = makeMetroConfig();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-windows",
3
- "version": "0.68.1",
3
+ "version": "0.69.0-preview.1",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -23,74 +23,75 @@
23
23
  "dependencies": {
24
24
  "@babel/runtime": "^7.0.0",
25
25
  "@jest/create-cache-key-function": "^27.0.1",
26
- "@react-native-community/cli": "^7.0.3",
27
- "@react-native-community/cli-platform-android": "^7.0.1",
28
- "@react-native-community/cli-platform-ios": "^7.0.1",
29
- "@react-native-windows/cli": "0.68.1",
30
- "@react-native-windows/virtualized-list": "0.68.0",
26
+ "@react-native-community/cli": "^8.0.0-alpha.4",
27
+ "@react-native-community/cli-platform-android": "^8.0.0-alpha.3",
28
+ "@react-native-community/cli-platform-ios": "^8.0.0-alpha.3",
29
+ "@react-native-windows/cli": "0.69.0-preview.1",
30
+ "@react-native-windows/virtualized-list": "0.69.0-preview.1",
31
31
  "@react-native/assets": "1.0.0",
32
32
  "@react-native/normalize-color": "2.0.0",
33
33
  "@react-native/polyfills": "2.0.0",
34
34
  "abort-controller": "^3.0.0",
35
35
  "anser": "^1.4.9",
36
36
  "base64-js": "^1.1.2",
37
- "deprecated-react-native-prop-types": "^2.3.0",
38
37
  "event-target-shim": "^5.0.1",
39
38
  "hermes-engine": "~0.11.0",
40
39
  "invariant": "^2.2.4",
41
40
  "jsc-android": "^250230.2.1",
42
- "metro-react-native-babel-transformer": "0.67.0",
43
- "metro-runtime": "0.67.0",
44
- "metro-source-map": "0.67.0",
41
+ "memoize-one": "^5.0.0",
42
+ "metro-react-native-babel-transformer": "0.70.1",
43
+ "metro-runtime": "0.70.1",
44
+ "metro-source-map": "0.70.1",
45
45
  "nullthrows": "^1.1.1",
46
46
  "pretty-format": "^26.5.2",
47
47
  "promise": "^8.0.3",
48
- "react-devtools-core": "^4.23.0",
49
- "react-native-codegen": "^0.0.13",
50
- "react-native-gradle-plugin": "^0.0.5",
48
+ "react-devtools-core": "4.24.0",
49
+ "react-native-codegen": "^0.0.15",
50
+ "react-native-gradle-plugin": "^0.0.7",
51
51
  "react-refresh": "^0.4.0",
52
52
  "react-shallow-renderer": "16.14.1",
53
53
  "regenerator-runtime": "^0.13.2",
54
- "scheduler": "^0.20.2",
54
+ "scheduler": "^0.21.0",
55
55
  "source-map-support": "^0.5.19",
56
56
  "stacktrace-parser": "^0.1.3",
57
- "use-subscription": "^1.0.0",
57
+ "use-subscription": ">=1.0.0 <1.6.0",
58
58
  "whatwg-fetch": "^3.0.0",
59
59
  "ws": "^6.1.4"
60
60
  },
61
61
  "devDependencies": {
62
- "@react-native-windows/codegen": "0.68.0",
63
- "@rnw-scripts/eslint-config": "1.1.10",
64
- "@rnw-scripts/jest-out-of-tree-snapshot-resolver": "^1.0.4",
62
+ "@react-native-windows/codegen": "0.69.0-preview.1",
63
+ "@rnw-scripts/eslint-config": "1.1.12",
64
+ "@rnw-scripts/jest-out-of-tree-snapshot-resolver": "^1.0.6",
65
+ "@rnw-scripts/metro-dev-config": "0.0.0",
65
66
  "@rnx-kit/jest-preset": "^0.1.0",
66
67
  "@types/node": "^14.14.22",
67
- "@types/react": "^17.0.21",
68
- "@types/react-native": "^0.66.0",
68
+ "@types/react": "^18.0.0",
69
+ "@types/react-native": "^0.66.17",
69
70
  "eslint": "^7.32.0",
70
71
  "eslint-plugin-prettier": "^4.0.0",
71
- "flow-bin": "^0.170.0",
72
+ "flow-bin": "^0.176.3",
72
73
  "jscodeshift": "^0.13.1",
73
74
  "just-scripts": "^1.3.3",
74
75
  "metro-config": "^0.67.0",
75
76
  "prettier": "^2.4.1",
76
- "react": "17.0.2",
77
- "react-native": "^0.68.0",
78
- "react-native-platform-override": "^1.6.4",
77
+ "react": "18.0.0",
78
+ "react-native": "0.69.0-rc.0",
79
+ "react-native-platform-override": "^1.6.11",
79
80
  "react-refresh": "^0.4.0",
80
81
  "react-shallow-renderer": "16.14.1",
81
82
  "typescript": "^4.4.4"
82
83
  },
83
84
  "peerDependencies": {
84
- "react": "17.0.2",
85
- "react-native": "^0.68.0"
85
+ "react": "18.0.0",
86
+ "react-native": "0.69.0-rc.0"
86
87
  },
87
88
  "beachball": {
88
- "defaultNpmTag": "latest",
89
+ "defaultNpmTag": "preview",
89
90
  "gitTags": true,
90
91
  "disallowedChangeTypes": [
91
92
  "major",
92
93
  "minor",
93
- "prerelease"
94
+ "patch"
94
95
  ]
95
96
  },
96
97
  "files": [
@@ -1,18 +1,52 @@
1
- // @ts-check
2
- require('source-map-support').install();
1
+ /**
2
+ * Copyright (c) Microsoft Corporation.
3
+ * Licensed under the MIT License.
4
+ *
5
+ * @ts check
6
+ * @format
7
+ */
3
8
 
4
9
  const cli = require('@react-native-windows/cli');
5
10
 
6
11
  module.exports = {
7
12
  // **** This section defined commands and options on how to provide the Windows platform to external applications
8
- commands: cli.commands,
13
+ commands: cli.commands.map(command => ({
14
+ ...command,
15
+ func: lazyInstallSourcemaps(command.func),
16
+ })),
9
17
  platforms: {
10
18
  windows: {
11
19
  linkConfig: () => null,
12
- projectConfig: cli.projectConfig,
13
- dependencyConfig: cli.dependencyConfig,
20
+ projectConfig: lazyInstallSourcemaps(cli.projectConfig),
21
+ dependencyConfig: lazyInstallSourcemaps(cli.dependencyConfig),
14
22
  npmPackageName: 'react-native-windows',
15
23
  },
16
24
  },
17
- healthChecks: cli.getHealthChecks()
25
+ get healthChecks() {
26
+ return cli.getHealthChecks();
27
+ },
18
28
  };
29
+
30
+ // We ship compiled JavaScript to end-users running the CLI. We use
31
+ // "source-map-support" to install a sourcemap-aware exception handler, so that
32
+ // stack traces shown to end-users (and included in our issues), resolve
33
+ // correctly to the TS sources. Resolution is only done when an exception occurs,
34
+ // but there is some initial overhead to installing the exception handler.
35
+ //
36
+ // We want to do this before our code is hooked, to ensure the handler is
37
+ // installed, but doing this as part of global initialization adds a cost to
38
+ // anyone who depends on `react-native-windows`, and parses their
39
+ // `react-native.config`, regardless of whether they call the functions. We
40
+ // delay installing the support from require-time, to function invocation time,
41
+ // which should catch most cases without the penalty.
42
+ let sourcemapSupportInstalled = false;
43
+ function lazyInstallSourcemaps(fn) {
44
+ return (...args) => {
45
+ if (!sourcemapSupportInstalled) {
46
+ require('source-map-support').install();
47
+ sourcemapSupportInstalled = true;
48
+ }
49
+
50
+ return fn(...args);
51
+ };
52
+ }
@@ -31,7 +31,6 @@
31
31
  // Dominique Richard <https://github.com/doumart>
32
32
  // Mohamed Shaban <https://github.com/drmas>
33
33
  // Jérémy Barbet <https://github.com/jeremybarbet>
34
- // Christian Ost <https://github.com/ca057>
35
34
  // David Sheldrick <https://github.com/ds300>
36
35
  // Natsathorn Yuthakovit <https://github.com/natsathorn>
37
36
  // ConnectDotz <https://github.com/connectdotz>
@@ -41,6 +40,7 @@
41
40
  // Arafat Zahan <https://github.com/kuasha420>
42
41
  // Pedro Hernández <https://github.com/phvillegas>
43
42
  // Sebastian Silbermann <https://github.com/eps1lon>
43
+ // Zihan Chen <https://github.com/ZihanChen-MSFT>
44
44
  // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
45
45
  // TypeScript Version: 3.0
46
46
 
@@ -3220,12 +3220,6 @@ export interface RefreshControlPropsAndroid extends ViewProps {
3220
3220
  * Size of the refresh indicator, see RefreshControl.SIZE.
3221
3221
  */
3222
3222
  size?: number | undefined;
3223
-
3224
- /**
3225
- * Progress view top offset
3226
- * @platform android
3227
- */
3228
- progressViewOffset?: number | undefined;
3229
3223
  }
3230
3224
 
3231
3225
  export interface RefreshControlProps extends RefreshControlPropsIOS, RefreshControlPropsAndroid {
@@ -3238,6 +3232,11 @@ export interface RefreshControlProps extends RefreshControlPropsIOS, RefreshCont
3238
3232
  * Whether the view should be indicating an active refresh.
3239
3233
  */
3240
3234
  refreshing: boolean;
3235
+
3236
+ /**
3237
+ * Progress view top offset
3238
+ */
3239
+ progressViewOffset?: number | undefined;
3241
3240
  }
3242
3241
 
3243
3242
  /**
@@ -9159,6 +9158,19 @@ export interface ImageStoreStatic {
9159
9158
  getBase64ForTag(uri: string, success: (base64ImageData: string) => void, failure: (error: any) => void): void;
9160
9159
  }
9161
9160
 
9161
+ //
9162
+ // Turbo Module
9163
+ //
9164
+
9165
+ export interface TurboModule {
9166
+ getConstants?(): {}
9167
+ }
9168
+
9169
+ export const TurboModuleRegistry: {
9170
+ get<T extends TurboModule>(name: string): T | null;
9171
+ getEnforcing<T extends TurboModule>(name: string): T;
9172
+ }
9173
+
9162
9174
  //
9163
9175
  // Interfacing with Native Modules
9164
9176
  // https://reactnative.dev/docs/native-modules-ios
@@ -74,7 +74,7 @@ typedef int LogSeverity;
74
74
  inline void FlushLogFiles(LogSeverity min_severity) {}
75
75
 
76
76
  #define google GlogStub
77
- static const int INFO = 1;
77
+ static const int GLOG_INFO = 1;
78
78
 
79
79
  #endif
80
80
 
@@ -4,11 +4,7 @@
4
4
 
5
5
  #include <CppWinRTIncludes.h>
6
6
 
7
- #ifdef USE_WINUI3
8
- namespace activation = winrt::Microsoft::UI::Xaml;
9
- #else
10
7
  namespace activation = winrt::Windows::ApplicationModel::Activation;
11
- #endif
12
8
 
13
9
  namespace winrt::{{ namespaceCpp }}::implementation
14
10
  {
@@ -1,12 +1,7 @@
1
1
  using Microsoft.ReactNative;
2
- #if USE_WINUI3
3
- using Microsoft.UI.Xaml;
4
- using Microsoft.UI.Xaml.Controls;
5
- #else
6
2
  using Windows.ApplicationModel.Activation;
7
3
  using Windows.UI.Xaml;
8
4
  using Windows.UI.Xaml.Controls;
9
- #endif
10
5
 
11
6
  namespace {{ namespace }}
12
7
  {
@@ -6,7 +6,6 @@ using System.Linq;
6
6
  using System.Runtime.InteropServices.WindowsRuntime;
7
7
  using Windows.Foundation;
8
8
  using Windows.Foundation.Collections;
9
- #if !USE_WINUI3
10
9
  using Windows.UI.Xaml;
11
10
  using Windows.UI.Xaml.Controls;
12
11
  using Windows.UI.Xaml.Controls.Primitives;
@@ -14,15 +13,7 @@ using Windows.UI.Xaml.Data;
14
13
  using Windows.UI.Xaml.Input;
15
14
  using Windows.UI.Xaml.Media;
16
15
  using Windows.UI.Xaml.Navigation;
17
- #else
18
- using Microsoft.UI.Xaml;
19
- using Microsoft.UI.Xaml.Controls;
20
- using Microsoft.UI.Xaml.Controls.Primitives;
21
- using Microsoft.UI.Xaml.Data;
22
- using Microsoft.UI.Xaml.Input;
23
- using Microsoft.UI.Xaml.Media;
24
- using Microsoft.UI.Xaml.Navigation;
25
- #endif
16
+
26
17
 
27
18
  // The Blank Page item template is documented at https://go.microsoft.com/fwlink/?LinkId=234238
28
19
 
@@ -0,0 +1,16 @@
1
+ <rnw:ReactApplication
2
+ x:Class="{{ namespace }}.App"
3
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
4
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
5
+ xmlns:local="using:{{ namespace }}"
6
+ xmlns:rnw="using:Microsoft.ReactNative">
7
+ <Application.Resources>
8
+ <ResourceDictionary>
9
+ <ResourceDictionary.MergedDictionaries>
10
+ <XamlControlsResources xmlns="using:Microsoft.UI.Xaml.Controls" />
11
+ <!-- Other merged dictionaries here -->
12
+ </ResourceDictionary.MergedDictionaries>
13
+ <!-- Other app resources here -->
14
+ </ResourceDictionary>
15
+ </Application.Resources>
16
+ </rnw:ReactApplication>
@@ -0,0 +1,70 @@
1
+ using Microsoft.UI.Xaml;
2
+ using Microsoft.UI.Xaml.Controls;
3
+ using Microsoft.UI.Xaml.Controls.Primitives;
4
+ using Microsoft.UI.Xaml.Data;
5
+ using Microsoft.UI.Xaml.Input;
6
+ using Microsoft.UI.Xaml.Media;
7
+ using Microsoft.UI.Xaml.Navigation;
8
+ using Microsoft.UI.Xaml.Shapes;
9
+ using System;
10
+ using System.Collections.Generic;
11
+ using System.IO;
12
+ using System.Linq;
13
+ using System.Runtime.InteropServices.WindowsRuntime;
14
+ using Windows.ApplicationModel;
15
+ using Windows.ApplicationModel.Activation;
16
+ using Windows.Foundation;
17
+ using Windows.Foundation.Collections;
18
+
19
+ namespace {{ namespace }}
20
+ {
21
+ /// <summary>
22
+ /// Provides application-specific behavior to supplement the default Application class.
23
+ /// </summary>
24
+ public partial class App : Microsoft.ReactNative.ReactApplication
25
+ {
26
+ /// <summary>
27
+ /// Initializes the singleton application object. This is the first line of authored code
28
+ /// executed, and as such is the logical equivalent of main() or WinMain().
29
+ /// </summary>
30
+ public App()
31
+ {
32
+ #if BUNDLE
33
+ JavaScriptBundleFile = "index.windows";
34
+ InstanceSettings.UseWebDebugger = false;
35
+ InstanceSettings.UseFastRefresh = false;
36
+ #else
37
+ JavaScriptBundleFile = "index";
38
+ InstanceSettings.UseWebDebugger = true;
39
+ InstanceSettings.UseFastRefresh = true;
40
+ #endif
41
+
42
+ #if DEBUG
43
+ InstanceSettings.UseDeveloperSupport = true;
44
+ #else
45
+ InstanceSettings.UseDeveloperSupport = false;
46
+ #endif
47
+ //https://github.com/microsoft/react-native-windows/issues/9139
48
+ //Microsoft.ReactNative.AutolinkedNativeModules.RegisterAutolinkedNativeModulePackages(PackageProviders); // Includes any autolinked modules
49
+
50
+ //PackageProviders.Add(new Microsoft.ReactNative.Managed.ReactPackageProvider());
51
+
52
+ this.InitializeComponent();
53
+ }
54
+
55
+ /// <summary>
56
+ /// Invoked when the application is launched normally by the end user. Other entry points
57
+ /// will be used such as when the application is launched to open a specific file.
58
+ /// </summary>
59
+ /// <param name="args">Details about the launch request and process.</param>
60
+ protected override void OnLaunched(Microsoft.UI.Xaml.LaunchActivatedEventArgs args)
61
+ {
62
+ m_window = new MainWindow();
63
+ m_window.Title = "React Native for Windows - Windows App SDK";
64
+
65
+ m_window.Activate();
66
+ }
67
+
68
+ private Window m_window;
69
+ }
70
+ }
@@ -0,0 +1,14 @@
1
+ <Window
2
+ x:Class="{{ namespace }}.MainWindow"
3
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
4
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
5
+ xmlns:local="using:{{ namespace }}"
6
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
7
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
8
+ xmlns:rnw="using:Microsoft.ReactNative"
9
+ mc:Ignorable="d">
10
+
11
+ <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Stretch">
12
+ <rnw:ReactRootView x:Name="reactRootView" MinWidth="800" MinHeight="600" ComponentName="{{ mainComponentName }}" Background="Red" />
13
+ </StackPanel>
14
+ </Window>
@@ -0,0 +1,38 @@
1
+ using Microsoft.ReactNative;
2
+ using Microsoft.UI.Xaml;
3
+ using Microsoft.UI.Xaml.Controls;
4
+ using Microsoft.UI.Xaml.Controls.Primitives;
5
+ using Microsoft.UI.Xaml.Data;
6
+ using Microsoft.UI.Xaml.Input;
7
+ using Microsoft.UI.Xaml.Media;
8
+ using Microsoft.UI.Xaml.Navigation;
9
+ using System;
10
+ using System.Collections.Generic;
11
+ using System.IO;
12
+ using System.Linq;
13
+ using System.Runtime.InteropServices.WindowsRuntime;
14
+ using Windows.Foundation;
15
+ using Windows.Foundation.Collections;
16
+
17
+ namespace {{ namespace }}
18
+ {
19
+ /// <summary>
20
+ /// An empty window that can be used on its own or navigated to within a Frame.
21
+ /// </summary>
22
+ public sealed partial class MainWindow : Window
23
+ {
24
+ public MainWindow()
25
+ {
26
+ this.InitializeComponent();
27
+ reactRootView.Loaded += ReactRootView_Loaded;
28
+ }
29
+
30
+ private async void ReactRootView_Loaded(object sender, RoutedEventArgs e)
31
+ {
32
+ var app = Application.Current as App;
33
+ XamlUIService.SetXamlRoot(app.Host.InstanceSettings.Properties, this.Content.XamlRoot);
34
+ reactRootView.ReactNativeHost = app.Host;
35
+ await app.Host.LoadInstance();
36
+ }
37
+ }
38
+ }