<Project Sdk="Microsoft.NET.Sdk">
    <Import Project="..\Artemis.props" />

    <PropertyGroup>
        <OutputType>Library</OutputType>
        <TargetFramework>net7.0</TargetFramework>
        <Nullable>enable</Nullable>
        <OutputPath>bin/</OutputPath>
        <Platforms>x64</Platforms>
    </PropertyGroup>
    
    <ItemGroup>
        <ProjectReference Include="..\Artemis.Core\Artemis.Core.csproj" />
        <ProjectReference Include="..\Artemis.UI.Shared\Artemis.UI.Shared.csproj" />
        <ProjectReference Include="..\Artemis.VisualScripting\Artemis.VisualScripting.csproj" />
        <ProjectReference Include="..\Artemis.WebClient.Updating\Artemis.WebClient.Updating.csproj" />
        <ProjectReference Include="..\Artemis.WebClient.Workshop\Artemis.WebClient.Workshop.csproj" />
    </ItemGroup>

    <ItemGroup>
        <PackageReference Include="Avalonia" Version="$(AvaloniaVersion)" />
        <PackageReference Include="Avalonia.Controls.PanAndZoom" Version="11.0.0" />
        <PackageReference Include="Avalonia.Desktop" Version="$(AvaloniaVersion)" />
        <!--Condition below is needed to remove Avalonia.Diagnostics package from build output in Release configuration.-->
        <PackageReference Condition="'$(Configuration)' == 'Debug'" Include="Avalonia.Diagnostics" Version="$(AvaloniaVersion)" />
        <PackageReference Include="Avalonia.ReactiveUI" Version="$(AvaloniaVersion)" />
        <PackageReference Include="Avalonia.Xaml.Behaviors" Version="$(AvaloniaVersion)" />
        <PackageReference Include="DryIoc.dll" Version="5.4.0" />
        <PackageReference Include="DynamicData" Version="7.13.1" />
        <PackageReference Include="FluentAvaloniaUI" Version="$(FluentAvaloniaVersion)" />
        <PackageReference Include="Flurl.Http" Version="3.2.4" />
        <PackageReference Include="Markdown.Avalonia.Tight" Version="11.0.0" />
        <PackageReference Include="Material.Icons.Avalonia" Version="2.0.1" />
        <PackageReference Include="Octopus.Octodiff" Version="2.0.261" />
        <PackageReference Include="ReactiveUI" Version="18.4.26" />
        <PackageReference Include="ReactiveUI.Validation" Version="3.1.7" />
        <PackageReference Include="RGB.NET.Core" Version="$(RGBDotNetVersion)" />
        <PackageReference Include="RGB.NET.Layout" Version="$(RGBDotNetVersion)" />
        <PackageReference Include="SkiaSharp" Version="$(SkiaSharpVersion)" />
        <PackageReference Include="Splat.DryIoc" Version="14.6.8" />
    </ItemGroup>

    <ItemGroup>
        <AvaloniaResource Include="Assets\**" />
    </ItemGroup>

    <ItemGroup>
      <AdditionalFiles Include="Screens\Workshop\Layout\LayoutDetailsView.axaml" />
      <AdditionalFiles Include="Screens\Workshop\Layout\LayoutListView.axaml" />
      <AdditionalFiles Include="Screens\Workshop\Profile\ProfileDetailsView.axaml" />
      <AdditionalFiles Include="Screens\Workshop\Profile\ProfileListView.axaml" />
    </ItemGroup>

    <ItemGroup>
      <UpToDateCheckInput Remove="Screens\Workshop\Categories\Profile\ProfileDetailsView.axaml" />
      <UpToDateCheckInput Remove="Screens\Workshop\Categories\Profile\ProfileListView.axaml" />
      <UpToDateCheckInput Remove="Controls\AcrylicBlur\AcrylicBlur.axaml" />
    </ItemGroup>

    <ItemGroup>
      <Compile Update="Screens\Workshop\Enries\EntryListView.axaml.cs">
        <DependentUpon>ProfileListEntryView.axaml</DependentUpon>
        <SubType>Code</SubType>
      </Compile>
      <Compile Update="Screens\Workshop\SubmissionWizard\SubmissionWizardView.axaml.cs">
        <DependentUpon>StartupWizardView.axaml</DependentUpon>
        <SubType>Code</SubType>
      </Compile>
    </ItemGroup>
</Project>