<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <Version>3.0.0</Version>
    <AssemblyName>Rubberduck</AssemblyName>
    <TargetFramework>net8.0</TargetFramework>
    <TargetPlatformIdentifier>Windows</TargetPlatformIdentifier>
    <LangVersion>12.0</LangVersion>
    <Nullable>enable</Nullable>
    <Platforms>AnyCPU</Platforms>
    <PlatformTarget>AnyCPU</PlatformTarget>
    <UseWPF>true</UseWPF>
    <ApplicationIcon>Ducky.ico</ApplicationIcon>

    <EnableComHosting>true</EnableComHosting>
    <EnableRegFreeCom>false</EnableRegFreeCom>
  </PropertyGroup>

  <!-- see https://learn.microsoft.com/en-us/dotnet/core/native-interop/expose-components-to-com -->
  <!--ItemGroup-->
  <!--ComHostTypeLibrary Include="Rubberduck.tlb" Id="1" /-->
  <!--ComHostTypeLibrary Include="Rubberduck.UnitTesting.tlb" Id="2" /-->
  <!--/ItemGroup-->
  
  <ItemGroup>
    <Content Include="Ducky.ico" />
  </ItemGroup>

  <ItemGroup>
    <None Include="NLog.dll.nlog">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\Rubberduck.VBEditor\Rubberduck.VBEditor.csproj" />
    <ProjectReference Include="..\Rubberduck.VBEditor.VBA\Rubberduck.VBEditor.VBA.csproj">
      <Project>{4ccd023c-a503-4bc7-9e9a-a509b4a16d41}</Project>
      <Name>Rubberduck.VBEditor.VBA</Name>
    </ProjectReference>
    <ProjectReference Include="..\..\Client\Rubberduck.UI\Rubberduck.UI.csproj" />
    <ProjectReference Include="..\..\Server\Rubberduck.Parsing\Rubberduck.Parsing.csproj" />
    <ProjectReference Include="..\..\Server\Rubberduck.ServerPlatform\Rubberduck.ServerPlatform.csproj" />
    <ProjectReference Include="..\..\Shared\Rubberduck.InternalApi\Rubberduck.InternalApi.csproj">
      <Project>{5E2588A5-2EF2-4267-952D-53AEC8F5F173}</Project>
      <Name>Rubberduck.InternalApi</Name>
    </ProjectReference>
    <ProjectReference Include="..\..\Shared\Rubberduck.Resources\Rubberduck.Resources.csproj">
      <Project>{ED65BAAD-743D-4144-AEE2-8D956E6DA599}</Project>
      <Name>Rubberduck.Resources</Name>
    </ProjectReference>
    <ProjectReference Include="..\..\Client\Rubberduck.UI\Rubberduck.UI.csproj" />
  </ItemGroup>

  <ItemGroup>
    <Reference Include="Extensibility">
      <HintPath>..\..\libs\extensibility.dll</HintPath>
      <Aliases>VBExt</Aliases>
    </Reference>
  </ItemGroup>

  <ItemGroup>
    <COMReference Include="Microsoft.Office.Core">
      <Guid>{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}</Guid>
      <VersionMajor>2</VersionMajor>
      <VersionMinor>8</VersionMinor>
      <Lcid>0</Lcid>
      <WrapperTool>primary</WrapperTool>
      <Isolated>False</Isolated>
      <EmbedInteropTypes>True</EmbedInteropTypes>
    </COMReference>
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="CommandLineParser" Version="2.9.1" />
    <PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0" />
    <PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="7.0.0" />
    <PackageReference Include="Microsoft.Extensions.Logging" Version="7.0.0" />
    <PackageReference Include="NLog" Version="5.2.4" />
    <PackageReference Include="NLog.Extensions.Logging" Version="5.3.4" />
    <PackageReference Include="OmniSharp.Extensions.JsonRpc" Version="0.19.9" />
    <PackageReference Include="OmniSharp.Extensions.LanguageProtocol" Version="0.19.9" />
    <PackageReference Include="Ookii.Dialogs.Wpf" Version="5.0.1" />
    <PackageReference Include="System.IO.Abstractions" Version="19.2.69" />
    <PackageReference Include="System.Text.Json" Version="7.0.3" />
    <PackageReference Include="Antlr4.Runtime" Version="4.6.6" />
  </ItemGroup>

  <ItemGroup>
    <None Update="NLog-addin.config">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="NLog-c;oemt.config">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
    <None Update="NLog.xsd">
      <SubType>Designer</SubType>
    </None>
  </ItemGroup>

</Project>
