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

  <PropertyGroup>
    <OutputType>WinExe</OutputType>
    <TargetFrameworks>net8.0-windows</TargetFrameworks>
    <UseWindowsForms>true</UseWindowsForms>
    <PackageId>SysBot.Pokemon.WinForms</PackageId>
    <Company>Project Pokémon</Company>
    <Authors>Kaphotics</Authors>
    <Product>SysBot.Pokemon.WinForms</Product>
    <Description>Nintendo Switch Pokémon Bot Manager</Description>
    <ApplicationIcon>icon.ico</ApplicationIcon>
    <StartupObject>SysBot.Pokemon.WinForms.Program</StartupObject>
    <AssemblyName>SysBot</AssemblyName>
    <LangVersion>11</LangVersion>
    <Version>01.00.00</Version>
    <Nullable>enable</Nullable>
    <Platforms>x64</Platforms>
    <GenerateResourceUsePreserializedResources>true</GenerateResourceUsePreserializedResources>
  </PropertyGroup>

  <PropertyGroup>
    <DebugType>portable</DebugType>
    <EmbedAllSources>true</EmbedAllSources>
    <IncludeAllContentForSelfExtract>true</IncludeAllContentForSelfExtract>
    <PublishReadyToRun>true</PublishReadyToRun>
    <PublishSingleFile>true</PublishSingleFile>
    <PublishTrimmed>false</PublishTrimmed>
    <SelfContained>false</SelfContained>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Newtonsoft.Json" Version="13.0.2" />
    <PackageReference Include="PKHeX.Core" Version="24.7.27" />
    <PackageReference Include="System.Resources.Extensions" Version="5.0.0" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\SysBot.Base\SysBot.Base.csproj" />
    <ProjectReference Include="..\SysBot.Pokemon.Discord\SysBot.Pokemon.Discord.csproj" />
    <ProjectReference Include="..\SysBot.Pokemon.Twitch\SysBot.Pokemon.Twitch.csproj" />
    <ProjectReference Include="..\SysBot.Pokemon.Web\SysBot.Pokemon.Web.csproj" />
    <ProjectReference Include="..\SysBot.Pokemon.YouTube\SysBot.Pokemon.YouTube.csproj" />
    <ProjectReference Include="..\SysBot.Pokemon\SysBot.Pokemon.csproj" />
    <ProjectReference Include="..\SysBot.Pokemon.Z3\SysBot.Pokemon.Z3.csproj" />
  </ItemGroup>

  <ItemGroup Condition="$(TargetFramework.StartsWith('net4')) AND '$(Configuration)' == 'Release' ">
    <PackageReference Include="Costura.Fody" Version="4.1.0" />
    <PackageReference Include="Fody" Version="6.0.5">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
  </ItemGroup>

  <ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
    <Reference Include="PKHeX.Drawing">
      <HintPath>deps\PKHeX.Drawing.dll</HintPath>
    </Reference>
    <Reference Include="PKHeX.Drawing.PokeSprite">
      <HintPath>deps\PKHeX.Drawing.PokeSprite.dll</HintPath>
    </Reference>
  </ItemGroup>

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

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

</Project>