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

    <PropertyGroup>
        <TargetFramework>net9.0</TargetFramework>
        <NoWarn>VSTHRD200</NoWarn>
        <ImplicitUsings>enable</ImplicitUsings>
        <AnalysisLevel>latest-Recommended</AnalysisLevel>
        <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
    </PropertyGroup>

    <ItemGroup>
      <PackageReference Include="Bugsnag" Version="4.0.0" />
      <PackageReference Include="Destructurama.Attributed" Version="5.1.0" />
      <PackageReference Include="Flurl" Version="4.0.0" />
      <PackageReference Include="LanguageExt.Core" Version="4.4.9" />
      <PackageReference Include="LanguageExt.Transformers" Version="4.4.8" />
      <PackageReference Include="MediatR" Version="12.5.0" />
      <PackageReference Include="Microsoft.Extensions.Caching.Abstractions" Version="9.0.6" />
      <PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="9.0.6" />
      <PackageReference Include="Microsoft.Extensions.Http" Version="9.0.6" />
      <PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="9.0.6" />
      <PackageReference Include="Microsoft.IO.RecyclableMemoryStream" Version="3.0.1" />
      <PackageReference Include="Microsoft.VisualStudio.Threading.Analyzers" Version="17.14.15">
        <PrivateAssets>all</PrivateAssets>
        <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
      </PackageReference>
      <PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
      <PackageReference Include="Serilog" Version="4.3.0" />
      <PackageReference Include="Serilog.Sinks.Console" Version="6.0.0" />
      <PackageReference Include="SkiaSharp" Version="3.119.0" />
      <PackageReference Include="SkiaSharp.NativeAssets.Linux.NoDependencies" Version="3.119.0" />
      <PackageReference Include="TimeSpanParserUtil" Version="1.2.0" />
      <PackageReference Include="YamlDotNet" Version="16.3.0" />
    </ItemGroup>

    <ItemGroup>
        <AssemblyAttribute Include="System.Runtime.CompilerServices.InternalsVisibleToAttribute">
            <_Parameter1>ErsatzTV.Core.Tests</_Parameter1>
        </AssemblyAttribute>
    </ItemGroup>

    <ItemGroup>
      <ProjectReference Include="..\ErsatzTV.FFmpeg\ErsatzTV.FFmpeg.csproj" />
    </ItemGroup>

</Project>