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

  <PropertyGroup>
    <TargetFramework>net10.0</TargetFramework>
    <LangVersion>14</LangVersion>
    <Nullable>enable</Nullable>
    <ImplicitUsings>enable</ImplicitUsings>
    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
    <AnalysisLevel>latest</AnalysisLevel>
  </PropertyGroup>

  <ItemGroup>
    <!-- EventFlow (local source) -->
    <ProjectReference Include="../../../EventFlow/Source/EventFlow/EventFlow.csproj" />
    <ProjectReference Include="../../../EventFlow/Source/EventFlow.PostgreSql/EventFlow.PostgreSql.csproj" />
    <ProjectReference Include="../../../EventFlow/Source/EventFlow.Hangfire/EventFlow.Hangfire.csproj" />

    <!-- Database -->
    <PackageReference Include="Npgsql" Version="10.0.1" />
    <PackageReference Include="Dapper" Version="2.1.66" />
    <PackageReference Include="dbup-postgresql" Version="5.0.40" />

    <!-- Hangfire -->
    <PackageReference Include="Hangfire.Core" Version="1.8.22" />
    <PackageReference Include="Hangfire.AspNetCore" Version="1.8.22" />
    <PackageReference Include="Hangfire.PostgreSql" Version="1.20.13" />

    <!-- Serialization -->
    <PackageReference Include="Newtonsoft.Json" Version="13.0.3" />

    <!-- GraphQL -->
    <PackageReference Include="GraphQL" Version="8.0.2" />
    <PackageReference Include="GraphQL.Server.Transports.AspNetCore" Version="8.0.2" />
    <PackageReference Include="GraphQL.Server.Ui.Altair" Version="8.0.2" />
    <PackageReference Include="GraphQL.DataLoader" Version="8.0.2" />
    <PackageReference Include="GraphQL.MicrosoftDI" Version="8.0.2" />

    <!-- DI Decoration -->
    <PackageReference Include="Scrutor" Version="5.0.2" />

    <!-- Authentication -->
    <PackageReference Include="Microsoft.AspNetCore.Authentication.OpenIdConnect" Version="10.0.0" />
  </ItemGroup>

  <ItemGroup>
    <EmbeddedResource Include="Database\Migrations\*.sql" />
  </ItemGroup>

</Project>
