<Project>

  <!--
      .NET MAUI telemetry and failure tracking. These are used to detect when the user specified one of the
      various <UseMaui*> properties, but for some reason the workload was not installed correctly.
  -->
  <ItemGroup>
    <ProjectCapability Condition=" '$(UseMaui)' == 'true' " Include="UseMaui" />
    <ProjectCapability Condition=" '$(UseMauiCore)' == 'true' " Include="UseMauiCore" />
    <ProjectCapability Condition=" '$(UseMauiNuGets)' == 'true' " Include="UseMauiNuGets" />
    <ProjectCapability Condition=" '$(UseMauiEssentials)' == 'true' " Include="UseMauiEssentials" />
    <ProjectCapability Condition=" '$(UseMauiAssets)' == 'true' " Include="UseMauiAssets" />
  </ItemGroup>

  <!--
      Specifying any of the <UseMaui*> properties will enable the maui workload. BundledVersions.targets enables
      the specific parts of .NET MAUI SDK.
  -->
  <Import
      Condition=" ('$(UseMaui)' == 'true' or '$(UseMauiCore)' == 'true' or '$(UseMauiEssentials)' == 'true' or '$(UseMauiAssets)' == 'true') and ($([MSBuild]::VersionEquals($(TargetFrameworkVersion), '8.0'))) and ('$(SkipMauiWorkloadManifest)' != 'true') "
      Project="Sdk.targets" Sdk="Microsoft.Maui.Sdk.net8"
  />
  <Import
      Condition=" ('$(UseMaui)' == 'true' or '$(UseMauiCore)' == 'true' or '$(UseMauiEssentials)' == 'true' or '$(UseMauiAssets)' == 'true') and ($([MSBuild]::VersionEquals($(TargetFrameworkVersion), '7.0'))) and ('$(SkipMauiWorkloadManifest)' != 'true') "
      Project="Sdk.targets" Sdk="Microsoft.Maui.Sdk.net7"
  />

  <!--
      Previous versions of the .NET MAUI SDK used Microsoft.Maui.Resizetizer.Sdk, but the new version uses a NuGet.
  -->
  <Import
      Condition=" ('$(UseMaui)' == 'true' or '$(UseMauiAssets)' == 'true') and ($([MSBuild]::VersionEquals($(TargetFrameworkVersion), '7.0'))) and ('$(SkipMauiWorkloadManifest)' != 'true') "
      Project="Sdk.targets" Sdk="Microsoft.Maui.Resizetizer.Sdk"
  />

  <!--
      Previous versions of the .NET MAUI SDK used **FromWorkload**, so replace with explicit versions.
      The BundledVersions.targets that is imported is from the previous SDK, so all the other values are correct.
  -->
  <ItemGroup Condition=" $([MSBuild]::VersionEquals($(TargetFrameworkVersion), '7.0')) and ('$(SkipMauiWorkloadManifest)' != 'true') ">
    <KnownFrameworkReference
        Update="Microsoft.Maui.Core"
        DefaultRuntimeFrameworkVersion="$(MauiVersion)"
        LatestRuntimeFrameworkVersion="$(MauiVersion)"
        TargetingPackVersion="$(MauiVersion)"
    />
    <KnownFrameworkReference
        Update="Microsoft.Maui.Controls"
        DefaultRuntimeFrameworkVersion="$(MauiVersion)"
        LatestRuntimeFrameworkVersion="$(MauiVersion)"
        TargetingPackVersion="$(MauiVersion)"
    />
    <KnownFrameworkReference
        Update="Microsoft.Maui.Essentials"
        DefaultRuntimeFrameworkVersion="$(MauiVersion)"
        LatestRuntimeFrameworkVersion="$(MauiVersion)"
        TargetingPackVersion="$(MauiVersion)"
    />
  </ItemGroup>

</Project>
