<Project Sdk="Microsoft.NET.Sdk">

    <PropertyGroup>
        <OutputType>WinExe</OutputType>
        <DefaultLanguage>en-US</DefaultLanguage>
        <AppxBundleAutoResourcePackageQualifiers>Scale|DXFeatureLevel</AppxBundleAutoResourcePackageQualifiers>
        <AppxDefaultResourceQualifiers>Language=en-US;af;ar;be-BY;bg;ca;cs-CZ;da;de-DE;el;en-GB;es-ES;es-419;fa-IR;fi-FI;fil-PH;fr-FR;he-IL;hi-IN;hr-HR;hu-HU;id-ID;it-IT;ja-JP;ka;km-KH;ko-KR;lt-LT;lv-LV;ms-MY;nb-NO;nl-NL;pl-PL;pt-BR;pt-PT;ro-RO;ru-RU;sk-SK;sq-AL;sr-Cyrl;sv-SE;ta;th-TH;tr-TR;uk-UA;vi;zh-Hans;zh-Hant</AppxDefaultResourceQualifiers>
        <TargetFramework>net8.0-windows10.0.22621.0</TargetFramework>
        <TargetPlatformMinVersion>10.0.19041.0</TargetPlatformMinVersion>
        <ImplicitUsings>enable</ImplicitUsings>
        <Nullable>enable</Nullable>
        <Configurations>Debug;Release;Stable;Preview;Store</Configurations>
        <Platforms>x86;x64;arm64</Platforms>
        <SelfContained>true</SelfContained>
        <RuntimeIdentifiers>win-x86;win-x64;win-arm64</RuntimeIdentifiers>
        <RuntimeIdentifier Condition="'$(Platform)' == 'x86'">win-x86</RuntimeIdentifier>
        <RuntimeIdentifier Condition="'$(Platform)' == 'x64'">win-x64</RuntimeIdentifier>
        <RuntimeIdentifier Condition="'$(Platform)' == 'arm64'">win-arm64</RuntimeIdentifier>
        <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
        <CsWinRTComponent>true</CsWinRTComponent>
        <CsWinRTWindowsMetadata>10.0.22621.0</CsWinRTWindowsMetadata>
        <ApplicationManifest>app.manifest</ApplicationManifest>
        <PublishReadyToRun Condition="'$(Configuration)' == 'Debug'">False</PublishReadyToRun>
        <PublishReadyToRun Condition="'$(Configuration)' != 'Debug'">True</PublishReadyToRun>
        <PublishReadyToRunComposite Condition="'$(Configuration)' != 'Debug'">True</PublishReadyToRunComposite>
        <PublishTrimmed Condition="'$(Configuration)' == 'Debug'">False</PublishTrimmed>
        <PublishTrimmed Condition="'$(Configuration)' != 'Debug'">True</PublishTrimmed>
        <CsWinRTEnableLogging>true</CsWinRTEnableLogging>
    </PropertyGroup>

    <PropertyGroup Condition="'$(Configuration)' == 'Debug'">
        <DefineConstants>TRACE;DEBUG;NETFX_CORE</DefineConstants>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Configuration)' != 'Debug'">
        <DefineConstants>TRACE;RELEASE;NETFX_CORE</DefineConstants>
        <Optimize>true</Optimize>
    </PropertyGroup>

    <ItemGroup>
        <Manifest Include="app.manifest" />
        <TrimmerRootAssembly Include="Files.App.Server" />
        <PackageReference Include="Microsoft.Windows.CsWinRT" Version="2.0.7" />
    </ItemGroup>

    <ItemGroup>
        <None Include="..\Files.App.Server\bin\$(Platform)\$(Configuration)\$(TargetFramework)\win-$(Platform)\Files.App.Server.winmd">
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
            <Link>Files.App.Server.winmd</Link>
            <Visible>false</Visible>
        </None>
    </ItemGroup>

    <ItemGroup>
        <ProjectReference Include="..\Files.App.CsWin32\Files.App.CsWin32.csproj" />
        <ProjectReference Include="..\Files.Core.SourceGenerator\Files.Core.SourceGenerator.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="False" />
        <ProjectReference Include="..\Files.Shared\Files.Shared.csproj" />
    </ItemGroup>

</Project>
