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

  <ItemGroup>
    <ProjectReference Include="..\QuantEngine.Infrastructure\QuantEngine.Infrastructure.csproj" />
    <ProjectReference Include="..\QuantEngine.Application\QuantEngine.Application.csproj" />
    <ProjectReference Include="..\QuantEngine.Core\QuantEngine.Core.csproj" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="FastEndpoints" Version="5.34.0" />
    <PackageReference Include="Hangfire.AspNetCore" Version="1.8.23" />
    <PackageReference Include="Hangfire.Core" Version="1.8.23" />
    <PackageReference Include="Hangfire.MemoryStorage" Version="1.8.1.2" />
    <PackageReference Include="Hangfire.PostgreSql" Version="1.20.10" />
    <PackageReference Include="BCrypt.Net-Next" Version="4.0.3" />
    <PackageReference Include="FluentValidation.DependencyInjectionExtensions" Version="11.11.0" />
    <PackageReference Include="Serilog.AspNetCore" Version="10.0.0" />
    <PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
  </ItemGroup>

  <ItemGroup>
    <!-- Exclude client project files from server build to avoid duplicate compilations -->
    <!-- BUT preserve Client\wwwroot for static web assets -->
    <Compile Remove="Client\**" />
    <EmbeddedResource Remove="Client\**" />
    <None Remove="Client\**" />
  </ItemGroup>

  <ItemGroup>
    <!-- Only remove non-wwwroot Client content -->
    <Content Remove="Client\**" />
    <Content Include="Client\wwwroot\**" CopyToPublishDirectory="Never" />
  </ItemGroup>

  <PropertyGroup>
    <TargetFramework>net10.0</TargetFramework>
    <Nullable>enable</Nullable>
    <ImplicitUsings>enable</ImplicitUsings>
    <BlazorDisableThrowNavigationException>true</BlazorDisableThrowNavigationException>
  </PropertyGroup>

</Project>
