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

  <PropertyGroup>
    <TargetFrameworks>net8.0;net7.0;net6.0;netstandard2.0</TargetFrameworks>
    <IsPackable>true</IsPackable>
    <DefineConstants>$(DefineConstants)TRACE;WCWIDTH_VISIBILITY_INTERNAL</DefineConstants>
  </PropertyGroup>

  <ItemGroup Label="REMOVE THIS">
    <InternalsVisibleTo Include="$(AssemblyName).Tests, PublicKey=$(SnkPublicKey)"/>
  </ItemGroup>

  <ItemGroup Label="Standard Figlet font">
    <EmbeddedResource Include="Widgets\Figlet\Fonts\Standard.flf"/>
    <None Remove="Widgets\Figlet\Fonts\Standard.flf"/>
  </ItemGroup>

  <ItemGroup Label="Dependencies">
    <PackageReference Condition="'$(TargetFramework)' == 'netstandard2.0'" Include="System.Memory"/>
    <PackageReference Include="Wcwidth.Sources">
      <PrivateAssets>all</PrivateAssets>
    </PackageReference>
  </ItemGroup>

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

  <ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
    <PackageReference Include="TunnelVisionLabs.ReferenceAssemblyAnnotator" PrivateAssets="all"/>
    <PackageDownload Include="Microsoft.NETCore.App.Ref" Version="[$(AnnotatedReferenceAssemblyVersion)]"/>
    <PackageReference Include="Nullable">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
  </ItemGroup>

</Project>
