@@ -174,6 +174,11 @@ Copyright (c) .NET Foundation. All rights reserved.
174
174
ResolveRazorEmbeddedResources;
175
175
</ResolveRazorCompileInputsDependsOn >
176
176
177
+ <ResolveScopedCssOutputsDependsOn >
178
+ $(ResolveScopedCssOutputsDependsOn);
179
+ ResolveCssScopes;
180
+ </ResolveScopedCssOutputsDependsOn >
181
+
177
182
<DebugSymbolsProjectOutputGroupDependsOn >
178
183
$(DebugSymbolsProjectOutputGroupDependsOn);
179
184
_RazorAddDebugSymbolsProjectOutputGroupOutput
@@ -198,16 +203,6 @@ Copyright (c) .NET Foundation. All rights reserved.
198
203
ResolveRazorComponentInputs;
199
204
AssignRazorComponentTargetPaths
200
205
</_RazorGenerateComponentDesignTimeDependsOn >
201
-
202
- <AssignRazorComponentTargetPathsDependsOn Condition =" '$(ScopedCssEnabled)' == 'true'" >
203
- $(AssignRazorComponentTargetPathsDependsOn);
204
- ResolveCssScopes;
205
- </AssignRazorComponentTargetPathsDependsOn >
206
-
207
- <AssignRazorGenerateTargetPathsDependsOn Condition =" '$(ScopedCssEnabled)' == 'true'" >
208
- $(AssignRazorGenerateTargetPathsDependsOn);
209
- ResolveCssScopes;
210
- </AssignRazorGenerateTargetPathsDependsOn >
211
206
</PropertyGroup >
212
207
213
208
<!--
@@ -554,6 +549,26 @@ Copyright (c) .NET Foundation. All rights reserved.
554
549
</ItemGroup >
555
550
</Target >
556
551
552
+ <!-- This target validates that there is at most one scoped css file per component, that there are no scoped css files without a
553
+ matching component, and then adds the associated scope to the razor components that have a matching scoped css file.
554
+ -->
555
+ <Target
556
+ Name =" ResolveCssScopes"
557
+ Condition =" '$(ScopedCssEnabled)' == 'true'"
558
+ BeforeTargets =" AssignRazorComponentTargetPaths;AssignRazorGenerateTargetPaths"
559
+ DependsOnTargets =" ComputeCssScope;ResolveRazorComponentInputs;ResolveRazorGenerateInputs" >
560
+ <ApplyCssScopes RazorComponents =" @(RazorComponent)" RazorGenerate =" @(RazorGenerate)" ScopedCss =" @(_ScopedCss)" >
561
+ <Output TaskParameter =" RazorComponentsWithScopes" ItemName =" _RazorComponentsWithScopes" />
562
+ <Output TaskParameter =" RazorGenerateWithScopes" ItemName =" _RazorGenerateWithScopes" />
563
+ </ApplyCssScopes >
564
+ <ItemGroup >
565
+ <RazorComponent Remove =" @(_RazorComponentsWithScopes)" />
566
+ <RazorComponent Include =" @(_RazorComponentsWithScopes)" />
567
+ <RazorGenerate Remove =" @(_RazorGenerateWithScopes)" />
568
+ <RazorGenerate Include =" @(_RazorGenerateWithScopes)" />
569
+ </ItemGroup >
570
+ </Target >
571
+
557
572
<!--
558
573
Temporarary workaround for https://github.com/dotnet/aspnetcore/issues/6859. This can be removed after a VS insertion with a newer copy of the DesignTime targets.
559
574
-->
@@ -564,9 +579,7 @@ Copyright (c) .NET Foundation. All rights reserved.
564
579
</Content >
565
580
</ItemGroup >
566
581
567
- <Target Name =" AssignRazorComponentTargetPaths"
568
- Condition =" '@(RazorComponent)' != ''"
569
- DependsOnTargets =" $(AssignRazorComponentTargetPathsDependsOn)" >
582
+ <Target Name =" AssignRazorComponentTargetPaths" Condition =" '@(RazorComponent)' != ''" >
570
583
<AssignTargetPath Files =" @(RazorComponent)" RootFolder =" $(MSBuildProjectDirectory)" >
571
584
<Output TaskParameter =" AssignedFiles" ItemName =" RazorComponentWithTargetPath" />
572
585
</AssignTargetPath >
@@ -586,9 +599,7 @@ Copyright (c) .NET Foundation. All rights reserved.
586
599
</ItemGroup >
587
600
</Target >
588
601
589
- <Target Name =" AssignRazorGenerateTargetPaths"
590
- Condition =" '@(RazorGenerate)' != ''"
591
- DependsOnTargets =" $(AssignRazorGenerateTargetPathsDependsOn)" >
602
+ <Target Name =" AssignRazorGenerateTargetPaths" Condition =" '@(RazorGenerate)' != ''" >
592
603
<AssignTargetPath Files =" @(RazorGenerate)" RootFolder =" $(MSBuildProjectDirectory)" >
593
604
<Output TaskParameter =" AssignedFiles" ItemName =" RazorGenerateWithTargetPath" />
594
605
</AssignTargetPath >
0 commit comments