@@ -349,6 +349,70 @@ Copyright (c) .NET Foundation. All rights reserved.
349349
350350 </Target >
351351
352+ <!--
353+ Forward compatibility with new version of static web assets. This target is invoked by later versions of static web assets to determine
354+ what targets to invoke, what properties to set, and what properties to remove when doing so, for retrieving the referenced project static
355+ web assets. For earlier versions of static web assets we will collect the assets and "upgrade" them newer versions by providing default
356+ values for the additional metadata.
357+ -->
358+ <Target Name =" GetStaticWebAssetsProjectConfiguration" Returns =" @(_StaticWebAssetThisProjectConfiguration)" >
359+ <ItemGroup >
360+ <_StaticWebAssetThisProjectConfiguration Include =" $(MSBuildProjectFullPath)" >
361+ <Version >1</Version >
362+ <Source >$(PackageId)</Source >
363+ <StaticWebAssetProjectMode >Default</StaticWebAssetProjectMode >
364+ <GetBuildAssetsTargets >GetCurrentProjectStaticWebAssetsV2</GetBuildAssetsTargets >
365+ <AdditionalBuildProperties >$(StaticWebAssetsAdditionalBuildProperties)</AdditionalBuildProperties >
366+ <AdditionalBuildPropertiesToRemove >$(StaticWebAssetsAdditionalBuildPropertiesToRemove)</AdditionalBuildPropertiesToRemove >
367+ <GetPublishAssetsTargets ></GetPublishAssetsTargets >
368+ </_StaticWebAssetThisProjectConfiguration >
369+ </ItemGroup >
370+ </Target >
371+
372+ <PropertyGroup >
373+ <GetCurrentProjectStaticWebAssetsV2DependsOn >GetCurrentProjectStaticWebAssets;$(GetCurrentProjectStaticWebAssetsV2DependsOn);</GetCurrentProjectStaticWebAssetsV2DependsOn >
374+ </PropertyGroup >
375+
376+ <Target Name =" GetCurrentProjectStaticWebAssetsV2" DependsOnTargets =" $(GetCurrentProjectStaticWebAssetsV2DependsOn)" Returns =" @(_ThisProjectStaticWebAssetItems)" >
377+ <ItemGroup >
378+ <_StaticWebAssetUpgradeMetadataToKeep Include =" SourceType" />
379+ <_StaticWebAssetUpgradeMetadataToKeep Include =" SourceId" />
380+ <_StaticWebAssetUpgradeMetadataToKeep Include =" BasePath" />
381+ <_StaticWebAssetUpgradeMetadataToKeep Include =" RelativePath" />
382+ <_StaticWebAssetUpgradeMetadataToKeep Include =" ContentRoot" />
383+ <_StaticWebAssetUpgradeMetadataToKeep Include =" AssetKind" />
384+ <_StaticWebAssetUpgradeMetadataToKeep Include =" AssetMode" />
385+ <_StaticWebAssetUpgradeMetadataToKeep Include =" AssetRole" />
386+ <_StaticWebAssetUpgradeMetadataToKeep Include =" RelatedAsset" />
387+ <_StaticWebAssetUpgradeMetadataToKeep Include =" AssetTraitName" />
388+ <_StaticWebAssetUpgradeMetadataToKeep Include =" AssetTraitValue" />
389+ <_StaticWebAssetUpgradeMetadataToKeep Include =" CopyToOutputDirectory" />
390+ <_StaticWebAssetUpgradeMetadataToKeep Include =" CopyToPublishDirectory" />
391+ <_StaticWebAssetUpgradeMetadataToKeep Include =" OriginalItemSpec" />
392+
393+ <_ThisProjectStaticWebAssetItems KeepMetadata =" @(_StaticWebAssetUpgradeMetadataToKeep)" Include =" @(_ThisProjectStaticWebAssets->'%(FullPath)')" >
394+ <ResultType >StaticWebAsset</ResultType >
395+ <SourceType >Project</SourceType >
396+ <AssetKind Condition =" '%(_ThisProjectStaticWebAssets.AssetKind)' == ''" >All</AssetKind >
397+ <AssetMode Condition =" '%(_ThisProjectStaticWebAssets.AssetMode)' == ''" >All</AssetMode >
398+ <AssetRole Condition =" '%(_ThisProjectStaticWebAssets.AssetRole)' == ''" >Primary</AssetRole >
399+ <RelatedAsset Condition =" '%(_ThisProjectStaticWebAssets.RelatedAsset)' == ''" ></RelatedAsset >
400+ <AssetTraitName Condition =" '%(_ThisProjectStaticWebAssets.AssetTraitName)' == ''" ></AssetTraitName >
401+ <AssetTraitValue Condition =" '%(_ThisProjectStaticWebAssets.AssetTraitValue)' == ''" ></AssetTraitValue >
402+ <CopyToOutputDirectory Condition =" '%(_ThisProjectStaticWebAssets.CopyToOutputDirectory)' == ''" >Never</CopyToOutputDirectory >
403+ <CopyToPublishDirectory Condition =" '%(_ThisProjectStaticWebAssets.CopyToPublishDirectory)' == ''" >PreserveNewest</CopyToPublishDirectory >
404+ <OriginalItemSpec Condition =" '%(_ThisProjectStaticWebAssets.OriginalItemSpec)' == ''" >%(_ThisProjectStaticWebAssets.Identity)</OriginalItemSpec >
405+ </_ThisProjectStaticWebAssetItems >
406+ <_ThisProjectStaticWebAssetItems Include =" $(PackageId)\wwwroot" Condition =" Exists('$(MSBuildProjectDirectory)\wwwroot')" >
407+ <ResultType >StaticWebAssetDiscoveryPattern</ResultType >
408+ <ContentRoot >$(MSBuildProjectDirectory)\wwwroot\</ContentRoot >
409+ <BasePath >$(StaticWebAssetBasePath)</BasePath >
410+ <Source >$(PackageId)</Source >
411+ <Pattern >**</Pattern >
412+ </_ThisProjectStaticWebAssetItems >
413+ </ItemGroup >
414+ </Target >
415+
352416 <!--
353417 ============================================================
354418 Static web assets packing related targets
0 commit comments