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

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

    <ItemGroup>
        <PackageReference Include="BCrypt.Net-Next" Version="4.0.3" />
        <PackageReference Include="EFCore.BulkExtensions" Version="9.0.2" />
        <PackageReference Include="EFCore.NamingConventions" Version="9.0.0" />
        <PackageReference Include="Google.Api.CommonProtos" Version="2.17.0" />
        <PackageReference Include="Google.Protobuf" Version="3.33.1" />
        <PackageReference Include="Google.Protobuf.Tools" Version="3.33.1" />
        <PackageReference Include="Grpc" Version="2.46.6" />
        <PackageReference Include="Grpc.AspNetCore.Server.ClientFactory" Version="2.71.0" />
        <PackageReference Include="Grpc.AspNetCore.Server.Reflection" Version="2.71.0" />
        <PackageReference Include="Grpc.Net.Client" Version="2.71.0" />
        <PackageReference Include="Grpc.Tools" Version="2.76.0">
            <PrivateAssets>all</PrivateAssets>
            <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
        </PackageReference>
        <PackageReference Include="MaxMind.GeoIP2" Version="5.3.0" />
        <PackageReference Include="MessagePack" Version="2.5.192" />
        <PackageReference Include="Microsoft.AspNetCore.Authentication" Version="2.3.0" />
        <PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="10.0.0" />
        <PackageReference Include="Microsoft.Extensions.Caching.StackExchangeRedis" Version="10.0.0" />
        <PackageReference Include="NATS.Net" Version="2.6.11" />
        <PackageReference Include="NodaTime" Version="3.2.2" />
        <PackageReference Include="NodaTime.Serialization.JsonNet" Version="3.2.0" />
        <PackageReference Include="NodaTime.Serialization.Protobuf" Version="2.0.2" />
        <PackageReference Include="NodaTime.Serialization.SystemTextJson" Version="1.3.0" />
        <PackageReference Include="OpenGraph-Net" Version="4.0.1" />
        <PackageReference Include="Otp.NET" Version="1.4.0" />
        <PackageReference Include="RedLock.net" Version="2.3.2" />
        <PackageReference Include="StackExchange.Redis" Version="2.10.1" />
        <PackageReference Include="Swashbuckle.AspNetCore" Version="10.0.1" />
        <PackageReference Include="Swashbuckle.AspNetCore.SwaggerUI" Version="10.0.1" />
        <PackageReference Include="Yarp.ReverseProxy" Version="2.3.0" />

        <PackageReference Include="Aspire.NATS.Net" Version="13.0.0" />
        <PackageReference Include="Aspire.Npgsql.EntityFrameworkCore.PostgreSQL" Version="9.5.2" />
        <PackageReference Include="Aspire.StackExchange.Redis" Version="13.0.0" />
        
        <PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="9.0.4" />
        <PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL.NodaTime" Version="9.0.4" />

        <PackageReference Include="Microsoft.Extensions.Http.Resilience" Version="10.0.0" />
        <PackageReference Include="Microsoft.Extensions.ServiceDiscovery" Version="10.0.0" />
        <PackageReference Include="OpenTelemetry.Exporter.OpenTelemetryProtocol" Version="1.14.0" />
        <PackageReference Include="OpenTelemetry.Extensions.Hosting" Version="1.14.0" />
        <PackageReference Include="OpenTelemetry.Instrumentation.AspNetCore" Version="1.14.0" />
        <PackageReference Include="OpenTelemetry.Instrumentation.GrpcNetClient" Version="1.12.0-beta.1" />
        <PackageReference Include="OpenTelemetry.Instrumentation.Http" Version="1.14.0" />
        <PackageReference Include="OpenTelemetry.Instrumentation.Runtime" Version="1.14.0" />
    </ItemGroup>

    <ItemGroup>
        <Protobuf Include="Proto\*.proto" ProtoRoot="Proto" GrpcServices="Both" AdditionalFileExtensions="Proto\" />
    </ItemGroup>

</Project>
