| File: ScopedCss\ResolveAllScopedCssAssets.cs | Web Access |
| Project: src\sdk\src\StaticWebAssetsSdk\Tasks\Microsoft.NET.Sdk.StaticWebAssets.Tasks.csproj (Microsoft.NET.Sdk.StaticWebAssets.Tasks) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. #nullable disable using Microsoft.Build.Framework; namespace Microsoft.AspNetCore.StaticWebAssets.Tasks; [MSBuildMultiThreadableTask] public class ResolveAllScopedCssAssets : Task { [Required] public ITaskItem[] StaticWebAssets { get; set; } [Output] public ITaskItem[] ScopedCssAssets { get; set; } [Output] public ITaskItem[] ScopedCssProjectBundles { get; set; } public override bool Execute() { var scopedCssAssets = new List<ITaskItem>(); var scopedCssProjectBundles = new List<ITaskItem>(); for (var i = 0; i < StaticWebAssets.Length; i++) { var swa = StaticWebAssets[i]; var path = swa.GetMetadata("RelativePath"); if (path.EndsWith(".rz.scp.css", StringComparison.OrdinalIgnoreCase)) { scopedCssAssets.Add(swa); } else if (path.EndsWith(".bundle.scp.css", StringComparison.OrdinalIgnoreCase)) { scopedCssProjectBundles.Add(swa); } } ScopedCssAssets = [.. scopedCssAssets]; ScopedCssProjectBundles = [.. scopedCssProjectBundles]; return !Log.HasLoggedErrors; } }