<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>WinExe</OutputType>
	<TargetFramework>net10.0</TargetFramework>
    <Platforms>x64;arm64</Platforms>
    <Nullable>enable</Nullable>
    <LangVersion>preview</LangVersion>
    
    <BuiltInComInteropSupport>true</BuiltInComInteropSupport>
    <ApplicationManifest>app.manifest</ApplicationManifest>
    <UseAppHost>true</UseAppHost>
    <ImplicitUsings>enable</ImplicitUsings>
    
    <PublishAot>true</PublishAot>
    <OptimizationPreference>Speed</OptimizationPreference>
    <Trimming>full</Trimming>
    <TrimmerRemoveSymbols>true</TrimmerRemoveSymbols>
    
    <IncludeNativeLibrariesForSelfExtract>true</IncludeNativeLibrariesForSelfExtract>
    <AvaloniaUseCompiledBindingsByDefault>true</AvaloniaUseCompiledBindingsByDefault>

    <Company>Ruben Hyldgaard Negendahl</Company>
    <Authors>Ruben Hyldgaard Negendahl</Authors>
    <Copyright>© Ruben Hyldgaard Negendahl</Copyright>

    <Product>PicView</Product>
    <AssemblyName>PicView</AssemblyName>

    <HttpActivityPropagationSupport>false</HttpActivityPropagationSupport>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
    <DebugType>none</DebugType>
  </PropertyGroup>

  <PropertyGroup>
    <MagickCopyNativeMacOS>true</MagickCopyNativeMacOS>
  </PropertyGroup>


  <PropertyGroup Condition="'$(Platform)' == 'x64'">
    <PlatformTarget>x64</PlatformTarget>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Platform)' == 'arm64'">
    <PlatformTarget>ARM64</PlatformTarget>
  </PropertyGroup>


  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|arm64' ">
    <DebugType>full</DebugType>
  </PropertyGroup>

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
    <DebugType>full</DebugType>
  </PropertyGroup>

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|arm64' ">
    <DebugType>none</DebugType>
  </PropertyGroup>

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
    <DebugType>none</DebugType>
  </PropertyGroup>

  <ItemGroup>
    <ProjectReference Include="..\PicView.Avalonia\PicView.Avalonia.csproj" />
    <ProjectReference Include="..\PicView.Core\PicView.Core.csproj" />
    <ProjectReference Include="..\PicView.Core.MacOS\PicView.Core.MacOS.csproj" />
  </ItemGroup>

  <ItemGroup>
    <AvaloniaXaml Update="Views\ImageInfoWindow.axaml">
      <SubType>Designer</SubType>
    </AvaloniaXaml>
  </ItemGroup>

  <ItemGroup>
    <Compile Update="App.axaml.cs">
      <DependentUpon>App.axaml</DependentUpon>
    </Compile>
    <Compile Update="Views\ImageInfoWindow.axaml.cs">
      <SubType>Code</SubType>
      <DependentUpon>%(Filename)</DependentUpon>
    </Compile>
    <Compile Update="Views\BatchResizeWindow.axaml.cs">
      <DependentUpon>BatchResizeWindow.axaml</DependentUpon>
      <SubType>Code</SubType>
    </Compile>
    <Compile Update="Views\EffectsWindow.axaml.cs">
      <DependentUpon>EffectsWindow.axaml</DependentUpon>
      <SubType>Code</SubType>
    </Compile>
  </ItemGroup>

	<ItemGroup>
		<InternalsVisibleTo Include="PicView.Tests" />
	</ItemGroup>

	<ItemGroup>
	  <UpToDateCheckInput Remove="Views\SettingsWindow.axaml" />
	</ItemGroup>
</Project>
