<Project Sdk="Microsoft.NET.Sdk">
    <PropertyGroup>
        <OutputType>WinExe</OutputType>
        <RootNamespace>Launcher.Client.Avalonia</RootNamespace>
        <TargetFramework>net6.0</TargetFramework>
        <ImplicitUsings>disable</ImplicitUsings>
        <Nullable>disable</Nullable>
        <DebugType>full</DebugType>
        <Configurations>Debug;Release</Configurations>
        <Platforms>AnyCPU</Platforms>
        <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
        <ApplicationIcon>Resources/logo-D.ico</ApplicationIcon>
        <TrimMode>copyused</TrimMode>
        <BuiltInComInteropSupport>true</BuiltInComInteropSupport>
        <TargetCulture Label="Invariant" />
    </PropertyGroup>
    
    <ItemGroup>
        <PackageReference Include="Avalonia" Version="0.10.18" />
        <PackageReference Include="Avalonia.Desktop" Version="0.10.18" />
        <!--Condition below is needed to remove Avalonia.Diagnostics package from build output in Release configuration.-->
        <PackageReference Include="Avalonia.Diagnostics" Version="0.10.18" Condition="'$(Configuration)' == 'Debug'" />
        <PackageReference Include="XamlNameReferenceGenerator" Version="1.3.4" />
    </ItemGroup>
    
    <ItemGroup>
        <ProjectReference Include="..\..\DTLib\DTLib.Network\DTLib.Network.csproj" />
        <ProjectReference Include="..\..\DTLib\DTLib.Dtsod\DTLib.Dtsod.csproj" />
        <ProjectReference Include="..\..\DTLib\DTLib\DTLib.csproj" />
        <ProjectReference Include="..\Launcher.Client\Launcher.Client.csproj" />
    </ItemGroup>
    
    <ItemGroup>
        <EmbeddedResource Include="Resources\*" />
    </ItemGroup>
    
    <ItemGroup>
        <AvaloniaXaml Remove="publish\**" />
        <EmbeddedResource Remove="publish\**" />
        <Compile Remove="publish\**" />
        <None Remove="publish\**" />
        <Compile Update="GUI\App.axaml.cs">
          <DependentUpon>App.axaml</DependentUpon>
          <SubType>Code</SubType>
        </Compile>
    </ItemGroup>
    
    
    <!--Target Name="PostBuild-Release" AfterTargets="PostBuildEvent" Condition="'$(Configuration)' == 'Release'">
        <Exec Command="cp -f bin/Release/runtimes/linux-x64/native/* bin/Release/" />
        <Exec Command="cp -f bin/Release/runtimes/win-x64/native/* bin/Release/" />
        <Exec Command="rm -rf bin/Release/runtimes" />
    </Target>
    <Target Name="PostBuild-Debug" AfterTargets="PostBuildEvent" Condition="'$(Configuration)' == 'Debug'">
        <Exec Command="cp -f bin/Debug/runtimes/linux-x64/native/* bin/Debug/" />
        <Exec Command="cp -f bin/Debug/runtimes/win-x64/native/* bin/Debug/" />
        <Exec Command="rm -rf bin/Debug/runtimes" />
    </Target!-->
    
</Project>
