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.
- package/.flowconfig +1 -3
- package/Chakra/ChakraHelpers.cpp +0 -1
- package/Directory.Build.props +3 -0
- package/Directory.Build.targets +1 -1
- package/Folly/TEMP_UntilFollyUpdate/dynamic-inl.h +1411 -0
- package/Folly/TEMP_UntilFollyUpdate/lang/ToAscii.cpp +336 -0
- package/Folly/TEMP_UntilFollyUpdate/lang/ToAscii.h +182 -0
- package/Libraries/ActionSheetIOS/ActionSheetIOS.js +7 -0
- package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +1 -0
- package/Libraries/Alert/Alert.windows.js +2 -2
- package/Libraries/Animated/AnimatedImplementation.js +1 -1
- package/Libraries/Animated/NativeAnimatedHelper.js +55 -9
- package/Libraries/Animated/NativeAnimatedModule.js +1 -0
- package/Libraries/Animated/NativeAnimatedTurboModule.js +1 -0
- package/Libraries/Animated/animations/TimingAnimation.js +6 -11
- package/Libraries/Animated/createAnimatedComponent.js +2 -2
- package/Libraries/Animated/nodes/AnimatedColor.js +95 -29
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +19 -22
- package/Libraries/Animated/nodes/AnimatedNode.js +2 -2
- package/Libraries/Animated/nodes/AnimatedValue.js +1 -1
- package/Libraries/AppState/AppState.js +1 -1
- package/Libraries/Blob/URL.js +7 -1
- package/Libraries/Components/Button.js +3 -0
- package/Libraries/Components/Button.windows.js +4 -0
- package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +5 -0
- package/Libraries/Components/Pressable/Pressable.js +3 -3
- package/Libraries/Components/Pressable/Pressable.windows.js +3 -3
- package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +47 -38
- package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +15 -7
- package/Libraries/Components/ScrollView/ScrollView.js +1 -1
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +16 -3
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +3 -1
- package/Libraries/Components/Slider/Slider.js +0 -2
- package/Libraries/Components/Slider/SliderNativeComponent.js +0 -1
- package/Libraries/Components/StatusBar/StatusBar.js +6 -1
- package/Libraries/Components/Switch/Switch.js +11 -1
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +114 -109
- package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +17 -9
- package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +13 -5
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +10 -0
- package/Libraries/Components/TextInput/TextInput.js +1 -8
- package/Libraries/Components/TextInput/TextInput.windows.js +4 -9
- package/Libraries/Components/TextInput/TextInputState.js +10 -2
- package/Libraries/Components/TextInput/TextInputState.windows.js +10 -3
- package/Libraries/Components/TextInput/WindowsTextInputNativeComponent.js +1 -1
- package/Libraries/Components/Touchable/TouchableBounce.js +1 -0
- package/Libraries/Components/Touchable/TouchableHighlight.js +1 -0
- package/Libraries/Components/Touchable/TouchableHighlight.windows.js +6 -5
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -0
- package/Libraries/Components/Touchable/TouchableOpacity.js +7 -1
- package/Libraries/Components/Touchable/TouchableOpacity.windows.js +11 -5
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +2 -0
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +2 -0
- package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -0
- package/Libraries/Components/View/ReactNativeViewAttributes.windows.js +1 -0
- package/Libraries/Components/View/View.windows.js +33 -1
- package/Libraries/Components/View/ViewNativeComponent.js +68 -8
- package/Libraries/Components/View/ViewPropTypes.js +36 -4
- package/Libraries/Components/View/ViewPropTypes.windows.js +36 -4
- package/Libraries/Core/Devtools/parseHermesStack.js +1 -1
- package/Libraries/Core/ExceptionsManager.js +1 -1
- package/Libraries/Core/RawEventEmitter.js +38 -0
- package/Libraries/Core/ReactNativeVersion.js +2 -2
- package/Libraries/Core/polyfillPromise.js +32 -0
- package/Libraries/Core/setUpReactDevTools.js +3 -2
- package/Libraries/EventEmitter/NativeEventEmitter.js +3 -3
- package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +2 -1
- package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +3 -3
- package/Libraries/Events/CustomEvent.js +32 -0
- package/Libraries/Events/EventPolyfill.js +239 -0
- package/Libraries/Image/Image.android.js +0 -6
- package/Libraries/Image/Image.ios.js +0 -6
- package/Libraries/Image/Image.windows.js +2 -8
- package/Libraries/Image/ImageViewNativeComponent.js +18 -3
- package/Libraries/Image/TextInlineImageNativeComponent.js +23 -15
- package/Libraries/Inspector/Inspector.js +2 -4
- package/Libraries/Interaction/BridgeSpyStallHandler.js +4 -3
- package/Libraries/Interaction/InteractionManager.js +1 -12
- package/Libraries/Interaction/TaskQueue.js +5 -4
- package/Libraries/LayoutAnimation/LayoutAnimation.js +13 -0
- package/Libraries/Linking/Linking.js +1 -1
- package/Libraries/Lists/FlatList.js +27 -6
- package/Libraries/Lists/VirtualizedList.js +71 -55
- package/Libraries/Lists/VirtualizedListContext.js +7 -3
- package/Libraries/Lists/VirtualizedSectionList.js +2 -2
- package/Libraries/Lists/__tests__/{FillRateHelper-test.windows.js → FillRateHelper-test.js} +2 -2
- package/Libraries/Lists/__tests__/{FlatList-test.windows.js → FlatList-test.js} +2 -2
- package/Libraries/Lists/__tests__/{SectionList-test.windows.js → SectionList-test.js} +14 -14
- package/Libraries/Lists/__tests__/{VirtualizeUtils-test.windows.js → VirtualizeUtils-test.js} +3 -3
- package/Libraries/Lists/__tests__/{VirtualizedList-test.windows.js → VirtualizedList-test.js} +91 -42
- package/Libraries/Lists/__tests__/{VirtualizedSectionList-test.windows.js → VirtualizedSectionList-test.js} +13 -13
- package/Libraries/LogBox/Data/LogBoxData.js +2 -2
- package/Libraries/LogBox/Data/LogBoxLog.js +1 -1
- package/Libraries/LogBox/Data/LogBoxSymbolication.js +1 -1
- package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
- package/Libraries/LogBox/LogBox.js +2 -21
- package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +1 -0
- package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +2 -1
- package/Libraries/NativeComponent/BaseViewConfig.android.js +295 -0
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +333 -0
- package/Libraries/NativeComponent/BaseViewConfig.windows.js +334 -0
- package/Libraries/NativeComponent/NativeComponentRegistry.js +0 -2
- package/Libraries/NativeComponent/PlatformBaseViewConfig.js +24 -0
- package/Libraries/NativeComponent/StaticViewConfigValidator.js +7 -42
- package/Libraries/NativeComponent/ViewConfig.js +4 -4
- package/Libraries/NativeComponent/ViewConfigIgnore.js +54 -0
- package/Libraries/Network/FormData.js +7 -1
- package/Libraries/Pressability/Pressability.js +115 -46
- package/Libraries/Pressability/Pressability.windows.js +190 -74
- package/Libraries/Pressability/PressabilityDebug.js +5 -9
- package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +1 -0
- package/Libraries/ReactNative/AppContainer.js +1 -1
- package/Libraries/ReactNative/{DummyUIManager.js → BridgelessUIManager.js} +62 -40
- package/Libraries/ReactNative/PaperUIManager.windows.js +5 -5
- package/Libraries/ReactNative/ReactNativeFeatureFlags.js +39 -0
- package/Libraries/ReactNative/UIManager.js +2 -3
- package/Libraries/ReactNative/renderApplication.js +4 -0
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +8 -0
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +5908 -4906
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +2100 -1918
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +2567 -2352
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +5610 -4844
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +1710 -1556
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +1830 -1639
- package/Libraries/Renderer/shims/ReactNativeTypes.js +2 -1
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +2 -1
- package/Libraries/StyleSheet/EdgeInsetsPropType.js +4 -1
- package/Libraries/StyleSheet/StyleSheetTypes.js +59 -66
- package/Libraries/StyleSheet/normalizeColor.js +1 -1
- package/Libraries/StyleSheet/private/_StyleSheetTypesOverrides.js +15 -0
- package/Libraries/StyleSheet/private/_TransformStyle.js +53 -0
- package/Libraries/StyleSheet/processTransform.windows.js +272 -0
- package/Libraries/Text/Text.js +13 -7
- package/Libraries/Text/Text.windows.js +16 -7
- package/Libraries/Text/TextNativeComponent.js +2 -0
- package/Libraries/Text/TextProps.js +10 -0
- package/Libraries/Types/CoreEventTypes.js +13 -1
- package/Libraries/Types/CoreEventTypes.windows.js +26 -1
- package/Libraries/Utilities/Appearance.js +0 -8
- package/Libraries/Utilities/HMRClient.js +1 -1
- package/Libraries/Utilities/ReactNativeTestTools.js +1 -0
- package/Libraries/Utilities/codegenNativeComponent.js +17 -6
- package/Libraries/Utilities/stringifySafe.js +4 -1
- package/Libraries/Utilities/verifyComponentAttributeEquivalence.js +3 -3
- package/Libraries/WebSocket/WebSocket.js +1 -1
- package/Libraries/vendor/emitter/_EmitterSubscription.js +1 -1
- package/Libraries/vendor/emitter/_EventEmitter.js +1 -1
- package/Libraries/vendor/emitter/_EventSubscription.js +1 -1
- package/Microsoft.ReactNative/Base/CoreNativeModules.cpp +1 -4
- package/Microsoft.ReactNative/DynamicReader.cpp +3 -3
- package/Microsoft.ReactNative/Fabric/ComponentView.h +1 -0
- package/Microsoft.ReactNative/Fabric/ComponentViewRegistry.cpp +36 -2
- package/Microsoft.ReactNative/Fabric/ComponentViewRegistry.h +1 -0
- package/Microsoft.ReactNative/Fabric/DWriteHelpers.cpp +19 -0
- package/Microsoft.ReactNative/Fabric/DWriteHelpers.h +13 -0
- package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +65 -19
- package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +2 -0
- package/Microsoft.ReactNative/Fabric/ParagraphComponentView.cpp +36 -10
- package/Microsoft.ReactNative/Fabric/ScrollViewComponentView.cpp +2 -0
- package/Microsoft.ReactNative/Fabric/SliderComponentView.cpp +107 -0
- package/Microsoft.ReactNative/Fabric/SliderComponentView.h +51 -0
- package/Microsoft.ReactNative/Fabric/SwitchComponentView.cpp +109 -0
- package/Microsoft.ReactNative/Fabric/SwitchComponentView.h +52 -0
- package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputComponentDescriptor.h +197 -0
- package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputComponentView.cpp +308 -0
- package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputComponentView.h +52 -0
- package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputEventEmitter.cpp +31 -0
- package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputEventEmitter.h +33 -0
- package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputProps.cpp +81 -0
- package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputProps.h +132 -0
- package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputShadowNode.cpp +193 -0
- package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputShadowNode.h +85 -0
- package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputState.cpp +76 -0
- package/Microsoft.ReactNative/Fabric/TextInput/WindowsTextInputState.h +99 -0
- package/Microsoft.ReactNative/Fabric/ViewComponentView.cpp +35 -3
- package/Microsoft.ReactNative/Fabric/ViewComponentView.h +1 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/rncore/EventEmitters.h +5 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/rncore/Props.h +5 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/slider/SliderMeasurementsManager.cpp +46 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/components/slider/SliderMeasurementsManager.h +30 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/Color.cpp +2 -0
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/conversions.h +1 -9
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.h +3 -1
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/TextLayoutManager.cpp +119 -57
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/TextLayoutManager.h +18 -1
- package/Microsoft.ReactNative/IViewManager.idl +3 -3
- package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +13 -107
- package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +2 -2
- package/Microsoft.ReactNative/Modules/AppStateModule.cpp +2 -0
- package/Microsoft.ReactNative/Modules/AppStateModule.h +2 -0
- package/Microsoft.ReactNative/Modules/CreateModules.cpp +3 -3
- package/Microsoft.ReactNative/Modules/NativeUIManager.cpp +7 -5
- package/Microsoft.ReactNative/Modules/TimingModule.cpp +2 -2
- package/Microsoft.ReactNative/Modules/TimingModule.h +2 -2
- package/Microsoft.ReactNative/ReactHost/{ReactContext.cpp → MsoReactContext.cpp} +1 -1
- package/Microsoft.ReactNative/ReactHost/{ReactContext.h → MsoReactContext.h} +0 -0
- package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +15 -2
- package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +1 -1
- package/Microsoft.ReactNative/ReactHost/ReactNativeHeaders.h +1 -1
- package/Microsoft.ReactNative/ReactInstanceSettings.idl +12 -2
- package/Microsoft.ReactNative/ReactPackageBuilder.cpp +1 -1
- package/Microsoft.ReactNative/ReactRootView.cpp +2 -1
- package/Microsoft.ReactNative/RedBox.cpp +3 -2
- package/Microsoft.ReactNative/TurboModulesProvider.cpp +3 -2
- package/Microsoft.ReactNative/TurboModulesProvider.h +4 -1
- package/Microsoft.ReactNative/Utils/LocalBundleReader.cpp +41 -0
- package/Microsoft.ReactNative/Utils/ValueUtils.cpp +3 -2
- package/Microsoft.ReactNative/Views/ControlViewManager.cpp +32 -0
- package/Microsoft.ReactNative/Views/ControlViewManager.h +11 -0
- package/Microsoft.ReactNative/Views/DevMenu.cpp +2 -2
- package/Microsoft.ReactNative/Views/FrameworkElementTransferProperties.cpp +13 -2
- package/Microsoft.ReactNative/Views/FrameworkElementViewManager.cpp +149 -22
- package/Microsoft.ReactNative/Views/Image/ImageViewManager.cpp +1 -1
- package/Microsoft.ReactNative/Views/Image/Microsoft.UI.Composition.Effects_Impl.h +5 -11
- package/Microsoft.ReactNative/Views/Image/ReactImage.cpp +2 -1
- package/Microsoft.ReactNative/Views/SliderViewManager.cpp +12 -4
- package/Microsoft.ReactNative/Views/TextInputViewManager.cpp +1 -1
- package/Microsoft.ReactNative/Views/TextViewManager.cpp +2 -2
- package/Microsoft.ReactNative/Views/TouchEventHandler.cpp +163 -37
- package/Microsoft.ReactNative/Views/TouchEventHandler.h +11 -4
- package/Microsoft.ReactNative/Views/ViewPanel.cpp +3 -23
- package/Microsoft.ReactNative/Views/ViewPanel.h +2 -3
- package/Microsoft.ReactNative/Views/ViewViewManager.cpp +21 -0
- package/Microsoft.ReactNative/XamlUIService.cpp +1 -1
- package/Microsoft.ReactNative/XamlView.h +8 -3
- package/Microsoft.ReactNative.Cxx/CppWinRTIncludes.h +3 -5
- package/Microsoft.ReactNative.Cxx/DesktopWindowBridge.h +1 -1
- package/Microsoft.ReactNative.Cxx/JSI/JsiAbiApi.cpp +11 -2
- package/Microsoft.ReactNative.Cxx/JSI/JsiAbiApi.h +1 -0
- package/Microsoft.ReactNative.Cxx/JSI/NodeApiJsiRuntime.cpp +19 -14
- package/Microsoft.ReactNative.Cxx/JSI/NodeApiJsiRuntime.h +4 -0
- package/Microsoft.ReactNative.Cxx/JSValueReader.h +2 -2
- package/Microsoft.ReactNative.Cxx/JSValueWriter.h +5 -5
- package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +5 -1
- package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems.filters +2 -3
- package/Microsoft.ReactNative.Cxx/NativeModules.h +3 -3
- package/Microsoft.ReactNative.Cxx/ReactContext.h +3 -3
- package/Microsoft.ReactNative.Cxx/ReactNonAbiValue.h +3 -3
- package/Microsoft.ReactNative.Cxx/XamlUtils.h +44 -5
- package/Microsoft.ReactNative.Managed/Microsoft.ReactNative.Managed.csproj +0 -6
- package/Mso/activeObject/activeObject.h +2 -2
- package/Mso/compilerAdapters/cppMacros.h +3 -5
- package/Mso/errorCode/errorProvider.h +2 -2
- package/Mso/errorCode/maybe.h +4 -4
- package/Mso/functional/functor.h +6 -6
- package/Mso/functional/functorRef.h +2 -2
- package/Mso/future/details/executor.h +2 -2
- package/Mso/future/details/futureFuncInl.h +4 -4
- package/Mso/future/details/ifuture.h +3 -3
- package/Mso/future/details/maybeInvoker.h +6 -6
- package/Mso/future/details/promiseGroupInl.h +4 -4
- package/Mso/future/details/promiseInl.h +4 -4
- package/Mso/future/details/resultTraits.h +4 -4
- package/Mso/future/details/whenAllInl.h +1 -1
- package/Mso/future/future.h +13 -13
- package/Mso/guid/msoGuidDetails.h +1 -1
- package/Mso/memoryApi/memoryApi.h +13 -7
- package/Mso/motifCpp/gTestAdapter.h +1 -1
- package/Mso/motifCpp/testInfo.h +7 -9
- package/Mso/object/make.h +8 -8
- package/Mso/object/objectRefCount.h +3 -5
- package/Mso/object/objectWithWeakRef.h +10 -14
- package/Mso/object/queryCast.h +4 -4
- package/Mso/object/refCountedObject.h +4 -4
- package/Mso/object/unknownObject.h +7 -7
- package/Mso/platformAdapters/windowsFirst.h +1 -1
- package/Mso/smartPtr/cntPtr.h +8 -8
- package/Mso/src/dispatchQueue/threadPoolScheduler_win.cpp +96 -4
- package/Mso/src/dispatchQueue/uiScheduler_winrt.cpp +2 -2
- package/Mso/src/future/futureImpl.h +1 -1
- package/Mso/src/memoryApi/memoryApi.cpp +4 -4
- package/PropertySheets/CppAppConsumeCSharpModule.props +3 -0
- package/PropertySheets/External/Microsoft.ReactNative.WinAppSDK.CSharpApp.props +26 -0
- package/PropertySheets/External/Microsoft.ReactNative.WinAppSDK.Common.props +12 -0
- package/PropertySheets/Generated/PackageVersion.g.props +3 -3
- package/PropertySheets/JSEngine.props +1 -1
- package/PropertySheets/React.Cpp.props +13 -0
- package/PropertySheets/WinUI.props +3 -6
- package/ReactCommon/ReactCommon.vcxproj +2 -4
- package/ReactCommon/ReactCommon.vcxproj.filters +4 -1
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/JSCRuntime.cpp +1480 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/decorator.h +753 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/jsi.h +1331 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +1431 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/bridging/CallbackWrapper.h +103 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModule.h +87 -0
- package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +61 -0
- package/ReactCommon/Yoga.cpp +1 -1
- package/Scripts/{Microsoft.ReactNative.ProjectReunion.nuspec → Microsoft.ReactNative.WindowsAppSDK.nuspec} +7 -9
- package/Scripts/OfficeReact.Win32.nuspec +1 -3
- package/Scripts/Tfs/Layout-MSRN-Headers.ps1 +2 -1
- package/Scripts/copyRNLibraries.js +8 -8
- package/Scripts/just.js +1 -1
- package/Scripts/rnw-dependencies.ps1 +41 -10
- package/Scripts/run-desktop-integration-tests.js +6 -6
- package/Shared/AbiSafe.h +3 -3
- package/Shared/BaseScriptStoreImpl.cpp +1 -1
- package/Shared/CppRuntimeOptions.h +50 -0
- package/Shared/CreateModules.h +4 -0
- package/Shared/DevSupportManager.cpp +34 -33
- package/Shared/DevSupportManager.h +1 -2
- package/Shared/HermesRuntimeHolder.cpp +23 -14
- package/Shared/HermesRuntimeHolder.h +8 -2
- package/Shared/IDevSupportManager.h +1 -2
- package/Shared/InspectorPackagerConnection.cpp +7 -5
- package/Shared/InspectorPackagerConnection.h +2 -2
- package/Shared/JSI/ChakraApi.cpp +0 -1
- package/Shared/JSI/ChakraRuntime.cpp +1 -2
- package/Shared/JSI/NapiJsiV8RuntimeHolder.h +1 -1
- package/Shared/JSI/RuntimeHolder.h +2 -0
- package/Shared/Modules/HttpModule.cpp +198 -0
- package/Shared/Modules/HttpModule.h +53 -0
- package/Shared/Modules/WebSocketModule.cpp +5 -1
- package/Shared/Modules/WebSocketModule.h +8 -5
- package/Shared/Networking/IHttpResource.h +53 -0
- package/Shared/{IWebSocketResource.h → Networking/IWebSocketResource.h} +3 -3
- package/Shared/Networking/OriginPolicy.h +15 -0
- package/Shared/Networking/OriginPolicyHttpFilter.cpp +746 -0
- package/Shared/Networking/OriginPolicyHttpFilter.h +112 -0
- package/Shared/Networking/WinRTHttpResource.cpp +347 -0
- package/Shared/Networking/WinRTHttpResource.h +67 -0
- package/Shared/Networking/WinRTTypes.h +30 -0
- package/Shared/{WinRTWebSocketResource.cpp → Networking/WinRTWebSocketResource.cpp} +31 -22
- package/Shared/{WinRTWebSocketResource.h → Networking/WinRTWebSocketResource.h} +3 -3
- package/Shared/OInstance.cpp +37 -11
- package/Shared/RuntimeOptions.cpp +93 -15
- package/Shared/RuntimeOptions.h +22 -9
- package/Shared/Shared.vcxitems +126 -5
- package/Shared/Shared.vcxitems.filters +55 -15
- package/Shared/Threading/BatchingQueueThread.cpp +1 -1
- package/Shared/Utils/WinRTConversions.cpp +22 -0
- package/Shared/Utils/WinRTConversions.h +15 -0
- package/Shared/tracing/fbsystrace.h +2 -2
- package/codegen/NativeActionSheetManagerSpec.g.h +6 -0
- package/codegen/NativeAnimatedModuleSpec.g.h +43 -37
- package/codegen/NativeAnimatedTurboModuleSpec.g.h +43 -37
- package/codegen/NativePushNotificationManagerIOSSpec.g.h +2 -0
- package/codegen/react/components/rnwcore/ComponentDescriptors.h +0 -1
- package/codegen/react/components/rnwcore/EventEmitters.cpp +133 -0
- package/codegen/react/components/rnwcore/EventEmitters.h +0 -18
- package/codegen/react/components/rnwcore/Props.cpp +0 -13
- package/codegen/react/components/rnwcore/Props.h +0 -16
- package/codegen/react/components/rnwcore/ShadowNodes.cpp +0 -1
- package/codegen/react/components/rnwcore/ShadowNodes.h +0 -10
- package/include/Shared/cdebug.h +9 -9
- package/index.js +30 -25
- package/index.windows.js +30 -25
- package/jest/preprocessor.js +24 -107
- package/jest/preprocessor_DO_NOT_USE.js +122 -0
- package/metro.config.js +3 -70
- package/package.json +29 -28
- package/react-native.config.js +40 -6
- package/rntypes/index.d.ts +19 -7
- package/stubs/glog/logging.h +1 -1
- package/template/cpp-app/src/App.h +0 -4
- package/template/cs-app/src/App.xaml.cs +0 -5
- package/template/cs-app/src/MainPage.xaml.cs +1 -10
- package/template/cs-app-WinAppSDK/MyApp/App.xaml +16 -0
- package/template/cs-app-WinAppSDK/MyApp/App.xaml.cs +70 -0
- package/template/cs-app-WinAppSDK/MyApp/MainWindow.xaml +14 -0
- package/template/cs-app-WinAppSDK/MyApp/MainWindow.xaml.cs +38 -0
- package/template/cs-app-WinAppSDK/MyApp/Package.appxmanifest +48 -0
- package/template/cs-app-WinAppSDK/MyApp/Properties/PublishProfiles/win10-arm64.pubxml +19 -0
- package/template/cs-app-WinAppSDK/MyApp/Properties/PublishProfiles/win10-x64.pubxml +19 -0
- package/template/cs-app-WinAppSDK/MyApp/Properties/PublishProfiles/win10-x86.pubxml +19 -0
- package/template/cs-app-WinAppSDK/MyApp/Properties/launchSettings.json +10 -0
- package/template/cs-app-WinAppSDK/MyApp/app.manifest +15 -0
- package/template/cs-app-WinAppSDK/proj/ExperimentalFeatures.props +23 -0
- package/template/cs-app-WinAppSDK/proj/MyApp.csproj +49 -0
- package/template/cs-app-WinAppSDK/proj/MyApp.sln +43 -0
- package/template/cs-app-WinAppSDK/proj/NuGet.Config +17 -0
- package/template/metro.devMode.config.js +2 -51
- package/typings-index.js +5 -1
- package/typings-index.js.map +1 -1
- package/Libraries/Components/SegmentedControlIOS/RCTSegmentedControlNativeComponent.js +0 -44
- package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.android.js +0 -45
- package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.ios.js +0 -123
- package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.windows.js +0 -45
- package/Libraries/Components/View/ReactNativeViewViewConfig.js +0 -360
- package/Libraries/Components/View/ReactNativeViewViewConfig.windows.js +0 -390
- package/Libraries/Components/View/ReactNativeViewViewConfigAndroid.js +0 -83
- package/Libraries/ReactNative/UIManagerInjection.js +0 -15
- package/Libraries/Renderer/implementations/ReactFabric-dev.fb.js +0 -24527
- package/Libraries/Renderer/implementations/ReactFabric-prod.fb.js +0 -8309
- package/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js +0 -8961
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js +0 -24948
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js +0 -8400
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js +0 -9049
- package/PropertySheets/CppEnablePackageReferences.props +0 -13
- package/Shared/IHttpResource.h +0 -34
- package/Shared/cdebug.cpp +0 -6
- 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
|
'[31m\nThis package must be built before running the bundler. Did you mean to run "[39m[33myarn build[39m[31m" first?[39m\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.
|
|
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": "^
|
|
27
|
-
"@react-native-community/cli-platform-android": "^
|
|
28
|
-
"@react-native-community/cli-platform-ios": "^
|
|
29
|
-
"@react-native-windows/cli": "0.
|
|
30
|
-
"@react-native-windows/virtualized-list": "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
|
-
"
|
|
43
|
-
"metro-
|
|
44
|
-
"metro-
|
|
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": "
|
|
49
|
-
"react-native-codegen": "^0.0.
|
|
50
|
-
"react-native-gradle-plugin": "^0.0.
|
|
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.
|
|
54
|
+
"scheduler": "^0.21.0",
|
|
55
55
|
"source-map-support": "^0.5.19",
|
|
56
56
|
"stacktrace-parser": "^0.1.3",
|
|
57
|
-
"use-subscription": "
|
|
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.
|
|
63
|
-
"@rnw-scripts/eslint-config": "1.1.
|
|
64
|
-
"@rnw-scripts/jest-out-of-tree-snapshot-resolver": "^1.0.
|
|
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": "^
|
|
68
|
-
"@types/react-native": "^0.66.
|
|
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.
|
|
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": "
|
|
77
|
-
"react-native": "
|
|
78
|
-
"react-native-platform-override": "^1.6.
|
|
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": "
|
|
85
|
-
"react-native": "
|
|
85
|
+
"react": "18.0.0",
|
|
86
|
+
"react-native": "0.69.0-rc.0"
|
|
86
87
|
},
|
|
87
88
|
"beachball": {
|
|
88
|
-
"defaultNpmTag": "
|
|
89
|
+
"defaultNpmTag": "preview",
|
|
89
90
|
"gitTags": true,
|
|
90
91
|
"disallowedChangeTypes": [
|
|
91
92
|
"major",
|
|
92
93
|
"minor",
|
|
93
|
-
"
|
|
94
|
+
"patch"
|
|
94
95
|
]
|
|
95
96
|
},
|
|
96
97
|
"files": [
|
package/react-native.config.js
CHANGED
|
@@ -1,18 +1,52 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
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
|
|
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
|
+
}
|
package/rntypes/index.d.ts
CHANGED
|
@@ -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
|
package/stubs/glog/logging.h
CHANGED
|
@@ -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
|
-
|
|
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
|
+
}
|