<Project Sdk="Microsoft.NET.Sdk">

	<PropertyGroup>
		<TargetFrameworks>net462;net7.0;net8.0;net9.0</TargetFrameworks>
		<ImplicitUsings>enable</ImplicitUsings>
		<!-- NuGet Package Metadata -->
		<PackageId>DigitalData.Core.Abstractions</PackageId>
		<Authors>Digital Data GmbH</Authors>
		<Company>Digital Data GmbH</Company>
		<Product>DigitalData.Core.Abstractions</Product>
		<Description>This package contains abstractions for the DigitalData.Core library.</Description>
		<PackageTags>digital data core abstractions clean architecture</PackageTags>
		<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
		<Copyright>Copyright 2024</Copyright>
		<PackageProjectUrl></PackageProjectUrl>
		<RepositoryUrl>http://git.dd:3000/AppStd/WebCoreModules.git</RepositoryUrl>
		<PackAsTool>False</PackAsTool>
		<PackageIcon>core_icon.png</PackageIcon>
		<Version>4.3.0</Version>
		<AssemblyVersion>4.3.0</AssemblyVersion>
		<FileVersion>4.3.0</FileVersion>
	</PropertyGroup>

	<ItemGroup>
		<None Include="..\Assets\core_icon.png">
			<Pack>True</Pack>
			<PackagePath>\</PackagePath>
		</None>
	</ItemGroup>

	<!-- disable for net462 -->
	<PropertyGroup Condition="'$(TargetFramework)' == 'net462'">
		<Nullable>disable</Nullable>
		<ImplicitUsings>disable</ImplicitUsings>
		<LangVersion>7.3</LangVersion>
	</PropertyGroup>

	<!-- enable for net7 and more -->
	<PropertyGroup Condition="'$(TargetFramework)' == 'net7.0' Or '$(TargetFramework)' == 'net8.0' Or '$(TargetFramework)' == 'net9.0'">
		<Nullable>enable</Nullable>
		<ImplicitUsings>enable</ImplicitUsings>
		<LangVersion>latest</LangVersion>
	</PropertyGroup>

	<ItemGroup Condition="'$(TargetFramework)' == 'net462'">
	  <PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0" />
	  <PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="7.0.0" />
	</ItemGroup>
	
    <ItemGroup Condition="'$(TargetFramework)' == 'net7.0'">
      <PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="7.0.0" />
      <PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="7.0.4" />
      <PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0" />
    </ItemGroup>
	
    <ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
      <PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="8.0.1" />
      <PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="9.0.5" />
      <PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.1" />
    </ItemGroup>
	
    <ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
      <PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="9.0.5" />
      <PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="9.0.5" />
      <PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.5" />
    </ItemGroup>

</Project>