<?xml version="1.0" encoding="utf-8"?>
<Project>
  <Import Sdk="Microsoft.NET.Sdk" Project="Sdk.props" />

  <PropertyGroup>
    <TargetFramework>net472</TargetFramework>
    <AssemblyName>ILSpy.BamlDecompiler.Plugin</AssemblyName>
    <LangVersion>8.0</LangVersion>

    <GenerateAssemblyInfo>False</GenerateAssemblyInfo>

    <EnableDefaultItems>false</EnableDefaultItems>

    <BaseAddress>6488064</BaseAddress>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)' == 'Debug'">
    <DebugType>full</DebugType>
    <DebugSymbols>true</DebugSymbols>
    <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)' == 'Release'">
    <DebugType>pdbonly</DebugType>
    <DebugSymbols>true</DebugSymbols>
  </PropertyGroup>

  <PropertyGroup>
    <OutputPath>..\ILSpy\bin\$(Configuration)\</OutputPath>
  </PropertyGroup>

  <ItemGroup>
    <Reference Include="PresentationCore" />
    <Reference Include="PresentationFramework" />
    <Reference Include="WindowsBase" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="AvalonEdit" Version="6.1.0-preview1" />
    <PackageReference Include="System.Composition" Version="1.3.0" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\ICSharpCode.Decompiler\ICSharpCode.Decompiler.csproj">
      <Private>False</Private>
    </ProjectReference>
    <ProjectReference Include="..\ILSpy\ILSpy.csproj">
      <Private>False</Private>
    </ProjectReference>
    <ProjectReference Include="..\SharpTreeView\ICSharpCode.TreeView.csproj">
      <Private>False</Private>
    </ProjectReference>
  </ItemGroup>

  <ItemGroup>
    <Compile Include="BamlElement.cs" />
    <Compile Include="BamlResourceNodeFactory.cs" />
    <Compile Include="BamlResourceEntryNode.cs" />
    <Compile Include="Baml\BamlContext.cs" />
    <Compile Include="Baml\BamlDocument.cs" />
    <Compile Include="Baml\BamlNode.cs" />
    <Compile Include="Baml\BamlReader.cs" />
    <Compile Include="Baml\BamlRecords.cs" />
    <Compile Include="Baml\BamlWriter.cs" />
    <Compile Include="Baml\KnownMembers.cs" />
    <Compile Include="Baml\KnownThings.cs" />
    <Compile Include="Baml\KnownThings.g.cs" />
    <Compile Include="Baml\KnownTypes.cs" />
    <Compile Include="BamlConnectionId.cs" />
    <Compile Include="Handlers\Blocks\ConstructorParametersHandler.cs" />
    <Compile Include="Handlers\Blocks\DocumentHandler.cs" />
    <Compile Include="Handlers\Blocks\ElementHandler.cs" />
    <Compile Include="Handlers\Blocks\KeyElementStartHandler.cs" />
    <Compile Include="Handlers\Blocks\PropertyArrayHandler.cs" />
    <Compile Include="Handlers\Blocks\PropertyComplexHandler.cs" />
    <Compile Include="Handlers\Blocks\PropertyDictionaryHandler.cs" />
    <Compile Include="Handlers\Blocks\PropertyListHandler.cs" />
    <Compile Include="Handlers\Records\AssemblyInfoHandler.cs" />
    <Compile Include="Handlers\Records\AttributeInfoHandler.cs" />
    <Compile Include="Handlers\Records\ConnectionIdHandler.cs" />
    <Compile Include="Handlers\Records\ConstructorParameterTypeHandler.cs" />
    <Compile Include="Handlers\Records\ContentPropertyHandler.cs" />
    <Compile Include="Handlers\Records\DefAttributeHandler.cs" />
    <Compile Include="Handlers\Records\DefAttributeKeyStringHandler.cs" />
    <Compile Include="Handlers\Records\DefAttributeKeyTypeHandler.cs" />
    <Compile Include="Handlers\Records\DeferableContentStartHandler.cs" />
    <Compile Include="Handlers\Records\LineNumberAndPositionHandler.cs" />
    <Compile Include="Handlers\Records\LinePositionHandler.cs" />
    <Compile Include="Handlers\Records\LiteralContentHandler.cs" />
    <Compile Include="Handlers\Records\OptimizedStaticResourceHandler.cs" />
    <Compile Include="Handlers\Records\PIMappingHandler.cs" />
    <Compile Include="Handlers\Records\PresentationOptionsAttributeHandler.cs" />
    <Compile Include="Handlers\Records\PropertyCustomHandler.cs" />
    <Compile Include="Handlers\Records\PropertyHandler.cs" />
    <Compile Include="Handlers\Records\PropertyTypeReferenceHandler.cs" />
    <Compile Include="Handlers\Records\PropertyWithConverterHandler.cs" />
    <Compile Include="Handlers\Records\PropertyWithExtensionHandler.cs" />
    <Compile Include="Handlers\Records\PropertyWithStaticResourceIdHandler.cs" />
    <Compile Include="Handlers\Records\StaticResourceStartHandler.cs" />
    <Compile Include="Handlers\Records\StaticResourceIdHandler.cs" />
    <Compile Include="Handlers\Records\TextHandler.cs" />
    <Compile Include="Handlers\Records\TextWithConverterHandler.cs" />
    <Compile Include="Handlers\Records\TypeInfoHandler.cs" />
    <Compile Include="Handlers\Records\XmlnsPropertyHandler.cs" />
    <Compile Include="IHandlers.cs" />
    <Compile Include="IRewritePass.cs" />
    <Compile Include="Properties\AssemblyInfo.cs" />
    <Compile Include="Rewrite\AttributeRewritePass.cs" />
    <Compile Include="Rewrite\ConnectionIdRewritePass.cs" />
    <Compile Include="Rewrite\DocumentRewritePass.cs" />
    <Compile Include="Rewrite\MarkupExtensionRewritePass.cs" />
    <Compile Include="Rewrite\XClassRewritePass.cs" />
    <Compile Include="XamlContext.cs" />
    <Compile Include="XamlDecompiler.cs" />
    <Compile Include="Xaml\NamespaceMap.cs" />
    <Compile Include="Xaml\XamlExtension.cs" />
    <Compile Include="Xaml\XamlPathDeserializer.cs" />
    <Compile Include="Xaml\XamlProperty.cs" />
    <Compile Include="Xaml\XamlResourceKey.cs" />
    <Compile Include="Xaml\XamlType.cs" />
    <Compile Include="Xaml\XamlUtils.cs" />
    <Compile Include="XmlnsDictionary.cs" />
  </ItemGroup>

  <Import Sdk="Microsoft.NET.Sdk" Project="Sdk.targets" />

  <Target Name="RemoveTransitiveProjectReferences" AfterTargets="IncludeTransitiveProjectReferences">
    <ItemGroup>
      <ProjectReference Remove="@(_TransitiveProjectReferences)" />
    </ItemGroup>
  </Target>

</Project>