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

  <PropertyGroup>
    <TargetFramework>net8.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
    <DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
    <LangVersion>latest</LangVersion>
    <RootNamespace>Spangle</RootNamespace>
  </PropertyGroup>

  <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    <PlatformTarget>AnyCPU</PlatformTarget>
  </PropertyGroup>

  <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    <PlatformTarget>AnyCPU</PlatformTarget>
  </PropertyGroup>

  <ItemGroup>
    <InternalsVisibleTo Include="Spangle.Core.Tests" />
    <InternalsVisibleTo Include="Spangle.SourceGenerator.Tests" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="AsyncAwaitBestPractices" Version="7.0.0" />
    <PackageReference Include="Microsoft.Extensions.ObjectPool" Version="8.0.0" />
    <PackageReference Include="Spangle.LusterBits" Version="0.1.1" />
    <PackageReference Include="ValueTaskSupplement" Version="1.1.0" />
    <PackageReference Include="ZLogger" Version="2.1.0" />
    <PackageReference Include="ZString" Version="2.5.1" />
  </ItemGroup>

  <ItemGroup>
<!--    <ProjectReference Include="..\Spangle.Net.Transport.SRT\Spangle.Net.Transport.SRT.csproj" />-->
    <ProjectReference Include="..\..\..\Spangle.Net.Transport.SRT\Spangle.Net.Transport.SRT\Spangle.Net.Transport.SRT.csproj" />
    <ProjectReference Include="..\Spangle.SourceGenerator\Spangle.SourceGenerator.csproj">
      <OutputItemType>Analyzer</OutputItemType>
      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
    </ProjectReference>
    <ProjectReference Include="..\Spangle.Core.Abstractions\Spangle.Core.Abstractions.csproj" />
  </ItemGroup>

  <ItemGroup>
    <Folder Include="Containers\Flv\AVC\" />
    <Folder Include="Transport\Rtmp\Codec\" />
  </ItemGroup>
</Project>
