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

  <PropertyGroup>
    <TargetFrameworks>net9.0;net8.0;netstandard2.0</TargetFrameworks>
    <IsPackable>true</IsPackable>
  </PropertyGroup>
  <PropertyGroup>
    <IsAotCompatible Condition="'$(TargetFramework)' != 'netstandard2.0'" >false</IsAotCompatible>
    <IsTrimmable>false</IsTrimmable>
  </PropertyGroup>
  <ItemGroup Label="REMOVE THIS">
    <InternalsVisibleTo Include="Spectre.Console.Cli.Tests" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\Spectre.Console\Spectre.Console.csproj" />
  </ItemGroup>

  <PropertyGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
    <AnnotatedReferenceAssemblyVersion>3.0.0</AnnotatedReferenceAssemblyVersion>
    <GenerateNullableAttributes>False</GenerateNullableAttributes>
  </PropertyGroup>

  <ItemGroup Label="Dependencies">
    <PackageReference Include="PolySharp">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
    </PackageReference>
  </ItemGroup>


  <ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
    <PackageReference Include="TunnelVisionLabs.ReferenceAssemblyAnnotator" PrivateAssets="all" />
    <PackageDownload Include="Microsoft.NETCore.App.Ref" Version="[$(AnnotatedReferenceAssemblyVersion)]" />
  </ItemGroup>

  <ItemGroup>
    <Compile Update="Resources\HelpProvider.Designer.cs">
      <DesignTime>True</DesignTime>
      <AutoGen>True</AutoGen>
      <DependentUpon>HelpProvider.resx</DependentUpon>
    </Compile>
  </ItemGroup>

  <ItemGroup>
    <EmbeddedResource Update="Resources\HelpProvider.resx">
      <Generator>ResXFileCodeGenerator</Generator>
      <LastGenOutput>HelpProvider.Designer.cs</LastGenOutput>
    </EmbeddedResource>
  </ItemGroup>

</Project>
