<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft Corporation. Licensed under the MIT License. See LICENSE in the project root for license information. -->
<Project DefaultTargets="Build" ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup Label="Globals">
    <CppWinRTOptimized>true</CppWinRTOptimized>
    <CppWinRTRootNamespaceAutoMerge>true</CppWinRTRootNamespaceAutoMerge>
    <MinimalCoreWin>true</MinimalCoreWin>
    <ProjectGuid>{f7d32bd0-2749-483e-9a0d-1635ef7e3136}</ProjectGuid>
    <ProjectName>Microsoft.ReactNative</ProjectName>
    <RootNamespace>Microsoft.ReactNative</RootNamespace>
    <DefaultLanguage>en-US</DefaultLanguage>
    <MinimumVisualStudioVersion>17.0</MinimumVisualStudioVersion>
    <AppContainerApplication>true</AppContainerApplication>
    <ApplicationType>Windows Store</ApplicationType>
    <ApplicationTypeRevision>10.0</ApplicationTypeRevision>
    <CppWinRTNamespaceMergeDepth>
    </CppWinRTNamespaceMergeDepth>
    <CppWinRTLibs>true</CppWinRTLibs>
    <BuildMSRNCxxModule>false</BuildMSRNCxxModule>
    <BuildMSRNCxxReactCommon>false</BuildMSRNCxxReactCommon>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
  <Import Project="$(ReactNativeWindowsDir)PropertySheets\React.Cpp.props" />
  <Import Project="$(ReactNativeWindowsDir)PropertySheets\Generated\PackageVersion.g.props" />
  <Import Project="$(ReactNativeWindowsDir)PropertySheets\PackageVersionDefinitions.props" />
  <ItemGroup Label="ProjectConfigurations">
    <ProjectConfiguration Include="Debug|ARM64">
      <Configuration>Debug</Configuration>
      <Platform>ARM64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|ARM64">
      <Configuration>Release</Configuration>
      <Platform>ARM64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Debug|Win32">
      <Configuration>Debug</Configuration>
      <Platform>Win32</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|Win32">
      <Configuration>Release</Configuration>
      <Platform>Win32</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Debug|x64">
      <Configuration>Debug</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|x64">
      <Configuration>Release</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
  </ItemGroup>
  <PropertyGroup Label="Configuration">
    <ConfigurationType>DynamicLibrary</ConfigurationType>
    <CharacterSet>Unicode</CharacterSet>
    <GenerateManifest>false</GenerateManifest>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)'=='Debug'" Label="Configuration">
    <UseDebugLibraries>true</UseDebugLibraries>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)'=='Release'" Label="Configuration">
    <UseDebugLibraries>false</UseDebugLibraries>
    <WholeProgramOptimization>true</WholeProgramOptimization>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
  <!-- Include Warnings.props after Microsoft.Cpp.props to change default WarningLevel -->
  <Import Project="$(ReactNativeWindowsDir)PropertySheets\Warnings.props" />
  <ImportGroup Label="ExtensionSettings">
  </ImportGroup>
  <ImportGroup Label="Shared" />
  <Import Project="..\Chakra\Chakra.vcxitems" Label="Shared" />
  <Import Project="..\Shared\Shared.vcxitems" Label="Shared" />
  <Import Project="..\Mso\Mso.vcxitems" Label="Shared" />
  <Import Project="..\Microsoft.ReactNative.Cxx\Microsoft.ReactNative.Cxx.vcxitems" Label="Shared" />
  <ImportGroup Label="PropertySheets">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <ImportGroup Label="PropertySheets">
    <Import Project="PropertySheet.props" />
    <Import Project="..\PropertySheets\WinUI.props" />
    <!-- Added since we build this project with Paper/Fabric. -->
    <Import Project="$(ReactNativeWindowsDir)\PropertySheets\NuGet.LockFile.props" />
  </ImportGroup>
  <PropertyGroup Label="UserMacros" />
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
    <IncludePath>$(GeneratedFilesDir);$(IncludePath)</IncludePath>
  </PropertyGroup>
  <PropertyGroup Condition="'$(EnableSourceLink)' == 'true'">
    <!-- Workaround. SourceLink target overrides modify %(Link)->AdditionalOptions before ComputeXamlGeneratedCLOutputs is called. -->
    <BeforeLinkTargets>ComputeXamlGeneratedCLOutputs;$(BeforeLinkTargets)</BeforeLinkTargets>
  </PropertyGroup>
  <ItemDefinitionGroup>
    <ClCompile>
      <PrecompiledHeader>Use</PrecompiledHeader>
      <RuntimeTypeInfo Condition="'$(Configuration)'=='Debug' OR '$(UseFabric)' == 'true'">true</RuntimeTypeInfo>
      <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
      <PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
      <ForcedIncludeFiles>pch.h</ForcedIncludeFiles>
      <WarningLevel>Level4</WarningLevel>
      <AdditionalOptions>/await %(AdditionalOptions) /bigobj /ZH:SHA_256</AdditionalOptions>
      <AdditionalIncludeDirectories>
        $(FmtDir)\include;
        $(ReactNativeWindowsDir)Microsoft.ReactNative;
        $(ReactNativeWindowsDir)Microsoft.ReactNative\Fabric\platform;
        $(ReactNativeWindowsDir)Microsoft.ReactNative\Pch;
        $(ReactNativeWindowsDir)Microsoft.ReactNative\ReactHost;
        $(ReactNativeWindowsDir)Microsoft.ReactNative\Views;
        $(ReactNativeWindowsDir);
        $(ReactNativeWindowsDir)codegen;
        $(ReactNativeWindowsDir)codegen\react\components\rnwcore;
        $(ReactNativeWindowsDir)Common;
        $(ReactNativeWindowsDir)include;
        $(ReactNativeWindowsDir)Shared;
        $(ReactNativeWindowsDir)Shared\tracing;
        $(ReactNativeWindowsDir)include\Shared;
        $(YogaDir);
        $(GeneratedFilesDir);
        %(AdditionalIncludeDirectories)
      </AdditionalIncludeDirectories>
      <PreprocessorDefinitions>DISABLE_XAML_GENERATED_MAIN;FOLLY_CFG_NO_COROUTINES;FOLLY_NO_CONFIG;NOMINMAX;_HAS_AUTO_PTR_ETC;_USE_MATH_DEFINES;RN_EXPORT=;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <!--
        REACTWINDOWS_BUILD - building with REACTWINDOWS_API as dll exports
        OLD_CPPWINRT is a workaround to make target version to 19H1
      -->
      <PreprocessorDefinitions>
        DISABLE_XAML_GENERATED_MAIN;
        REACTWINDOWS_BUILD;
        RN_PLATFORM=windows;
        NOMINMAX;
        FOLLY_CFG_NO_COROUTINES;
        FOLLY_NO_CONFIG;
        RN_EXPORT=;
        JSI_EXPORT=;
        WIN32=0;
        WINRT=1;
        _HAS_AUTO_PTR_ETC;
        _USE_MATH_DEFINES;
        <!-- See https://cplusplus.github.io/LWG/issue3840 -->
        _SILENCE_CXX20_U8PATH_DEPRECATION_WARNING;
        %(PreprocessorDefinitions)
      </PreprocessorDefinitions>
      <AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
      <TreatWarningAsError>true</TreatWarningAsError>
      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
    </ClCompile>
    <Link>
      <AdditionalDependencies>winsqlite3.lib;ChakraRT.lib;dxguid.lib;dloadhelper.lib;OneCoreUap_apiset.lib;Dwmapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
      <DelayLoadDLLs>
        api-ms-win-core-file-l1-2-0.dll;
        api-ms-win-core-windowserrorreporting-l1-1-0.dll;
        ext-ms-win-uiacore-l1-1-1.dll;
        chakra.dll;
        %(DelayLoadDLLs)
      </DelayLoadDLLs>
      <SubSystem>Console</SubSystem>
      <GenerateWindowsMetadata>true</GenerateWindowsMetadata>
      <ModuleDefinitionFile>Microsoft.ReactNative.def</ModuleDefinitionFile>
    </Link>
    <Link Condition="'$(UseFabric)' == 'true'">
      <AdditionalDependencies>User32.lib;%(AdditionalDependencies)</AdditionalDependencies>
    </Link>
    <Midl>
      <AdditionalIncludeDirectories>$(ReactNativeWindowsDir)Microsoft.ReactNative\Views\cppwinrt;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
      <!-- #8430: This is needed to allow modules targeting older SDKs to consume the generated WinMD -->
      <AdditionalOptions>%(AdditionalOptions) /noattributename</AdditionalOptions>
    </Midl>
  </ItemDefinitionGroup>
  <Import Project="$(ReactNativeWindowsDir)\PropertySheets\ReactCommunity.cpp.props" />
  <ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'">
    <ClCompile>
      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </ClCompile>
    <Midl>
      <PreprocessorDefinitions Condition="'$(UseDocString)'!='false'">USE_DOCSTRING;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </Midl>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
    <ClCompile>
      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </ClCompile>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup>
    <Midl>
      <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </Midl>
    <ClCompile>
      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
    </ClCompile>
  </ItemDefinitionGroup>
  <ItemGroup>
    <ClInclude Include="ABICxxModule.h" />
    <ClInclude Include="ABIViewManager.h" />
    <ClInclude Include="Base\CxxReactIncludes.h" />
    <ClInclude Include="Base\FollyIncludes.h" />
    <ClInclude Include="ReactHost\JSCallInvokerScheduler.h" />
    <ClInclude Include="Utils\ShadowNodeTypeUtils.h" />
    <ClInclude Include="Utils\BatchingEventEmitter.h" />
    <ClInclude Include="DevMenuControl.h">
      <DependentUpon>DevMenuControl.xaml</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
    <ClInclude Include="DocString.h" />
    <ClInclude Include="DynamicReader.h">
      <DependentUpon>IJSValueReader.idl</DependentUpon>
    </ClInclude>
    <ClInclude Include="DynamicWriter.h">
      <DependentUpon>IJSValueWriter.idl</DependentUpon>
    </ClInclude>
    <ClInclude Include="JSDispatcherWriter.h">
      <DependentUpon>IJSValueWriter.idl</DependentUpon>
    </ClInclude>
    <ClInclude Include="GlyphViewManager.h" />
    <ClInclude Include="HResult.h" />
    <ClInclude Include="IReactDispatcher.h">
      <DependentUpon>IReactDispatcher.idl</DependentUpon>
    </ClInclude>
    <ClInclude Include="IReactModuleBuilder.h">
      <DependentUpon>IReactModuleBuilder.idl</DependentUpon>
    </ClInclude>
    <ClInclude Include="IReactNotificationService.h">
      <DependentUpon>IReactNotificationService.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
    <ClInclude Include="JsiReader.h">
      <DependentUpon>IJSValueReader.idl</DependentUpon>
    </ClInclude>
    <ClInclude Include="JsiWriter.h">
      <DependentUpon>IJSValueWriter.idl</DependentUpon>
    </ClInclude>
    <ClInclude Include="Modules\AccessibilityInfoModule.h" />
    <ClInclude Include="Modules\AlertModule.h" />
    <ClInclude Include="Modules\Animated\AdditionAnimatedNode.h" />
    <ClInclude Include="Modules\Animated\AnimatedNode.h" />
    <ClInclude Include="Modules\Animated\AnimatedPlatformConfig.h" />
    <ClInclude Include="Modules\Animated\AnimatedNodeType.h" />
    <ClInclude Include="Modules\Animated\AnimationDriver.h" />
    <ClInclude Include="Modules\Animated\AnimationType.h" />
    <ClInclude Include="Modules\Animated\AnimationUtils.h" />
    <ClInclude Include="Modules\Animated\CalculatedAnimationDriver.h" />
    <ClInclude Include="Modules\Animated\DecayAnimationDriver.h" />
    <ClInclude Include="Modules\Animated\DiffClampAnimatedNode.h" />
    <ClInclude Include="Modules\Animated\DivisionAnimatedNode.h" />
    <ClInclude Include="Modules\Animated\EventAnimationDriver.h" />
    <ClInclude Include="Modules\Animated\ExtrapolationType.h" />
    <ClInclude Include="Modules\Animated\FacadeType.h" />
    <ClInclude Include="Modules\Animated\FrameAnimationDriver.h" />
    <ClInclude Include="Modules\Animated\InterpolationAnimatedNode.h" />
    <ClInclude Include="Modules\Animated\ModulusAnimatedNode.h" />
    <ClInclude Include="Modules\Animated\MultiplicationAnimatedNode.h" />
    <ClInclude Include="Modules\Animated\NativeAnimatedModule.h" />
    <ClInclude Include="Modules\Animated\NativeAnimatedNodeManager.h" />
    <ClInclude Include="Modules\Animated\PropsAnimatedNode.h" />
    <ClInclude Include="Modules\Animated\SpringAnimationDriver.h" />
    <ClInclude Include="Modules\Animated\StyleAnimatedNode.h" />
    <ClInclude Include="Modules\Animated\SubtractionAnimatedNode.h" />
    <ClInclude Include="Modules\Animated\TrackingAnimatedNode.h" />
    <ClInclude Include="Modules\Animated\TransformAnimatedNode.h" />
    <ClInclude Include="Modules\Animated\ValueAnimatedNode.h" />
    <ClInclude Include="Modules\AppearanceModule.h" />
    <ClInclude Include="Modules\AppStateModule.h" />
    <ClInclude Include="Modules\AppThemeModuleUwp.h" />
    <ClInclude Include="Modules\ClipboardModule.h" />
    <ClInclude Include="Modules\DeviceInfoModule.h" />
    <ClInclude Include="Modules\DevSettingsModule.h" />
    <ClInclude Include="Modules\I18nManagerModule.h" />
    <ClInclude Include="Modules\ImageViewManagerModule.h" />
    <ClInclude Include="Modules\LinkingManagerModule.h" />
    <ClInclude Include="Modules\LogBoxModule.h" />
    <ClInclude Include="Modules\NativeUIManager.h" />
    <ClInclude Include="Modules\ReactRootViewTagGenerator.h" />
    <ClInclude Include="Modules\TimingModule.h" />
    <ClInclude Include="Modules\PaperUIManagerModule.h" />
    <ClInclude Include="NativeModulesProvider.h" />
    <ClInclude Include="ReactHost\IReactInstance.h" />
    <ClInclude Include="ReactHost\ViewManagerProvider.h" />
    <ClInclude Include="RedBoxErrorInfo.h" />
    <ClInclude Include="RedBoxErrorFrameInfo.h" />
    <ClInclude Include="TurboModulesProvider.h" />
    <ClInclude Include="Pch\pch.h" />
    <ClInclude Include="ReactApplication.h">
      <DependentUpon>ReactApplication.idl</DependentUpon>
    </ClInclude>
    <ClInclude Include="IReactContext.h">
      <DependentUpon>IReactContext.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
    <ClInclude Include="ReactHost\AsyncActionQueue.h" />
    <ClInclude Include="ReactHost\InstanceFactory.h" />
    <ClInclude Include="ReactHost\IReactInstanceInternal.h" />
    <ClInclude Include="ReactHost\JSBundle.h" />
    <ClInclude Include="ReactHost\MoveOnCopy.h" />
    <ClInclude Include="ReactHost\MsoUtils.h" />
    <ClInclude Include="ReactHost\React.h" />
    <ClInclude Include="ReactHost\MsoReactContext.h" />
    <ClInclude Include="ReactHost\ReactErrorProvider.h" />
    <ClInclude Include="ReactHost\ReactHost.h" />
    <ClInclude Include="ReactHost\ReactInstanceWin.h" />
    <ClInclude Include="ReactHost\CrashManager.h" />
    <ClInclude Include="ReactHost\ReactNativeHeaders.h" />
    <ClInclude Include="ReactHost\React_Win.h" />
    <ClInclude Include="ReactCoreInjection.h">
      <DependentUpon>ReactCoreInjection.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
    <ClInclude Include="ReactInstanceSettings.h">
      <DependentUpon>ReactInstanceSettings.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
    <ClInclude Include="RedBoxHandler.h">
      <DependentUpon>RedBoxHandler.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
    <ClInclude Include="ReactNativeHost.h">
      <DependentUpon>ReactNativeHost.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
    <ClInclude Include="Timer.h">
      <DependentUpon>Timer.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
    <ClInclude Include="Utils\AccessibilityUtils.h" />
    <ClInclude Include="Utils\Helpers.h" />
    <ClInclude Include="Utils\KeyboardUtils.h" />
    <ClInclude Include="Utils\LocalBundleReader.h" />
    <ClInclude Include="Utils\PropertyHandlerUtils.h" />
    <ClInclude Include="Utils\PropertyUtils.h" />
    <ClInclude Include="Utils\ResourceBrushUtils.h" />
    <ClInclude Include="Utils\StandardControlResourceKeyNames.h" />
    <ClInclude Include="Utils\TextTransform.h" />
    <ClInclude Include="Utils\TransformableText.h" />
    <ClInclude Include="Utils\UwpPreparedScriptStore.h" />
    <ClInclude Include="Utils\UwpScriptStore.h" />
    <ClInclude Include="Utils\ValueUtils.h" />
    <ClInclude Include="Utils\XamlIslandUtils.h" />
    <ClInclude Include="Views\ActivityIndicatorViewManager.h" />
    <ClInclude Include="Views\ControlViewManager.h" />
    <ClInclude Include="Views\DevMenu.h" />
    <ClInclude Include="Views\DynamicAutomationPeer.h" />
    <ClInclude Include="Views\DynamicAutomationProperties.h" />
    <ClInclude Include="Views\DynamicValueProvider.h" />
    <ClInclude Include="Views\ExpressionAnimationStore.h" />
    <ClInclude Include="Views\FlyoutViewManager.h" />
    <ClInclude Include="Views\FrameworkElementTransferProperties.h" />
    <ClInclude Include="Views\FrameworkElementViewManager.h" />
    <ClInclude Include="Views\Image\Effects.h" />
    <ClInclude Include="Views\Image\ImageViewManager.h" />
    <ClInclude Include="Views\Image\Microsoft.UI.Composition.Effects_Impl.h" />
    <ClInclude Include="Views\Image\ReactImage.h" />
    <ClInclude Include="Views\Image\ReactImageBrush.h" />
    <ClInclude Include="Views\Impl\ScrollViewUWPImplementation.h" />
    <ClInclude Include="Views\Impl\SnapPointManagingContentControl.h" />
    <ClInclude Include="Views\UnimplementedViewManager.h" />
    <ClInclude Include="Views\IXamlRootView.h" />
    <ClInclude Include="Views\KeyboardEventHandler.h" />
    <ClInclude Include="Views\PaperShadowNode.h" />
    <ClInclude Include="Views\PopupViewManager.h" />
    <ClInclude Include="Views\RawTextViewManager.h" />
    <ClInclude Include="Views\ReactViewInstance.h" />
    <ClInclude Include="Views\RefreshControlManager.h" />
    <ClInclude Include="Views\RootViewManager.h" />
    <ClInclude Include="Views\ScrollContentViewManager.h" />
    <ClInclude Include="Views\ScrollViewManager.h" />
    <ClInclude Include="Views\ShadowNodeBase.h" />
    <ClInclude Include="Views\ShadowNodeRegistry.h" />
    <ClInclude Include="Views\SIPEventHandler.h" />
    <ClInclude Include="Views\SliderViewManager.h" />
    <ClInclude Include="Views\SwitchViewManager.h" />
    <ClInclude Include="Views\TextInputViewManager.h" />
    <ClInclude Include="Views\TextViewManager.h" />
    <ClInclude Include="Views\Text\TextHighlighterVisitor.h" />
    <ClInclude Include="Views\Text\TextHitTestUtils.h" />
    <ClInclude Include="Views\Text\TextHitTestVisitor.h" />
    <ClInclude Include="Views\Text\TextParentVisitor.h" />
    <ClInclude Include="Views\Text\TextPropertyChangedParentVisitor.h" />
    <ClInclude Include="Views\Text\TextTransformParentVisitor.h" />
    <ClInclude Include="Views\Text\TextTransformVisitor.h" />
    <ClInclude Include="Views\Text\TextVisitorScope.h" />
    <ClInclude Include="Views\Text\TextVisitor.h" />
    <ClInclude Include="Views\Text\TextVisitors.h" />
    <ClInclude Include="Views\TouchEventHandler.h" />
    <ClInclude Include="Views\ViewControl.h" />
    <ClInclude Include="Views\ViewManager.h" />
    <ClInclude Include="Views\ViewManagerBase.h" />
    <ClInclude Include="Views\ViewPanel.h" />
    <ClInclude Include="Views\ViewViewManager.h" />
    <ClInclude Include="Views\VirtualTextViewManager.h" />
    <ClInclude Include="Views\XamlFeatures.h" />
    <ClInclude Include="XamlLoadState.h" />
    <ClInclude Include="LayoutService.h">
      <DependentUpon>LayoutService.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
    <ClInclude Include="XamlUIService.h">
      <DependentUpon>XamlUIService.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
    <ClInclude Include="ReactPackageBuilder.h">
      <DependentUpon>IReactPackageBuilder.idl</DependentUpon>
    </ClInclude>
    <ClInclude Include="IReactPropertyBag.h">
      <DependentUpon>IReactPropertyBag.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
    <ClInclude Include="ReactRootView.h">
      <DependentUpon>ReactRootView.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
    <ClInclude Include="RedBox.h" />
    <ClInclude Include="ReactSupport.h" />
    <ClInclude Include="TestHook.h" />
    <ClInclude Include="QuirkSettings.h">
      <DependentUpon>QuirkSettings.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
    <ClInclude Include="ViewManagersProvider.h" />
    <ClInclude Include="XamlHelper.h">
      <DependentUpon>XamlHelper.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
    <ClInclude Include="XamlView.h" />
    <ClInclude Include="ReactPointerEventArgs.h">
      <DependentUpon>ReactPointerEventArgs.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClInclude>
  </ItemGroup>
  <ItemGroup>
    <ClCompile Include="ABICxxModule.cpp" />
    <ClCompile Include="ABIViewManager.cpp" />
    <ClCompile Include="Base\CoreUIManagers.cpp" />
    <ClCompile Include="Utils\BatchingEventEmitter.cpp" />
    <ClCompile Include="CxxReactUWP\JSBigString.cpp" />
    <ClCompile Include="DevMenuControl.cpp">
      <DependentUpon>DevMenuControl.xaml</DependentUpon>
      <SubType>Code</SubType>
    </ClCompile>
    <ClCompile Include="GlyphViewManager.cpp" />
    <ClCompile Include="Modules\AccessibilityInfoModule.cpp" />
    <ClCompile Include="Modules\AlertModule.cpp" />
    <ClCompile Include="Modules\Animated\AdditionAnimatedNode.cpp" />
    <ClCompile Include="Modules\Animated\AnimatedNode.cpp" />
    <ClCompile Include="Modules\Animated\AnimatedPlatformConfig.cpp" />
    <ClCompile Include="Modules\Animated\AnimationDriver.cpp" />
    <ClCompile Include="Modules\Animated\CalculatedAnimationDriver.cpp" />
    <ClCompile Include="Modules\Animated\DecayAnimationDriver.cpp" />
    <ClCompile Include="Modules\Animated\DiffClampAnimatedNode.cpp" />
    <ClCompile Include="Modules\Animated\DivisionAnimatedNode.cpp" />
    <ClCompile Include="Modules\Animated\EventAnimationDriver.cpp" />
    <ClCompile Include="Modules\Animated\FrameAnimationDriver.cpp" />
    <ClCompile Include="Modules\Animated\InterpolationAnimatedNode.cpp" />
    <ClCompile Include="Modules\Animated\ModulusAnimatedNode.cpp" />
    <ClCompile Include="Modules\Animated\MultiplicationAnimatedNode.cpp" />
    <ClCompile Include="Modules\Animated\NativeAnimatedModule.cpp" />
    <ClCompile Include="Modules\Animated\NativeAnimatedNodeManager.cpp" />
    <ClCompile Include="Modules\Animated\PropsAnimatedNode.cpp" />
    <ClCompile Include="Modules\Animated\SpringAnimationDriver.cpp" />
    <ClCompile Include="Modules\Animated\StyleAnimatedNode.cpp" />
    <ClCompile Include="Modules\Animated\SubtractionAnimatedNode.cpp" />
    <ClCompile Include="Modules\Animated\TrackingAnimatedNode.cpp" />
    <ClCompile Include="Modules\Animated\TransformAnimatedNode.cpp" />
    <ClCompile Include="Modules\Animated\ValueAnimatedNode.cpp" />
    <ClCompile Include="Modules\AppearanceModule.cpp" />
    <ClCompile Include="Modules\AppStateModule.cpp" />
    <ClCompile Include="Modules\AppThemeModuleUwp.cpp" />
    <ClCompile Include="Modules\ClipboardModule.cpp" />
    <ClCompile Include="Modules\CreateModules.cpp" />
    <ClCompile Include="Modules\DeviceInfoModule.cpp" />
    <ClCompile Include="Modules\I18nManagerModule.cpp" />
    <ClCompile Include="Modules\ImageViewManagerModule.cpp" />
    <ClCompile Include="Modules\LinkingManagerModule.cpp" />
    <ClCompile Include="Modules\LogBoxModule.cpp" />
    <ClCompile Include="Modules\NativeUIManager.cpp" />
    <ClCompile Include="Modules\PaperUIManagerModule.cpp" />
    <ClCompile Include="ReactPointerEventArgs.cpp">
      <DependentUpon>ReactPointerEventArgs.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClCompile>
    <ClCompile Include="Pch\pch.cpp">
      <PrecompiledHeader>Create</PrecompiledHeader>
    </ClCompile>
    <ClCompile Include="ReactApplication.cpp">
      <DependentUpon>ReactApplication.idl</DependentUpon>
    </ClCompile>
    <ClCompile Include="$(GeneratedFilesDir)module.g.cpp" />
    <ClCompile Include="Utils\AccessibilityUtils.cpp" />
    <ClCompile Include="Utils\KeyboardUtils.cpp" />
    <ClCompile Include="Utils\LocalBundleReader.cpp" />
    <ClCompile Include="Utils\ResourceBrushUtils.cpp" />
    <ClCompile Include="Utils\UwpPreparedScriptStore.cpp" />
    <ClCompile Include="Utils\UwpScriptStore.cpp" />
    <ClCompile Include="Utils\ValueUtils.cpp" />
    <ClCompile Include="Utils\XamlIslandUtils.cpp" />
    <ClCompile Include="Views\ActivityIndicatorViewManager.cpp" />
    <ClCompile Include="Views\ConfigureBundlerDlg.cpp" />
    <ClCompile Include="Views\ControlViewManager.cpp" />
    <ClCompile Include="Views\DebuggingOverlayViewManager.cpp" />
    <ClCompile Include="Views\DynamicAutomationPeer.cpp" />
    <ClCompile Include="Views\DynamicAutomationProperties.cpp" />
    <ClCompile Include="Views\DynamicValueProvider.cpp" />
    <ClCompile Include="Views\ExpressionAnimationStore.cpp" />
    <ClCompile Include="Views\FlyoutViewManager.cpp" />
    <ClCompile Include="Views\FrameworkElementTransferProperties.cpp" />
    <ClCompile Include="Views\FrameworkElementViewManager.cpp" />
    <ClCompile Include="Views\Image\ImageViewManager.cpp" />
    <ClCompile Include="Views\Image\ReactImage.cpp" />
    <ClCompile Include="Views\Image\ReactImageBrush.cpp" />
    <ClCompile Include="Views\Impl\ScrollViewUWPImplementation.cpp" />
    <ClCompile Include="Views\Impl\SnapPointManagingContentControl.cpp" />
    <ClCompile Include="Views\KeyboardEventHandler.cpp" />
    <ClCompile Include="Views\UnimplementedViewManager.cpp" />
    <ClCompile Include="Views\PaperShadowNode.cpp" />
    <ClCompile Include="Views\PopupViewManager.cpp" />
    <ClCompile Include="Views\RawTextViewManager.cpp" />
    <ClCompile Include="Views\ReactViewInstance.cpp" />
    <ClCompile Include="Views\RefreshControlManager.cpp" />
    <ClCompile Include="Views\RootViewManager.cpp" />
    <ClCompile Include="Views\ScrollContentViewManager.cpp" />
    <ClCompile Include="Views\ScrollViewManager.cpp" />
    <ClCompile Include="Views\ShadowNodeBase.cpp" />
    <ClCompile Include="Views\ShadowNodeRegistry.cpp" />
    <ClCompile Include="Views\SIPEventHandler.cpp" />
    <ClCompile Include="Views\SliderViewManager.cpp" />
    <ClCompile Include="Views\SwitchViewManager.cpp" />
    <ClCompile Include="Views\TextInputViewManager.cpp" />
    <ClCompile Include="Views\TextViewManager.cpp" />
    <ClCompile Include="Views\Text\TextHighlighterVisitor.cpp" />
    <ClCompile Include="Views\Text\TextHitTestUtils.cpp" />
    <ClCompile Include="Views\Text\TextHitTestVisitor.cpp" />
    <ClCompile Include="Views\Text\TextParentVisitor.cpp" />
    <ClCompile Include="Views\Text\TextPropertyChangedParentVisitor.cpp" />
    <ClCompile Include="Views\Text\TextTransformParentVisitor.cpp" />
    <ClCompile Include="Views\Text\TextTransformVisitor.cpp" />
    <ClCompile Include="Views\Text\TextVisitor.cpp" />
    <ClCompile Include="Views\TouchEventHandler.cpp" />
    <ClCompile Include="Views\ViewControl.cpp" />
    <ClCompile Include="Views\ViewManagerBase.cpp" />
    <ClCompile Include="Views\ViewPanel.cpp" />
    <ClCompile Include="Views\ViewViewManager.cpp" />
    <ClCompile Include="Views\VirtualTextViewManager.cpp" />
    <ClCompile Include="Views\XamlFeatures.cpp" />
    <ClCompile Include="XamlLoadState.cpp" />
    <ClCompile Include="XamlView.cpp" />
    <ClCompile Include="LayoutService.cpp">
      <DependentUpon>LayoutService.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClCompile>
    <ClCompile Include="XamlUIService.cpp">
      <DependentUpon>XamlUIService.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClCompile>
    <ClCompile Include="ReactRootView.cpp">
      <DependentUpon>ReactRootView.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClCompile>
    <ClCompile Include="ReactSupport.cpp" />
    <ClCompile Include="TestHook.cpp" />
    <ClCompile Include="ViewManagersProvider.cpp" />
    <ClCompile Include="XamlHelper.cpp">
      <DependentUpon>XamlHelper.idl</DependentUpon>
      <SubType>Code</SubType>
    </ClCompile>
  </ItemGroup>
  <ItemGroup>
    <Midl Include="DesktopWindowMessage.idl" />
    <Midl Include="DevMenuControl.idl">
      <DependentUpon>DevMenuControl.xaml</DependentUpon>
      <SubType>Code</SubType>
    </Midl>
    <Midl Include="DocString.idl" />
    <Midl Include="IViewManager.idl" />
    <Midl Include="IViewManagerCore.idl" />
    <Midl Include="ReactApplication.idl" />
    <Midl Include="Views\cppwinrt\AccessibilityAction.idl" />
    <Midl Include="Views\cppwinrt\Effects.idl" />
    <Midl Include="Views\cppwinrt\DynamicAutomationPeer.idl" />
    <Midl Include="Views\cppwinrt\ViewPanel.idl" />
    <Midl Include="LayoutService.idl">
      <SubType>Designer</SubType>
    </Midl>
    <Midl Include="XamlUIService.idl">
      <SubType>Designer</SubType>
    </Midl>
    <Midl Include="ReactRootView.idl">
      <SubType>Designer</SubType>
    </Midl>
    <Midl Include="XamlHelper.idl" />
    <Midl Include="ReactPointerEventArgs.idl" />
  </ItemGroup>
  <ItemGroup>
    <None Include="microsoft.reactnative.def" />
  </ItemGroup>
  <ItemGroup>
    <None Include="PropertySheet.props" />
    <Text Include="readme.txt">
      <DeploymentContent>false</DeploymentContent>
    </Text>
  </ItemGroup>
  <ItemGroup>
    <ResourceCompile Include="Version.rc">
      <PreprocessorDefinitions>
        RNW_VERSION=$(ReactNativeWindowsVersion);
        RNW_MAJOR=$(ReactNativeWindowsMajor);
        RNW_MINOR=$(ReactNativeWindowsMinor);
        RNW_PATCH=$(ReactNativeWindowsPatch);
        RNW_COMMITID=$(ReactNativeWindowsCommitId);
        _UNICODE;
        UNICODE;
        %(PreprocessorDefinitions)
      </PreprocessorDefinitions>
    </ResourceCompile>
  </ItemGroup>
  <ItemGroup>
    <Natvis Include="$(ReactNativeWindowsDir)Folly\Folly.natvis" />
  </ItemGroup>
  <ItemGroup>
    <ProjectReference Include="..\Common\Common.vcxproj">
      <Project>{fca38f3c-7c73-4c47-be4e-32f77fa8538d}</Project>
    </ProjectReference>
    <ProjectReference Include="..\Folly\Folly.vcxproj">
      <Project>{a990658c-ce31-4bcc-976f-0fc6b1af693d}</Project>
    </ProjectReference>
    <ProjectReference Include="..\ReactCommon\ReactCommon.vcxproj">
      <Project>{a9d95a91-4db7-4f72-beb6-fe8a5c89bfbd}</Project>
    </ProjectReference>
  </ItemGroup>
  <ItemGroup>
    <Page Include="DevMenuControl.xaml">
      <SubType>Designer</SubType>
    </Page>
  </ItemGroup>
  <ItemGroup>
    <PackageReference Include="boost" Version="1.83.0.0" />
    <PackageReference Include="Microsoft.Windows.CppWinRT" Version="$(CppWinRTVersion)" PrivateAssets="all" />
    <PackageReference Include="Microsoft.JavaScript.Hermes" Version="$(HermesVersion)" />
    <PackageReference Include="$(WinUIPackageName)" Version="$(WinUIPackageVersion)" Condition="'$(OverrideWinUIPackage)'!='true'" />
    <PackageReference Include="$(V8PackageName)" Version="$(V8Version)" Condition="'$(UseV8)' == 'true'" />
  </ItemGroup>
  <Choose>
    <When Condition="'$(EnableSourceLink)' == 'true'">
      <ItemGroup>
        <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1" />
      </ItemGroup>
    </When>
  </Choose>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
  <Import Project="$(ReactNativeWindowsDir)PropertySheets\FastBuild.targets" />
  <Import Project="$(ReactNativeWindowsDir)PropertySheets\FixupRoslynCscWarnings.targets" />
  <Target Name="AfterCppClean">
    <RemoveDir Directories="$(IdlHeaderDirectory)" ContinueOnError="true" />
    <RemoveDir Directories="$(UnmergedWinmdDirectory)" ContinueOnError="true" />
  </Target>
  <Target Name="PreventMicrosoftUIXamlCopy" AfterTargets="ResolveReferences">
    <ItemGroup>
      <!-- We do not copy references because copying Microsoft.UI.Xaml related files
           causes WinMD merge conflicts in user projects as they also reference the same files. -->
      <ReferenceCopyLocalPaths Remove="@(ReferenceCopyLocalPaths)" />
    </ItemGroup>
  </Target>
  <Target Name="Deploy" />
  <Target Name="Preprocess">
    <Message Condition="'$(Source)'!=''" Text="Preprocessing: $(Source)" />
    <Error Condition="'$(Source)'==''" Text="To generate a pre-processed file, please specify a source file with msbuild /p:Source=nameOfTheSource.cpp" />
    <CL PreprocessToFile="true" Sources="$(Source)" AdditionalIncludeDirectories="%(ClCompile.AdditionalIncludeDirectories)" PreprocessorDefinitions="%(ClCompile.PreprocessorDefinitions)" AdditionalOptions="%(ClCompile.AdditionalOptions) /d1PP" PreprocessKeepComments="true" PreprocessOutputPath="$(Source.Replace('.cpp', '.pp'))" />
  </Target>
  <!-- https://github.com/microsoft/microsoft-ui-xaml/issues/3133 -->
  <Target Name="InjectForcedXamlIncludes" BeforeTargets="CompileXamlGeneratedFiles">
    <ItemGroup>
      <ClCompile Condition="'%(ClCompile.CompilerIteration)' == 'XamlGenerated'">
        <ForcedIncludeFiles>%(ForcedIncludeFiles);winrt/Microsoft.UI.Xaml.Controls.h;winrt/Microsoft.UI.Xaml.XamlTypeInfo.h</ForcedIncludeFiles>
      </ClCompile>
    </ItemGroup>
  </Target>
</Project>