From 4ca18b91c9e687194298322d72c7cafc680676d6 Mon Sep 17 00:00:00 2001 From: Javier Calvarro Nelson Date: Thu, 3 Jul 2025 00:31:40 +0200 Subject: [PATCH 1/3] Moving tests --- sdk.slnx | 1 + ...osoft.NET.Sdk.StaticWebAssets.Tasks.csproj | 1 + .../.editorconfig | 12 + .../AspNetSdkBaselineTest.cs | 326 ++ .../ComputeStaticWebAssetsTargetPathsTest.cs | 140 + ...NuGetPackageFolderAspNetSdkBaselineTest.cs | 26 + .../LegacyStaticWebAssetsV1IntegrationTest.cs | 132 + ...osoft.NET.Sdk.StaticWebAssets.Tests.csproj | 59 + .../StaticWebAssetEndpointsIntegrationTest.cs | 617 +++ .../ApplyCompressionNegotiationTest.cs | 1434 +++++ .../StaticWebAssets/ApplyCssScopesTest.cs | 379 ++ .../StaticWebAssets/ComputeCssScopesTests.cs | 133 + ...ndpointsForReferenceStaticWebAssetsTest.cs | 146 + ...ComputeReferenceStaticWebAssetItemsTest.cs | 396 ++ ...uteStaticWebAssetsForCurrentProjectTest.cs | 316 ++ .../StaticWebAssets/ConcatenateFilesTest.cs | 353 ++ .../ContentTypeProviderTests.cs | 155 + .../DefineStaticWebAssetEndpointsTest.cs | 687 +++ .../DiscoverDefaultScopedCssItemsTests.cs | 101 + .../DiscoverPrecompressedAssetsTest.cs | 115 + .../DiscoverStaticWebAssetsTest.cs | 745 +++ .../FilterStaticWebAssetEndpointsTest.cs | 316 ++ .../FingerprintPatternMatcherTest.cs | 128 + ...rateStaticWebAssetEndpointsManifestTest.cs | 296 ++ ...ateStaticWebAssetEndpointsPropsFileTest.cs | 227 + ...eStaticWebAssetsDevelopmentManifestTest.cs | 755 +++ .../GenerateStaticWebAssetsManifestTest.cs | 460 ++ .../GenerateStaticWebAssetsPropsFileTest.cs | 526 ++ .../GenerateV1StaticWebAssetsManifestTest.cs | 273 + .../Globbing/PathTokenizerTest.cs | 133 + ...icWebAssetGlobMatcherTest.Compatibility.cs | 302 ++ .../Globbing/StaticWebAssetGlobMatcherTest.cs | 388 ++ .../MergeConfigurationPropertiesTest.cs | 298 ++ .../OverrideHtmlAssetPlaceholdersTest.cs | 290 + .../ReadStaticWebAssetsManifestFileTest.cs | 383 ++ .../ResolveAllScopedCssAssetsTest.cs | 122 + .../ResolveCompressedAssetsTest.cs | 475 ++ ...tedStaticWebAssetEndpointsForAssetsTest.cs | 295 ++ .../StaticWebAssets/RewriteCssTest.cs | 389 ++ .../StaticWebAssetPathPatternTest.cs | 724 +++ ...icWebAssetsGeneratePackagePropsFileTest.cs | 49 + ...ateExternallyDefinedStaticWebAssetsTest.cs | 257 + .../UpdateStaticWebAssetEndpointsTest.cs | 381 ++ .../ValidateStaticWebAssetsUniquePathsTest.cs | 216 + .../StaticWebAssetsBaselineComparer.cs | 517 ++ .../StaticWebAssetsBaselineFactory.cs | 452 ++ .../StaticWebAssetsBaselineFactory2.cs | 452 ++ ...ctlyBundlesScopedCssFiles.Build.files.json | 4 + ...sScopedCssFiles.Build.staticwebassets.json | 2265 ++++++++ ...esPublishAssets.Build.staticwebassets.json | 2265 ++++++++ ...tAndCopiesPublishAssets.Publish.files.json | 65 + ...PublishAssets.Publish.staticwebassets.json | 3735 +++++++++++++ ...AndCopiesItToOutputFolder.Build.files.json | 4 + ...tToOutputFolder.Build.staticwebassets.json | 2265 ++++++++ ...alizersFromClassLibraries.Build.files.json | 6 + ...mClassLibraries.Build.staticwebassets.json | 2846 ++++++++++ ...tToOutputFolder.Build.staticwebassets.json | 2265 ++++++++ ...tputFolder_NoDependencies.Build.files.json | 4 + ..._NoDependencies.Build.staticwebassets.json | 2265 ++++++++ ...WebAssetsV1ClassLibraries.Build.files.json | 4 + ...1ClassLibraries.Build.staticwebassets.json | 1921 +++++++ ...d_Can_DisableAssetCaching.Build.files.json | 6 + ...bleAssetCaching.Build.staticwebassets.json | 1390 +++++ ...pointsForAssets.Build.staticwebassets.json | 1581 ++++++ ...s_CanIncludeBrowserAssets.Build.files.json | 1 + ...deBrowserAssets.Build.staticwebassets.json | 205 + ...esPublishAssets.Build.staticwebassets.json | 1390 +++++ ...tAndCopiesPublishAssets.Publish.files.json | 26 + ...PublishAssets.Publish.staticwebassets.json | 2346 +++++++++ ...tects_PrecompressedAssets.Build.files.json | 4 + ...ompressedAssets.Build.staticwebassets.json | 1227 +++++ ...sJsModulesBasedOnPatterns.Build.files.json | 6 + ...BasedOnPatterns.Build.staticwebassets.json | 1772 +++++++ ...AssetsWith_TheSameContent.Build.files.json | 6 + ..._TheSameContent.Build.staticwebassets.json | 1764 +++++++ ...enHasNotChanged.Build.staticwebassets.json | 1390 +++++ ...printsContent_WhenEnabled.Build.files.json | 6 + ...ent_WhenEnabled.Build.staticwebassets.json | 1742 ++++++ ...AndCopiesItToOutputFolder.Build.files.json | 6 + ...tToOutputFolder.Build.staticwebassets.json | 1390 +++++ ...sManifest_WhenFilesChange.Build.files.json | 6 + ...WhenFilesChange.Build.staticwebassets.json | 1390 +++++ ...t_WhenFilesChange_Updated.Build.files.json | 6 + ...sChange_Updated.Build.staticwebassets.json | 1581 ++++++ ...ctReference_UpdatesAssets.Build.files.json | 1 + ...e_UpdatesAssets.Build.staticwebassets.json | 416 ++ ...sionOnAllAssets.Build.staticwebassets.json | 1104 ++++ ...ermediateOutput.Build.staticwebassets.json | 1390 +++++ ...esPublishAssets.Build.staticwebassets.json | 2265 ++++++++ ...tAndCopiesPublishAssets.Publish.files.json | 65 + ...PublishAssets.Publish.staticwebassets.json | 3735 +++++++++++++ ...aryInitializers.Build.staticwebassets.json | 2647 ++++++++++ ...ish_LibraryInitializers.Publish.files.json | 41 + ...yInitializers.Publish.staticwebassets.json | 4371 +++++++++++++++ ...esPublishAssets.Build.staticwebassets.json | 2265 ++++++++ ...tAndCopiesPublishAssets.Publish.files.json | 65 + ...PublishAssets.Publish.staticwebassets.json | 3735 +++++++++++++ ...heRightLocation.Build.staticwebassets.json | 2830 ++++++++++ ...ssetsToTheRightLocation.Publish.files.json | 86 + ...RightLocation.Publish.staticwebassets.json | 4677 +++++++++++++++++ ...esPublishAssets.Build.staticwebassets.json | 2265 ++++++++ ...tAndCopiesPublishAssets.Publish.files.json | 35 + ...PublishAssets.Publish.staticwebassets.json | 3735 +++++++++++++ ...esPublishAssets.Build.staticwebassets.json | 2265 ++++++++ ...tAndCopiesPublishAssets.Publish.files.json | 35 + ...PublishAssets.Publish.staticwebassets.json | 3735 +++++++++++++ ...1ClassLibraries.Build.staticwebassets.json | 1921 +++++++ ...bAssetsV1ClassLibraries.Publish.files.json | 63 + ...lassLibraries.Publish.staticwebassets.json | 3152 +++++++++++ ..._With_PrecompressedAssets.Build.files.json | 18 + ...ompressedAssets.Build.staticwebassets.json | 1227 +++++ ...intsForAssets.Publish.staticwebassets.json | 2660 ++++++++++ ...ublish_Assets.Publish.staticwebassets.json | 2660 ++++++++++ ...CanIncludeBrowserAssets.Publish.files.json | 8 + ...BrowserAssets.Publish.staticwebassets.json | 328 ++ ...esPublishAssets.Build.staticwebassets.json | 1390 +++++ ...tAndCopiesPublishAssets.Publish.files.json | 26 + ...PublishAssets.Publish.staticwebassets.json | 2346 +++++++++ ...esPublishAssets.Build.staticwebassets.json | 1390 +++++ ...tAndCopiesPublishAssets.Publish.files.json | 17 + ...PublishAssets.Publish.staticwebassets.json | 2346 +++++++++ ...esPublishAssets.Build.staticwebassets.json | 1390 +++++ ...tAndCopiesPublishAssets.Publish.files.json | 17 + ...PublishAssets.Publish.staticwebassets.json | 2346 +++++++++ ...undleToTheRightLocation.Publish.files.json | 41 + ...RightLocation.Publish.staticwebassets.json | 3568 +++++++++++++ ...e_UpdatesAssets.Build.staticwebassets.json | 392 ++ ...Reference_UpdatesAssets.Publish.files.json | 14 + ...UpdatesAssets.Publish.staticwebassets.json | 638 +++ ...tToOutputFolder.Build.staticwebassets.json | 1390 +++++ ...sItToOutputFolder_Rebuild.Build.files.json | 6 + ...tFolder_Rebuild.Build.staticwebassets.json | 1390 +++++ ...ible_WithPreviousVersions.Build.files.json | 4 + ...reviousVersions.Build.staticwebassets.json | 2104 ++++++++ ...le_WithPreviousVersions.Publish.files.json | 69 + ...viousVersions.Publish.staticwebassets.json | 3458 ++++++++++++ ...aticWebAssetsCompressionIntegrationTest.cs | 219 + .../StaticWebAssetsCrossTargetingTests.cs | 109 + .../StaticWebAssetsDesignTimeTest.cs | 163 + .../StaticWebAssetsFingerprintingTest.cs | 206 + .../StaticWebAssetsIntegrationTest.cs | 958 ++++ .../StaticWebAssetsPackIntegrationTest.cs | 1730 ++++++ .../content/ExternalStaticAssets.targets | 69 + 143 files changed, 136129 insertions(+) create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/.editorconfig create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/AspNetSdkBaselineTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/ComputeStaticWebAssetsTargetPathsTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/IsolatedNuGetPackageFolderAspNetSdkBaselineTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/LegacyStaticWebAssetsV1IntegrationTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/Microsoft.NET.Sdk.StaticWebAssets.Tests.csproj create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetEndpointsIntegrationTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ApplyCompressionNegotiationTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ApplyCssScopesTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeCssScopesTests.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeEndpointsForReferenceStaticWebAssetsTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeReferenceStaticWebAssetItemsTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeStaticWebAssetsForCurrentProjectTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ConcatenateFilesTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ContentTypeProviderTests.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DefineStaticWebAssetEndpointsTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DiscoverDefaultScopedCssItemsTests.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DiscoverPrecompressedAssetsTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DiscoverStaticWebAssetsTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/FilterStaticWebAssetEndpointsTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/FingerprintPatternMatcherTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsManifestTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsPropsFileTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetsDevelopmentManifestTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetsManifestTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetsPropsFileTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateV1StaticWebAssetsManifestTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/Globbing/PathTokenizerTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.Compatibility.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/MergeConfigurationPropertiesTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/OverrideHtmlAssetPlaceholdersTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ReadStaticWebAssetsManifestFileTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ResolveAllScopedCssAssetsTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ResolveCompressedAssetsTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ResolveFingerprintedStaticWebAssetEndpointsForAssetsTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/RewriteCssTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/StaticWebAssetPathPatternTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/StaticWebAssetsGeneratePackagePropsFileTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/UpdateExternallyDefinedStaticWebAssetsTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/UpdateStaticWebAssetEndpointsTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ValidateStaticWebAssetsUniquePathsTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineComparer.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineFactory.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineFactory2.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_CreatesEndpointsForAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DoesNotUpdateManifest_WhenHasNotChanged.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/CanEnable_CompressionOnAllAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Clean_RemovesManifestFrom_BuildAndIntermediateOutput.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets_BuildAndPublish_Assets.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.files.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.staticwebassets.json create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsCompressionIntegrationTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsCrossTargetingTests.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsDesignTimeTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsFingerprintingTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsIntegrationTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsPackIntegrationTest.cs create mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/content/ExternalStaticAssets.targets diff --git a/sdk.slnx b/sdk.slnx index d36ac8cecaec..09939f5d6b46 100644 --- a/sdk.slnx +++ b/sdk.slnx @@ -313,6 +313,7 @@ + diff --git a/src/StaticWebAssetsSdk/Tasks/Microsoft.NET.Sdk.StaticWebAssets.Tasks.csproj b/src/StaticWebAssetsSdk/Tasks/Microsoft.NET.Sdk.StaticWebAssets.Tasks.csproj index a5ba0b007ad8..1d3be9039972 100644 --- a/src/StaticWebAssetsSdk/Tasks/Microsoft.NET.Sdk.StaticWebAssets.Tasks.csproj +++ b/src/StaticWebAssetsSdk/Tasks/Microsoft.NET.Sdk.StaticWebAssets.Tasks.csproj @@ -43,6 +43,7 @@ + diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/.editorconfig b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/.editorconfig new file mode 100644 index 000000000000..17128bc319cd --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/.editorconfig @@ -0,0 +1,12 @@ +# C# files +[*.cs] + +#### Core EditorConfig Options #### + +# var preferences +csharp_style_var_elsewhere = true +csharp_style_var_for_built_in_types = true +csharp_style_var_when_type_is_apparent = true + +# IDE0073: The file header does not match the required text +dotnet_diagnostic.IDE0073.severity = error diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/AspNetSdkBaselineTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/AspNetSdkBaselineTest.cs new file mode 100644 index 000000000000..db1687fe8d17 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/AspNetSdkBaselineTest.cs @@ -0,0 +1,326 @@ +// 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 System.Reflection; +using System.Runtime.CompilerServices; +using System.Text.Json; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + [Trait("AspNetCore", "BaselineTest")] + public class AspNetSdkBaselineTest : AspNetSdkTest + { + private static readonly JsonSerializerOptions BaselineSerializationOptions = new() { WriteIndented = true }; + private readonly StaticWebAssetsBaselineComparer _comparer; + private readonly StaticWebAssetsBaselineFactory _baselineFactory; + + private string _baselinesFolder; + +#if GENERATE_SWA_BASELINES + public static bool GenerateBaselines = true; +#else + public static bool GenerateBaselines = bool.TryParse(Environment.GetEnvironmentVariable("ASPNETCORE_TEST_BASELINES"), out var result) && result; +#endif + + private bool _generateBaselines = GenerateBaselines; + + public AspNetSdkBaselineTest(ITestOutputHelper log) : base(log) + { + TestAssembly = Assembly.GetCallingAssembly(); + var testAssemblyMetadata = TestAssembly.GetCustomAttributes(); + RuntimeVersion = testAssemblyMetadata.SingleOrDefault(a => a.Key == "NetCoreAppRuntimePackageVersion").Value; + DefaultPackageVersion = testAssemblyMetadata.SingleOrDefault(a => a.Key == "DefaultTestBaselinePackageVersion").Value; + _comparer = CreateBaselineComparer(); + _baselineFactory = CreateBaselineFactory(); + } + + protected void EnsureLocalPackagesExists() + { + var packTransitiveDependency = CreatePackCommand(ProjectDirectory, "RazorPackageLibraryTransitiveDependency"); + ExecuteCommand(packTransitiveDependency).Should().Pass(); + + var packDirectDependency = CreatePackCommand(ProjectDirectory, "RazorPackageLibraryDirectDependency"); + ExecuteCommand(packDirectDependency).Should().Pass(); + } + + public AspNetSdkBaselineTest(ITestOutputHelper log, bool generateBaselines) : this(log) + { + _generateBaselines = generateBaselines; + _comparer = CreateBaselineComparer(); + } + + public TestAsset ProjectDirectory { get; set; } + + public string RuntimeVersion { get; set; } + + public string DefaultPackageVersion { get; set; } + + public string BaselinesFolder => + _baselinesFolder ??= ComputeBaselineFolder(); + + protected Assembly TestAssembly { get; } + + protected virtual StaticWebAssetsBaselineComparer CreateBaselineComparer() => StaticWebAssetsBaselineComparer.Instance; + + private static StaticWebAssetsBaselineFactory CreateBaselineFactory() => StaticWebAssetsBaselineFactory.Instance; + + protected virtual string ComputeBaselineFolder() => + Path.Combine(TestContext.GetRepoRoot() ?? AppContext.BaseDirectory, "test", "Microsoft.NET.Sdk.StaticWebAssets.Tests", "StaticWebAssetsBaselines"); + + protected virtual string EmbeddedResourcePrefix => string.Join('.', "Microsoft.NET.Sdk.StaticWebAssets.Tests", "StaticWebAssetsBaselines"); + + public StaticWebAssetsManifest LoadBuildManifest(string suffix = "", [CallerMemberName] string name = "") + { + if (_generateBaselines) + { + return default; + } + else + { + using var stream = GetManifestEmbeddedResource(suffix, name, "Build"); + var manifest = StaticWebAssetsManifest.FromStream(stream); + return manifest; + } + } + + public StaticWebAssetsManifest LoadPublishManifest(string suffix = "", [CallerMemberName] string name = "") + { + if (_generateBaselines) + { + return default; + } + else + { + using var stream = GetManifestEmbeddedResource(suffix, name, "Publish"); + var manifest = StaticWebAssetsManifest.FromStream(stream); + return manifest; + } + } + + protected void AssertBuildAssets( + StaticWebAssetsManifest manifest, + string outputFolder, + string intermediateOutputPath, + string suffix = "", + [CallerMemberName] string name = "") + { + var fileEnumerationOptions = new EnumerationOptions { RecurseSubdirectories = true }; + var wwwRootFolder = Path.Combine(outputFolder, "wwwroot"); + var wwwRootFiles = Directory.Exists(wwwRootFolder) ? + Directory.GetFiles(wwwRootFolder, "*", fileEnumerationOptions) : + []; + + var computedFiles = manifest.Assets + .Where(a => a.SourceType is StaticWebAsset.SourceTypes.Computed && + a.AssetKind is not StaticWebAsset.AssetKinds.Publish); + + // We keep track of assets that need to be copied to the output folder. + // In addition to that, we copy assets that are defined somewhere different + // from their content root folder when the content root does not match the output folder. + // We do this to allow copying things like Publish assets to temporary locations during the + // build process if they are later on going to be transformed. + var copyToOutputDirectoryAssets = manifest.Assets.Where(a => a.ShouldCopyToOutputDirectory()).ToArray(); + var temporaryAsssets = manifest.Assets + .Where(a => + !a.HasContentRoot(Path.Combine(outputFolder, "wwwroot")) && + File.Exists(a.Identity) && + !File.Exists(Path.Combine(a.ContentRoot, a.RelativePath)) && + a.AssetTraitName != "Content-Encoding").ToArray(); + + var copyToOutputDirectoryFiles = copyToOutputDirectoryAssets + .Select(a => Path.GetFullPath(Path.Combine(outputFolder, "wwwroot", a.RelativePath))) + .Concat(temporaryAsssets + .Select(a => Path.GetFullPath(Path.Combine(a.ContentRoot, a.RelativePath)))) + .ToArray(); + + var existingFiles = _baselineFactory.TemplatizeExpectedFiles( + wwwRootFiles + .Concat(computedFiles.Select(a => a.Identity)) + .Concat(copyToOutputDirectoryFiles) + .Distinct() + .OrderBy(f => f, StringComparer.Ordinal) + .ToArray(), + GetNuGetCachePath() ?? TestContext.Current.NuGetCachePath, + ProjectDirectory.TestRoot, + intermediateOutputPath, + outputFolder).ToArray(); + + + if (!_generateBaselines) + { + var expected = LoadExpectedFilesBaseline(manifest.ManifestType, suffix, name) + .OrderBy(f => f, StringComparer.Ordinal); + + AssertFilesCore(existingFiles, expected); + } + else + { + File.WriteAllText( + GetExpectedFilesPath(suffix, name, manifest.ManifestType), + JsonSerializer.Serialize(existingFiles, BaselineSerializationOptions)); + } + } + + private static void AssertFilesCore(IEnumerable existingFiles, IEnumerable expected) + { + var existingSet = new HashSet(existingFiles); + var expectedSet = new HashSet(expected); + var different = new HashSet(existingFiles); + + different.SymmetricExceptWith(expectedSet); + + var messages = new List(); + if (existingSet.Count < expectedSet.Count) + { + messages.Add("The build produced less files than expected."); + } + else if (expectedSet.Count < existingSet.Count) + { + messages.Add("The build produced more files than expected."); + } + else if (different.Count > 0) + { + messages.Add("The build produced different files than expected."); + } + + ComputeDifferences(expectedSet, different, messages); + string.Join(Environment.NewLine, messages).Should().BeEmpty(); + + static void ComputeDifferences(HashSet existingSet, HashSet different, List messages) + { + foreach (var file in different) + { + if (existingSet.Contains(file)) + { + messages.Add($"The file '{file}' is not in the baseline."); + } + else + { + messages.Add($"The file '{file}' is missing from the build."); + } + } + } + } + + protected void AssertPublishAssets( + StaticWebAssetsManifest manifest, + string publishFolder, + string intermediateOutputPath, + string suffix = "", + [CallerMemberName] string name = "") + { + var fileEnumerationOptions = new EnumerationOptions { RecurseSubdirectories = true }; + string wwwRootFolder = Path.Combine(publishFolder, "wwwroot"); + var wwwRootFiles = Directory.Exists(wwwRootFolder) ? + Directory.GetFiles(wwwRootFolder, "*", fileEnumerationOptions) + .Select(f => _baselineFactory.TemplatizeFilePath(f, null, null, intermediateOutputPath, publishFolder, null)) : + []; + + // Computed publish assets must exist on disk (we do this check to quickly identify when something is not being + // generated vs when its being copied to the wrong place) + var computedFiles = manifest.Assets + .Where(a => a.SourceType is StaticWebAsset.SourceTypes.Computed && + a.AssetKind is not StaticWebAsset.AssetKinds.Build); + + // For assets that are copied to the publish folder, the path is always based on + // the wwwroot folder, the relative path and the base path for project or package + // assets. + var copyToPublishDirectoryFiles = manifest.Assets + .Where(a => !string.Equals(a.SourceId, manifest.Source, StringComparison.Ordinal) || + !string.Equals(a.AssetMode, StaticWebAsset.AssetModes.Reference)) + .Select(a => Path.Combine(wwwRootFolder, a.ComputeTargetPath("", Path.DirectorySeparatorChar))); + + var existingFiles = _baselineFactory.TemplatizeExpectedFiles( + [.. wwwRootFiles + .Concat(computedFiles.Select(a => a.Identity)) + .Concat(copyToPublishDirectoryFiles) + .Distinct() + .OrderBy(f => f, StringComparer.Ordinal)], + GetNuGetCachePath() ?? TestContext.Current.NuGetCachePath, + ProjectDirectory.TestRoot, + intermediateOutputPath, + publishFolder); + + if (!_generateBaselines) + { + var expected = LoadExpectedFilesBaseline(manifest.ManifestType, suffix, name); + existingFiles.Should().BeEquivalentTo(expected); + } + else + { + File.WriteAllText( + GetExpectedFilesPath(suffix, name, manifest.ManifestType), + JsonSerializer.Serialize(existingFiles, BaselineSerializationOptions)); + } + } + + public string[] LoadExpectedFilesBaseline( + string type, + string suffix, + string name) + { + if (!_generateBaselines) + { + using var filesBaselineStream = GetExpectedFilesEmbeddedResource(suffix, name, type); + return JsonSerializer.Deserialize(filesBaselineStream); + } + else + { + return []; + } + } + + internal void AssertManifest( + StaticWebAssetsManifest actual, + StaticWebAssetsManifest expected, + string suffix = "", + string runtimeIdentifier = null, + [CallerMemberName] string name = "") + { + if (!_generateBaselines) + { + // We are going to compare the generated manifest with the current manifest. + // For that, we "templatize" the current manifest to avoid issues with hashes, versions, etc. + _baselineFactory.ToTemplate( + actual, + ProjectDirectory.Path, + GetNuGetCachePath() ?? TestContext.Current.NuGetCachePath, + runtimeIdentifier); + + _comparer.AssertManifest(expected, actual); + } + else + { + var template = Templatize(actual, ProjectDirectory.Path, GetNuGetCachePath() ?? TestContext.Current.NuGetCachePath, runtimeIdentifier); + if (!Directory.Exists(Path.Combine(BaselinesFolder))) + { + Directory.CreateDirectory(Path.Combine(BaselinesFolder)); + } + + File.WriteAllText(GetManifestPath(suffix, name, actual.ManifestType), template); + } + } + + private string GetManifestPath(string suffix, string name, string manifestType) + => Path.Combine(BaselinesFolder, $"{name}{(!string.IsNullOrEmpty(suffix) ? $"_{suffix}" : "")}.{manifestType}.staticwebassets.json"); + + private Stream GetManifestEmbeddedResource(string suffix, string name, string manifestType) + => TestAssembly.GetManifestResourceStream(string.Join('.', EmbeddedResourcePrefix, $"{name}{(!string.IsNullOrEmpty(suffix) ? $"_{suffix}" : "")}.{manifestType}.staticwebassets.json")); + + + private string GetExpectedFilesPath(string suffix, string name, string manifestType) + => Path.Combine(BaselinesFolder, $"{name}{(!string.IsNullOrEmpty(suffix) ? $"_{suffix}" : "")}.{manifestType}.files.json"); + + private Stream GetExpectedFilesEmbeddedResource(string suffix, string name, string manifestType) + => TestAssembly.GetManifestResourceStream(string.Join('.', EmbeddedResourcePrefix, $"{name}{(!string.IsNullOrEmpty(suffix) ? $"_{suffix}" : "")}.{manifestType}.files.json")); + + private string Templatize(StaticWebAssetsManifest manifest, string projectRoot, string restorePath, string runtimeIdentifier) + { + _baselineFactory.ToTemplate(manifest, projectRoot, restorePath, runtimeIdentifier); + return JsonSerializer.Serialize(manifest, BaselineSerializationOptions); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/ComputeStaticWebAssetsTargetPathsTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/ComputeStaticWebAssetsTargetPathsTest.cs new file mode 100644 index 000000000000..8bf1bafb89dd --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/ComputeStaticWebAssetsTargetPathsTest.cs @@ -0,0 +1,140 @@ +// 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 System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests; +public class ComputeStaticWebAssetsTargetPathsTest +{ + [Fact] + public void IncludesFingerprintInFileWhenPreferred() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); + + var task = new ComputeStaticWebAssetsTargetPaths + { + BuildEngine = buildEngine.Object, + Assets = [CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate#[.{fingerprint}]!.js", "All", "All", fingerprint: "1234asdf")], + PathPrefix = "wwwroot", + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.AssetsWithTargetPath.Should().ContainSingle(); + var asset = task.AssetsWithTargetPath[0]; + asset.Should().NotBeNull(); + asset.GetMetadata("TargetPath").Should().Be(Path.Combine("wwwroot", "candidate.1234asdf.js")); + } + + [Fact] + public void IncludesFingerprintInFileWhenRequired() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); + + var task = new ComputeStaticWebAssetsTargetPaths + { + BuildEngine = buildEngine.Object, + Assets = [CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate#[.{fingerprint}].js", "All", "All", fingerprint: "1234asdf")], + PathPrefix = "wwwroot", + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.AssetsWithTargetPath.Should().ContainSingle(); + var asset = task.AssetsWithTargetPath[0]; + asset.Should().NotBeNull(); + asset.GetMetadata("TargetPath").Should().Be(Path.Combine("wwwroot", "candidate.1234asdf.js")); + } + + [Fact] + public void DoesNotIncludeFingerprintInFileWhenNotPreferred() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); + + var task = new ComputeStaticWebAssetsTargetPaths + { + BuildEngine = buildEngine.Object, + Assets = [CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate#[.{fingerprint}]?.js", "All", "All", fingerprint: "1234asdf")], + PathPrefix = "wwwroot", + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.AssetsWithTargetPath.Should().ContainSingle(); + var asset = task.AssetsWithTargetPath[0]; + asset.Should().NotBeNull(); + asset.GetMetadata("TargetPath").Should().Be(Path.Combine("wwwroot", "candidate.js")); + } + + private static ITaskItem CreateCandidate( + string itemSpec, + string sourceId, + string sourceType, + string relativePath, + string assetKind, + string assetMode, + string fingerprint = null) + { + var result = new StaticWebAsset() + { + Identity = Path.GetFullPath(itemSpec), + SourceId = sourceId, + SourceType = sourceType, + ContentRoot = Directory.GetCurrentDirectory(), + BasePath = "base", + RelativePath = relativePath, + AssetKind = assetKind, + AssetMode = assetMode, + AssetRole = "Primary", + RelatedAsset = "", + AssetTraitName = "", + AssetTraitValue = "", + CopyToOutputDirectory = "", + CopyToPublishDirectory = "", + OriginalItemSpec = itemSpec, + // Add these to avoid accessing the disk to compute them + Integrity = "integrity", + Fingerprint = fingerprint ?? "fingerprint", + FileLength = 10, + LastWriteTime = DateTime.UtcNow, + }; + + result.ApplyDefaults(); + result.Normalize(); + + return result.ToTaskItem(); + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/IsolatedNuGetPackageFolderAspNetSdkBaselineTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/IsolatedNuGetPackageFolderAspNetSdkBaselineTest.cs new file mode 100644 index 000000000000..7a16a96a57a5 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/IsolatedNuGetPackageFolderAspNetSdkBaselineTest.cs @@ -0,0 +1,26 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + [Trait("AspNetCore", "NugetIsolation")] + [Trait("AspNetCore", "BaselineTest")] + public class IsolatedNuGetPackageFolderAspNetSdkBaselineTest : AspNetSdkBaselineTest + { + private readonly string _cachePath; + + public IsolatedNuGetPackageFolderAspNetSdkBaselineTest(ITestOutputHelper log, string restoreNugetPackagePath) : base(log) + { + _cachePath = Path.GetFullPath(Path.Combine(TestContext.Current.TestExecutionDirectory, Shorten(restoreNugetPackagePath))); + } + + private static string Shorten(string restoreNugetPackagePath) => + restoreNugetPackagePath + .Replace("IntegrationTest", string.Empty, StringComparison.OrdinalIgnoreCase) + .Replace("Tests", string.Empty, StringComparison.OrdinalIgnoreCase); + + protected override string GetNuGetCachePath() => _cachePath; + } +} + diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/LegacyStaticWebAssetsV1IntegrationTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/LegacyStaticWebAssetsV1IntegrationTest.cs new file mode 100644 index 000000000000..9089ed148d04 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/LegacyStaticWebAssetsV1IntegrationTest.cs @@ -0,0 +1,132 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using Microsoft.AspNetCore.StaticWebAssets.Tasks; + +[assembly:CollectionBehavior(DisableTestParallelization = true)] + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + public class LegacyStaticWebAssetsV1IntegrationTest(ITestOutputHelper log) + : IsolatedNuGetPackageFolderAspNetSdkBaselineTest(log, nameof(LegacyStaticWebAssetsV1IntegrationTest)) + { + [Fact] + public void PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries() + { + var testAsset = "RazorAppWithPackageAndP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset) + .WithProjectChanges((project, document) => + { + if (Path.GetFileName(project) == "AnotherClassLib.csproj") + { + document.Descendants("TargetFramework").Single().ReplaceNodes("netstandard2.1"); + document.Descendants("FrameworkReference").Single().Remove(); + document.Descendants("PropertyGroup").First().Add(new XElement("RazorLangVersion", "3.0")); + } + if (Path.GetFileName(project) == "ClassLibrary.csproj") + { + document.Descendants("TargetFramework").Single().ReplaceNodes("netstandard2.0"); + document.Descendants("FrameworkReference").Single().Remove(); + document.Descendants("PropertyGroup").First().Add(new XElement("RazorLangVersion", "3.0")); + } + }); + + // We are deleting Views and Components because we are only interested in the static web assets behavior for this test + // and this makes it easier to validate the test. + Directory.Delete(Path.Combine(ProjectDirectory.TestRoot, "AnotherClassLib", "Views"), recursive: true); + Directory.Delete(Path.Combine(ProjectDirectory.TestRoot, "ClassLibrary", "Views"), recursive: true); + Directory.Delete(Path.Combine(ProjectDirectory.TestRoot, "ClassLibrary", "Components"), recursive: true); + + EnsureLocalPackagesExists(); + + var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(restore).Should().Pass(); + + var publish = CreatePublishCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(publish).Should().Pass(); + + var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var publishPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + AssertManifest( + StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)), + LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(publishPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().NotExist(); + + // GenerateStaticWebAssetsPublishManifest should generate the publish manifest file. + var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); + new FileInfo(path).Should().Exist(); + var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); + AssertManifest( + publishManifest, + LoadPublishManifest()); + + AssertPublishAssets( + publishManifest, + publishPath, + intermediateOutputPath); + } + + [Fact] + public void BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries() + { + var testAsset = "RazorAppWithPackageAndP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset) + .WithProjectChanges((project, document) => + { + if (Path.GetFileName(project) == "AnotherClassLib.csproj") + { + document.Descendants("TargetFramework").Single().ReplaceNodes("netstandard2.1"); + document.Descendants("FrameworkReference").Single().Remove(); + document.Descendants("PropertyGroup").First().Add(new XElement("RazorLangVersion", "3.0")); + } + if (Path.GetFileName(project) == "ClassLibrary.csproj") + { + document.Descendants("TargetFramework").Single().ReplaceNodes("netstandard2.0"); + document.Descendants("FrameworkReference").Single().Remove(); + document.Descendants("PropertyGroup").First().Add(new XElement("RazorLangVersion", "3.0")); + } + }); + + // We are deleting Views and Components because we are only interested in the static web assets behavior for this test + // and this makes it easier to validate the test. + Directory.Delete(Path.Combine(ProjectDirectory.TestRoot, "AnotherClassLib", "Views"), recursive: true); + Directory.Delete(Path.Combine(ProjectDirectory.TestRoot, "ClassLibrary", "Views"), recursive: true); + Directory.Delete(Path.Combine(ProjectDirectory.TestRoot, "ClassLibrary", "Components"), recursive: true); + + EnsureLocalPackagesExists(); + + var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(restore).Should().Pass(); + + var build = CreateBuildCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); + AssertManifest( + manifest, + LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().Exist(); + + AssertBuildAssets( + manifest, + outputPath, + intermediateOutputPath); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/Microsoft.NET.Sdk.StaticWebAssets.Tests.csproj b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/Microsoft.NET.Sdk.StaticWebAssets.Tests.csproj new file mode 100644 index 000000000000..2082a6ebd051 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/Microsoft.NET.Sdk.StaticWebAssets.Tests.csproj @@ -0,0 +1,59 @@ + + + + false + Tests\$(MSBuildProjectName) + + + + $(SdkTargetFramework) + + + + Exe + testSdkStaticWebAssets + + + + + + + + + <_Parameter1>AspNetTestTfm + <_Parameter2>$(SdkTargetFramework) + + + + <_Parameter1>NetCoreAppRuntimePackageVersion + <_Parameter2>$(MicrosoftNETCoreAppRuntimePackageVersion) + + + <_Parameter1>DefaultTestBaselinePackageVersion + <_Parameter2>5.0 + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetEndpointsIntegrationTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetEndpointsIntegrationTest.cs new file mode 100644 index 000000000000..cff798c726cb --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetEndpointsIntegrationTest.cs @@ -0,0 +1,617 @@ +// 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 System.Diagnostics.Eventing.Reader; +using System.Globalization; +using System.Text.Json; +using System.Text.RegularExpressions; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests; + +public partial class StaticWebAssetEndpointsIntegrationTest(ITestOutputHelper log) + : AspNetSdkBaselineTest(log, GenerateBaselines) +{ + [GeneratedRegex("""(?'project'[a-zA-Z0-9]+)(?:\.(?'fingerprint'[a-zA-Z0-9]*))?\.bundle\.scp\.css(?'compress'\.(?:gz|br))?$""")] + private static partial Regex ProjectBundleRegex(); + + [GeneratedRegex("""(?'project'[a-zA-Z0-9]+)(?:\.(?'fingerprint'[a-zA-Z0-9]*))?\.styles\.css(?'compress'\.(?:gz|br))?$""")] + private static partial Regex AppBundleRegex(); + + [Fact] + public void Build_CreatesEndpointsForAssets() + { + ProjectDirectory = CreateAspNetSdkTestAsset("RazorComponentApp"); + var root = ProjectDirectory.TestRoot; + + var dir = Directory.CreateDirectory(Path.Combine(root, "wwwroot")); + File.WriteAllText(Path.Combine(dir.FullName, "app.js"), "console.log('hello world!');"); + + var build = CreateBuildCommand(ProjectDirectory); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + + var endpoints = manifest.Endpoints; + // blazor.server.js and blazor.web.js assets and endpoints are included automatically + // based on the presence of .razor files in projects referencing the web SDK. + // In the future we will filter these out based on whether the app references the Endpoints or the Server + // assemblies, but for now, just account for them in the tests and ignore them. + endpoints.Should().HaveCount(27); + var appJsEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js")); + appJsEndpoints.Should().HaveCount(2); + var appJsGzEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js.gz")); + appJsGzEndpoints.Should().HaveCount(1); + + // project bundle endpoints + var bundleEndpoints = endpoints.Where(MatchUncompresedProjectBundlesNoFingerprint); + bundleEndpoints.Should().HaveCount(2); + + var bundleGzEndpoints = endpoints.Where(MatchCompressedProjectBundlesNoFingerprint); + bundleGzEndpoints.Should().HaveCount(1); + + var fingerprintedBundleGzEndpoints = endpoints.Where(MatchCompressedProjectBundlesWithFingerprint); + fingerprintedBundleGzEndpoints.Should().HaveCount(1); + + var fingerprintedBundles = endpoints.Where(MatchUncompressedProjectBundlesWithFingerprint); + fingerprintedBundles.Should().HaveCount(2); + + // app bundle endpoints + var appBundleEndpoints = endpoints.Where(MatchUncompressedAppBundleNoFingerprint); + appBundleEndpoints.Should().HaveCount(2); + + var appBundleGzEndpoints = endpoints.Where(MatchCompressedAppBundleNoFingerprint); + appBundleGzEndpoints.Should().HaveCount(1); + + var fingerprintedAppBundle = endpoints.Where(MatchUncompressedAppBundleWithFingerprint); + fingerprintedAppBundle.Should().HaveCount(2); + + var fingerprintedAppBundleGz = endpoints.Where(MatchCompressedAppBundleWithFingerprint); + fingerprintedAppBundleGz.Should().HaveCount(1); + + AssertManifest(manifest, LoadBuildManifest()); + } + + private bool MatchUncompresedProjectBundlesNoFingerprint(StaticWebAssetEndpoint ep) => ProjectBundleRegex().Match(ep.Route) is + { + Success: true, + Groups: [ + var _, + { Name: "project", Value: "ComponentApp", Success: true, }, + { Name: "fingerprint", Value: "", Success: false }, + { Name: "compress", Value: "", Success: false } + ] + }; + + private bool MatchCompressedProjectBundlesNoFingerprint(StaticWebAssetEndpoint ep) => ProjectBundleRegex().Match(ep.Route) is + { + Success: true, + Groups: [ + var _, + { Name: "project", Value: "ComponentApp", Success: true, }, + { Name: "fingerprint", Value: "", Success: false }, + { Name: "compress", Value: var compress, Success: true } + ] + } && (compress == ".gz" || compress == ".br"); + + private bool MatchUncompressedProjectBundlesWithFingerprint(StaticWebAssetEndpoint ep) => ProjectBundleRegex().Match(ep.Route) is + { + Success: true, + Groups: [ + var m, + { Name: "project", Value: "ComponentApp", Success: true, }, + { Name: "fingerprint", Value: var fingerprint, Success: true }, + { Name: "compress", Value: "", Success: false } + ] + } && fingerprint == ep.EndpointProperties.Single(p => p.Name == "fingerprint").Value; + + private bool MatchCompressedProjectBundlesWithFingerprint(StaticWebAssetEndpoint ep) => ProjectBundleRegex().Match(ep.Route) is + { + Success: true, + Groups: [ + var m, + { Name: "project", Value: "ComponentApp", Success: true, }, + { Name: "fingerprint", Value: var fingerprint, Success: true }, + { Name: "compress", Value: var compress, Success: true } + ] + } && !string.IsNullOrWhiteSpace(fingerprint) + && (compress == ".gz" || compress == ".br"); + + private bool MatchUncompressedAppBundleNoFingerprint(StaticWebAssetEndpoint ep) => AppBundleRegex().Match(ep.Route) is + { + Success: true, + Groups: [ + var _, + { Name: "project", Value: "ComponentApp", Success: true, }, + { Name: "fingerprint", Value: "", Success: false }, + { Name: "compress", Value: "", Success: false } + ] + }; + + private bool MatchCompressedAppBundleNoFingerprint(StaticWebAssetEndpoint ep) => AppBundleRegex().Match(ep.Route) is + { + Success: true, + Groups: [ + var _, + { Name: "project", Value: "ComponentApp", Success: true, }, + { Name: "fingerprint", Value: "", Success: false }, + { Name: "compress", Value: var compress, Success: true } + ] + } && (compress == ".gz" || compress == ".br"); + + private bool MatchUncompressedAppBundleWithFingerprint(StaticWebAssetEndpoint ep) => AppBundleRegex().Match(ep.Route) is + { + Success: true, + Groups: [ + var m, + { Name: "project", Value: "ComponentApp", Success: true, }, + { Name: "fingerprint", Value: var fingerprint, Success: true }, + { Name: "compress", Value: "", Success: false } + ] + } && fingerprint == ep.EndpointProperties.Single(p => p.Name == "fingerprint").Value; + + private bool MatchCompressedAppBundleWithFingerprint(StaticWebAssetEndpoint ep) => AppBundleRegex().Match(ep.Route) is + { + Success: true, + Groups: [ + var m, + { Name: "project", Value: "ComponentApp", Success: true, }, + { Name: "fingerprint", Value: var fingerprint, Success: true }, + { Name: "compress", Value: var compress, Success: true } + ] + } && !string.IsNullOrWhiteSpace(fingerprint) + && (compress == ".gz" || compress == ".br"); + + [Fact] + public void Publish_CreatesEndpointsForAssets() + { + ProjectDirectory = CreateAspNetSdkTestAsset("RazorComponentApp"); + var root = ProjectDirectory.TestRoot; + + var dir = Directory.CreateDirectory(Path.Combine(root, "wwwroot")); + File.WriteAllText(Path.Combine(dir.FullName, "app.js"), "console.log('hello world!');"); + + var publish = CreatePublishCommand(ProjectDirectory); + ExecuteCommand(publish).Should().Pass(); + + var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + + var endpoints = manifest.Endpoints; + + foreach (var endpoint in endpoints) + { + var contentLength = endpoint.ResponseHeaders.Single(rh => rh.Name == "Content-Length"); + var length = long.Parse(contentLength.Value, CultureInfo.InvariantCulture); + var file = new FileInfo(endpoint.AssetFile); + file.Should().Exist(); + file.Length.Should().Be(length, $"because {endpoint.Route} {file.FullName}"); + } + + // blazor.server.js and blazor.web.js assets and endpoints are included automatically + // based on the presence of .razor files in projects referencing the web SDK. + // In the future we will filter these out based on whether the app references the Endpoints or the Server + // assemblies, but for now, just account for them in the tests and ignore them. + endpoints.Should().HaveCount(45); + var appJsEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js")); + appJsEndpoints.Should().HaveCount(3); + var appJsGzEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js.gz")); + appJsGzEndpoints.Should().HaveCount(1); + var appJsBrEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js.br")); + appJsBrEndpoints.Should().HaveCount(1); + + var uncompressedAppJsEndpoint = appJsEndpoints.Where(ep => ep.Selectors.Length == 0); + uncompressedAppJsEndpoint.Should().HaveCount(1); + uncompressedAppJsEndpoint.Single().ResponseHeaders.Select(h => h.Name).Should().BeEquivalentTo( + [ + "Accept-Ranges", + "Cache-Control", + "Content-Length", + "Content-Type", + "ETag", + "Last-Modified" + ] + ); + + var eTagHeader = uncompressedAppJsEndpoint.Single().ResponseHeaders.Single(h => h.Name == "ETag"); + + var gzipCompressedAppJsEndpoint = appJsEndpoints.Where(ep => ep.Selectors.Length == 1 && ep.Selectors[0].Value == "gzip"); + gzipCompressedAppJsEndpoint.Should().HaveCount(1); + gzipCompressedAppJsEndpoint.Single().ResponseHeaders.Select(h => h.Name).Should().BeEquivalentTo( + [ + "Accept-Ranges", + "Cache-Control", + "Content-Length", + "Content-Type", + "ETag", + "Last-Modified", + "Content-Encoding", + "Vary", + "ETag" + ] + ); + gzipCompressedAppJsEndpoint.Single().ResponseHeaders.Any(h => h.Name == "ETag" && h.Value.StartsWith("W/")).Should().BeTrue(); + var gzipWeakEtag = gzipCompressedAppJsEndpoint.Single().ResponseHeaders.Single(h => h.Name == "ETag" && h.Value.StartsWith("W/")).Value; + gzipWeakEtag[2..].Should().Be(eTagHeader.Value); + + var brotliCompressedAppJsEndpoint = appJsEndpoints.Where(ep => ep.Selectors.Length == 1 && ep.Selectors[0].Value == "br"); + brotliCompressedAppJsEndpoint.Should().HaveCount(1); + brotliCompressedAppJsEndpoint.Single().ResponseHeaders.Select(h => h.Name).Should().BeEquivalentTo( + [ + "Accept-Ranges", + "Cache-Control", + "Content-Length", + "Content-Type", + "ETag", + "Last-Modified", + "Content-Encoding", + "Vary", + "ETag", + ] + ); + brotliCompressedAppJsEndpoint.Single().ResponseHeaders.Any(h => h.Name == "ETag" && h.Value.StartsWith("W/")).Should().BeTrue(); + var brWeakEtag = brotliCompressedAppJsEndpoint.Single().ResponseHeaders.Single(h => h.Name == "ETag" && h.Value.StartsWith("W/")).Value; + brWeakEtag[2..].Should().Be(eTagHeader.Value); + + var bundleEndpoints = endpoints.Where(MatchUncompresedProjectBundlesNoFingerprint); + bundleEndpoints.Should().HaveCount(3); + var bundleGzEndpoints = endpoints.Where(MatchCompressedProjectBundlesNoFingerprint).Where(ep => ep.Route.EndsWith(".gz")); + bundleGzEndpoints.Should().HaveCount(1); + var bundleBrEndpoints = endpoints.Where(MatchCompressedProjectBundlesNoFingerprint).Where(ep => ep.Route.EndsWith(".br")); + bundleBrEndpoints.Should().HaveCount(1); + var fingerprintedBundleGzEndpoints = endpoints.Where(MatchCompressedProjectBundlesWithFingerprint).Where(ep => ep.Route.EndsWith(".gz")); + fingerprintedBundleGzEndpoints.Should().HaveCount(1); + var fingerprintedBundleBrEndpoints = endpoints.Where(MatchCompressedProjectBundlesWithFingerprint).Where(ep => ep.Route.EndsWith(".br")); + fingerprintedBundleBrEndpoints.Should().HaveCount(1); + + var fingerprintedBundleEndpoints = endpoints.Where(MatchUncompressedProjectBundlesWithFingerprint); + fingerprintedBundleEndpoints.Should().HaveCount(3); + + var appBundleEndpoints = endpoints.Where(MatchUncompressedAppBundleNoFingerprint); + appBundleEndpoints.Should().HaveCount(3); + var appBundleGzEndpoints = endpoints.Where(MatchCompressedAppBundleNoFingerprint).Where(ep => ep.Route.EndsWith(".gz")); + appBundleGzEndpoints.Should().HaveCount(1); + var appBundleBrEndpoints = endpoints.Where(MatchCompressedAppBundleNoFingerprint).Where(ep => ep.Route.EndsWith(".br")); + appBundleBrEndpoints.Should().HaveCount(1); + var fingerprintedAppBundleGzEndpoints = endpoints.Where(MatchCompressedAppBundleWithFingerprint).Where(ep => ep.Route.EndsWith(".gz")); + fingerprintedAppBundleGzEndpoints.Should().HaveCount(1); + var fingerprintedAppBundleBrEndpoints = endpoints.Where(MatchCompressedAppBundleWithFingerprint).Where(ep => ep.Route.EndsWith(".br")); + fingerprintedAppBundleBrEndpoints.Should().HaveCount(1); + + var fingerprintedAppBundleEndpoints = endpoints.Where(MatchUncompressedAppBundleWithFingerprint); + fingerprintedAppBundleEndpoints.Should().HaveCount(3); + + AssertManifest(manifest, LoadPublishManifest()); + } + + [Fact] + public void Publish_CreatesEndpointsForAssets_BuildAndPublish_Assets() + { + ProjectDirectory = CreateAspNetSdkTestAsset("RazorComponentApp") + .WithProjectChanges(document => + { + document.Root.AddFirst( + new XElement("ItemGroup", + new XElement("Content", + new XAttribute("Update", "wwwroot/app.js"), + new XAttribute("CopyToPublishDirectory", "Never")), + new XElement("Content", + new XAttribute("Update", "wwwroot/app.publish.js"), + new XAttribute("TargetPath", "wwwroot/app.js"), + new XAttribute("CopyToPublishDirectory", "PreserveNewest")))); + var doc2 = document; + }); + var root = ProjectDirectory.TestRoot; + + var dir = Directory.CreateDirectory(Path.Combine(root, "wwwroot")); + File.WriteAllText(Path.Combine(dir.FullName, "app.js"), "console.log('hello world!');"); + File.WriteAllText(Path.Combine(dir.FullName, "app.publish.js"), "console.log('publish hello world!');"); + + var publish = CreatePublishCommand(ProjectDirectory); + ExecuteCommand(publish).Should().Pass(); + + var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var publishOutputPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); + new FileInfo(path).Should().Exist(); + var buildManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(buildManifest, LoadPublishManifest()); + + var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"))); + + var endpoints = publishManifest.Endpoints; + + var appJsEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js")); + appJsEndpoints.Should().HaveCount(3); + + // There's only 1 uncompressed asset endpoint. + var unCompressedAssetEndpoint = appJsEndpoints.Where(ep => ep.Selectors.Length == 0); + unCompressedAssetEndpoint.Should().HaveCount(1); + + // The uncompressed asset endpoint is for the publish asset. + var publishAsset = publishManifest.Assets.Where(a => a.Identity == unCompressedAssetEndpoint.Single().AssetFile); + publishAsset.Should().HaveCount(1); + + // There is only 1 gzip asset endpoint. + var appGzAssetEndpoint = appJsEndpoints.Where(ep => ep.Selectors.Length == 1 && ep.Selectors[0].Value == "gzip"); + appGzAssetEndpoint.Should().HaveCount(1); + + // The gzip asset endpoint is for the gzip compressed version of the publish asset. + var publishGzAsset = publishManifest.Assets.Where(a => a.Identity == appGzAssetEndpoint.Single().AssetFile); + publishGzAsset.Should().HaveCount(1); + publishGzAsset.Single().RelatedAsset.Should().Be(publishAsset.Single().Identity); + + // There is only 1 br asset endpoint. + var appBrAssetEndpoint = appJsEndpoints.Where(ep => ep.Selectors.Length == 1 && ep.Selectors[0].Value == "br"); + appBrAssetEndpoint.Should().HaveCount(1); + + // The br asset endpoint is for the br compressed version of the publish asset. + var publishBrAsset = publishManifest.Assets.Where(a => a.Identity == appBrAssetEndpoint.Single().AssetFile); + publishBrAsset.Should().HaveCount(1); + publishBrAsset.Single().RelatedAsset.Should().Be(publishAsset.Single().Identity); + + // The compressed gzip and br assets are exposed with their extensions. + var appJsGzEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js.gz")); + appJsGzEndpoints.Should().HaveCount(1); + + var appJsBrEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js.br")); + appJsBrEndpoints.Should().HaveCount(1); + + var bundleEndpoints = endpoints.Where(MatchUncompresedProjectBundlesNoFingerprint); + bundleEndpoints.Should().HaveCount(3); + var bundleGzEndpoints = endpoints.Where(MatchCompressedProjectBundlesNoFingerprint).Where(ep => ep.Route.EndsWith(".gz")); + bundleGzEndpoints.Should().HaveCount(1); + var bundleBrEndpoints = endpoints.Where(MatchCompressedProjectBundlesNoFingerprint).Where(ep => ep.Route.EndsWith(".br")); + bundleBrEndpoints.Should().HaveCount(1); + var fingerprintedBundleGzEndpoints = endpoints.Where(MatchCompressedProjectBundlesWithFingerprint).Where(ep => ep.Route.EndsWith(".gz")); + fingerprintedBundleGzEndpoints.Should().HaveCount(1); + var fingerprintedBundleBrEndpoints = endpoints.Where(MatchCompressedProjectBundlesWithFingerprint).Where(ep => ep.Route.EndsWith(".br")); + fingerprintedBundleBrEndpoints.Should().HaveCount(1); + + var fingerprintedBundleEndpoints = endpoints.Where(MatchUncompressedProjectBundlesWithFingerprint); + fingerprintedBundleEndpoints.Should().HaveCount(3); + + var appBundleEndpoints = endpoints.Where(MatchUncompressedAppBundleNoFingerprint); + appBundleEndpoints.Should().HaveCount(3); + var appBundleGzEndpoints = endpoints.Where(MatchCompressedAppBundleNoFingerprint).Where(ep => ep.Route.EndsWith(".gz")); + appBundleGzEndpoints.Should().HaveCount(1); + var appBundleBrEndpoints = endpoints.Where(MatchCompressedAppBundleNoFingerprint).Where(ep => ep.Route.EndsWith(".br")); + appBundleBrEndpoints.Should().HaveCount(1); + var fingerprintedAppBundleGzEndpoints = endpoints.Where(MatchCompressedAppBundleWithFingerprint).Where(ep => ep.Route.EndsWith(".gz")); + fingerprintedAppBundleGzEndpoints.Should().HaveCount(1); + var fingerprintedAppBundleBrEndpoints = endpoints.Where(MatchCompressedAppBundleWithFingerprint).Where(ep => ep.Route.EndsWith(".br")); + fingerprintedAppBundleBrEndpoints.Should().HaveCount(1); + + var fingerprintedAppBundleEndpoints = endpoints.Where(MatchUncompressedAppBundleWithFingerprint); + fingerprintedAppBundleEndpoints.Should().HaveCount(3); + + // blazor.server.js and blazor.web.js assets and endpoints are included automatically + // based on the presence of .razor files in projects referencing the web SDK. + // In the future we will filter these out based on whether the app references the Endpoints or the Server + // assemblies, but for now, just account for them in the tests and ignore them. + endpoints.Should().HaveCount(45); + + AssertManifest(publishManifest, LoadPublishManifest()); + } + + [RequiresMSBuildVersionFact("17.12", Reason = "Needs System.Text.Json 8.0.5")] + public void Build_EndpointManifest_ContainsEndpoints() + { + // Arrange + var expectedExtensions = new[] { ".pdb", ".js", ".wasm" }; + var testAppName = "BlazorWasmWithLibrary"; + var testInstance = CreateAspNetSdkTestAsset(testAppName) + .WithProjectChanges((p, doc) => + { + if (Path.GetFileName(p) == "blazorwasm.csproj") + { + var itemGroup = new XElement("PropertyGroup"); + var serviceWorkerAssetsManifest = new XElement("ServiceWorkerAssetsManifest", "service-worker-assets.js"); + var fingerprintAssets = new XElement("WasmFingerprintAssets", false); + itemGroup.Add(serviceWorkerAssetsManifest); + itemGroup.Add(fingerprintAssets); + doc.Root.Add(itemGroup); + } + }); + + var buildCommand = CreateBuildCommand(testInstance, "blazorwasm"); + buildCommand.Execute("/bl").Should().Pass(); + + var buildOutputDirectory = buildCommand.GetOutputDirectory(DefaultTfm).ToString(); + VerifyEndpointsCollection(buildOutputDirectory, "blazorwasm", readFromDevManifest: true); + } + + [RequiresMSBuildVersionFact("17.12", Reason = "Needs System.Text.Json 8.0.5")] + public void BuildHosted_EndpointManifest_ContainsEndpoints() + { + // Arrange + var testAppName = "BlazorHosted"; + var testInstance = CreateAspNetSdkTestAsset(testAppName) + .WithProjectChanges((p, doc) => + { + if (Path.GetFileName(p) == "blazorwasm.csproj") + { + var itemGroup = new XElement("PropertyGroup"); + var fingerprintAssets = new XElement("WasmFingerprintAssets", false); + itemGroup.Add(fingerprintAssets); + doc.Root.Add(itemGroup); + } + }); + + var buildCommand = CreateBuildCommand(testInstance, "blazorhosted"); + buildCommand.Execute() + .Should().Pass(); + + var buildOutputDirectory = OutputPathCalculator.FromProject(Path.Combine(testInstance.TestRoot, "blazorhosted")).GetOutputDirectory(); + + VerifyEndpointsCollection(buildOutputDirectory, "blazorhosted", readFromDevManifest: true); + } + + [RequiresMSBuildVersionFact("17.12", Reason = "Needs System.Text.Json 8.0.5")] + public void Publish_EndpointManifestContainsEndpoints() + { + // Arrange + var testAppName = "BlazorWasmWithLibrary"; + var testInstance = CreateAspNetSdkTestAsset(testAppName) + .WithProjectChanges((p, doc) => + { + if (Path.GetFileName(p) == "blazorwasm.csproj") + { + var itemGroup = new XElement("PropertyGroup"); + var fingerprintAssets = new XElement("WasmFingerprintAssets", false); + itemGroup.Add(fingerprintAssets); + doc.Root.Add(itemGroup); + } + }); + + var publishCommand = CreatePublishCommand(testInstance, "blazorwasm"); + publishCommand.Execute().Should().Pass(); + + var publishOutputDirectory = publishCommand.GetOutputDirectory(DefaultTfm).ToString(); + + VerifyEndpointsCollection(publishOutputDirectory, "blazorwasm"); + } + + [RequiresMSBuildVersionFact("17.12", Reason = "Needs System.Text.Json 8.0.5")] + public void PublishHosted_EndpointManifest_ContainsEndpoints() + { + // Arrange + var testAppName = "BlazorHosted"; + var testInstance = CreateAspNetSdkTestAsset(testAppName) + .WithProjectChanges((p, doc) => + { + if (Path.GetFileName(p) == "blazorwasm.csproj") + { + var itemGroup = new XElement("PropertyGroup"); + var fingerprintAssets = new XElement("WasmFingerprintAssets", false); + itemGroup.Add(fingerprintAssets); + doc.Root.Add(itemGroup); + } + }); + + var publishCommand = CreatePublishCommand(testInstance, "blazorhosted"); + publishCommand.Execute().Should().Pass(); + + var publishOutputDirectory = publishCommand.GetOutputDirectory(DefaultTfm).ToString(); + + VerifyEndpointsCollection(publishOutputDirectory, "blazorhosted"); + } + + // Makes several assertions about the endpoints we defined. + // All assets have at least one endpoint. + // No endpoint points to a non-existent asset + // All compressed assets have 2 endpoints (one for the path with the extension, one for the path without the extension) + // All uncompressed assets have 1 endpoint + private static void VerifyEndpointsCollection(string outputDirectory, string projectName, bool readFromDevManifest = false) + { + var endpointsManifestFile = Path.Combine(outputDirectory, $"{projectName}.staticwebassets.endpoints.json"); + + var endpoints = JsonSerializer.Deserialize(File.ReadAllText(endpointsManifestFile)); + + var wwwrootFolderFiles = GetWwwrootFolderFiles(outputDirectory); + + var foundAssets = new HashSet(); + var endpointsByAssetFile = endpoints.Endpoints.GroupBy(e => e.AssetFile).ToDictionary(g => g.Key, g => g.ToArray()); + + foreach (var endpoint in endpoints.Endpoints) + { + wwwrootFolderFiles.Should().Contain(endpoint.AssetFile); + foundAssets.Add(endpoint.AssetFile); + } + + wwwrootFolderFiles.Should().BeEquivalentTo(foundAssets); + + foreach (var file in wwwrootFolderFiles) + { + endpointsByAssetFile.Should().ContainKey(file); + if (file.EndsWith(".br") || file.EndsWith(".gz")) + { + endpointsByAssetFile[file].Should().HaveCount(2); + } + else if (endpointsByAssetFile[file].Length > 1) + { + endpointsByAssetFile[file].Where(e => e.EndpointProperties.Any(p => p.Name == "integrity")).Count().Should().Be(1); + endpointsByAssetFile[file].Where(e => e.EndpointProperties.Length == 0).Count().Should().Be(1); + } + else + { + endpointsByAssetFile[file].Should().HaveCount(1); + } + } + + HashSet GetWwwrootFolderFiles(string outputDirectory) + { + if (!readFromDevManifest) + { + return [.. Directory.GetFiles(Path.Combine(outputDirectory, "wwwroot"), "*", SearchOption.AllDirectories) + .Select(a => StaticWebAsset.Normalize(Path.GetRelativePath(Path.Combine(outputDirectory, "wwwroot"), a)))]; + } + else + { + var staticWebAssetDevelopmentManifest = JsonSerializer.Deserialize(File.ReadAllText(Path.Combine(outputDirectory, $"{projectName}.staticwebassets.runtime.json"))); + var endpoints = new HashSet(); + + //Traverse the node tree and compute the paths for all assets + Traverse(staticWebAssetDevelopmentManifest.Root, "", endpoints); + return endpoints; + } + } + } + + private static void Traverse(StaticWebAssetNode node, string pathSoFar, HashSet endpoints) + { + if (node.Asset != null) + { + endpoints.Add(StaticWebAsset.Normalize(pathSoFar)); + } + else + { + foreach (var child in node.Children) + { + Traverse(child.Value, Path.Combine(pathSoFar, child.Key), endpoints); + } + } + } + + public class StaticWebAssetsDevelopmentManifest + { + public string[] ContentRoots { get; set; } + + public StaticWebAssetNode Root { get; set; } + } + + public class StaticWebAssetPattern + { + public int ContentRootIndex { get; set; } + public string Pattern { get; set; } + public int Depth { get; set; } + } + + public class StaticWebAssetMatch + { + public int ContentRootIndex { get; set; } + public string SubPath { get; set; } + } + + public class StaticWebAssetNode + { + public Dictionary Children { get; set; } + public StaticWebAssetMatch Asset { get; set; } + public StaticWebAssetPattern[] Patterns { get; set; } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ApplyCompressionNegotiationTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ApplyCompressionNegotiationTest.cs new file mode 100644 index 000000000000..86cb1150b5e6 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ApplyCompressionNegotiationTest.cs @@ -0,0 +1,1434 @@ +// 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 System.Globalization; +using System.Text.Json; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests.StaticWebAssets; + +public class ApplyCompressionNegotiationTest +{ + [Fact] + public void AppliesContentNegotiationRules_ForExistingAssets() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ApplyCompressionNegotiation + { + BuildEngine = buildEngine.Object, + CandidateAssets = + [ + CreateCandidate( + Path.Combine("wwwroot", "candidate.js"), + "MyPackage", + "Discovered", + "candidate.js", + "All", + "All", + "original-fingerprint", + "original", + fileLength: 20 + ), + CreateCandidate( + Path.Combine("compressed", "candidate.js.gz"), + "MyPackage", + "Discovered", + "candidate.js", + "All", + "All", + "compressed-fingerprint", + "compressed", + Path.Combine("wwwroot", "candidate.js"), + "Content-Encoding", + "gzip", + 9 + ) + ], + CandidateEndpoints = + [ + CreateCandidateEndpoint( + "candidate.js", + Path.Combine("wwwroot", "candidate.js"), + CreateHeaders("text/javascript", [("Content-Length", "20")])), + + CreateCandidateEndpoint( + "candidate.js.gz", + Path.Combine("compressed", "candidate.js.gz"), + CreateHeaders("text/javascript", [("Content-Length", "9")])) + ], + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.UpdatedEndpoints); + endpoints.Should().BeEquivalentTo((StaticWebAssetEndpoint[])[ + new () + { + Route = "candidate.js", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new () { Name = "Content-Length", Value = "9" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [ new () { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], + }, + new () + { + Route = "candidate.js", + AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), + ResponseHeaders = + [ + new () { Name = "Content-Length", Value = "20" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + ], + EndpointProperties = [], + Selectors = [], + }, + new () + { + Route = "candidate.js.gz", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new () { Name = "Content-Length", Value = "9" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [] + } + ]); + } + + [Fact] + public void AppliesContentNegotiationRules_ForExistingAssets_WithFingerprints() + { + var now = DateTime.Now; + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + List candidateAssets = [ + CreateCandidate( + Path.Combine("wwwroot", "candidate.js"), + "MyPackage", + "Discovered", + "candidate#[.{fingerprint}]?.js", + "All", + "All", + "original-fingerprint", + "original", + fileLength: 20, + lastModified: now + ) + ]; + + var compressedTask = new ResolveCompressedAssets + { + BuildEngine = buildEngine.Object, + CandidateAssets = [.. candidateAssets], + Formats = "gzip;brotli", + IncludePatterns = "*.js", + OutputPath = AppContext.BaseDirectory + }; + compressedTask.Execute().Should().BeTrue(); + + var compressedAssets = compressedTask.AssetsToCompress; + compressedAssets[0].SetMetadata(nameof(StaticWebAsset.Fingerprint), "gzip"); + compressedAssets[0].SetMetadata(nameof(StaticWebAsset.Integrity), "compressed-gzip"); + compressedAssets[0].SetMetadata(nameof(StaticWebAsset.FileLength), "9"); + compressedAssets[1].SetMetadata(nameof(StaticWebAsset.Fingerprint), "brotli"); + compressedAssets[1].SetMetadata(nameof(StaticWebAsset.Integrity), "compressed-brotli"); + compressedAssets[1].SetMetadata(nameof(StaticWebAsset.FileLength), "7"); + candidateAssets.AddRange(compressedAssets); + var expectedName = Path.GetFileNameWithoutExtension(compressedAssets[0].ItemSpec); + var defineStaticAssetEndpointsTask = new DefineStaticWebAssetEndpoints + { + BuildEngine = buildEngine.Object, + CandidateAssets = [.. candidateAssets], + ExistingEndpoints = [], + ContentTypeMappings = [] + }; + defineStaticAssetEndpointsTask.Execute().Should().BeTrue(); + var compressed = defineStaticAssetEndpointsTask.Endpoints; + + var task = new ApplyCompressionNegotiation + { + BuildEngine = buildEngine.Object, + CandidateAssets = [.. candidateAssets], + CandidateEndpoints = compressed, + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.UpdatedEndpoints); + var expectedEndpoints = new StaticWebAssetEndpoint[] + { + new() + { + Route = "candidate.fingerprint.js", + AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.br"), + Selectors = [ + new () + { + Name = "Content-Encoding", + Value = "br", + Quality = "0.125000000000" + } + ], + ResponseHeaders = [ + new () + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new () + { + Name = "Cache-Control", + Value = "max-age=31536000, immutable" + }, + new () + { + Name = "Content-Encoding", + Value = "br" + }, + new () + { + Name = "Content-Length", + Value = "7" + }, + new () + { + Name = "Content-Type", + Value = "text/javascript" + }, + new () + { + Name = "ETag", + Value = "\u0022compressed-brotli\u0022" + }, + new () + { + Name = "ETag", + Value = "W/\u0022original\u0022" + }, + new () + { + Name = "Last-Modified", + Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) + }, + new () + { + Name = "Vary", + Value = "Content-Encoding" + } + ], + EndpointProperties = [ + new () + { + Name = "fingerprint", + Value = "fingerprint" + }, + new () + { + Name = "integrity", + Value = "sha256-original" + }, + new () + { + Name = "label", + Value = "candidate.js" + } + ] + }, + new() + { + Route = "candidate.fingerprint.js", + AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.gz"), + Selectors = [ + new () + { + Name = "Content-Encoding", + Value = "gzip", + Quality = "0.100000000000" + } + ], + ResponseHeaders = [ + new () + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new () + { + Name = "Cache-Control", + Value = "max-age=31536000, immutable" + }, + new () + { + Name = "Content-Encoding", + Value = "gzip" + }, + new () + { + Name = "Content-Length", + Value = "9" + }, + new () + { + Name = "Content-Type", + Value = "text/javascript" + }, + new () + { + Name = "ETag", + Value = "\u0022compressed-gzip\u0022" + }, + new () + { + Name = "ETag", + Value = "W/\u0022original\u0022" + }, + new () + { + Name = "Last-Modified", + Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) + }, + new () + { + Name = "Vary", + Value = "Content-Encoding" + } + ], + EndpointProperties = [ + new () + { + Name = "fingerprint", + Value = "fingerprint" + }, + new () + { + Name = "integrity", + Value = "sha256-original" + }, + new () + { + Name = "label", + Value = "candidate.js" + } + ] + }, + new() + { + Route = "candidate.fingerprint.js", + AssetFile = Path.Combine(AppContext.BaseDirectory, "wwwroot", "candidate.js"), + ResponseHeaders = [ + new () + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new () + { + Name = "Cache-Control", + Value = "max-age=31536000, immutable" + }, + new () + { + Name = "Content-Length", + Value = "20" + }, + new () + { + Name = "Content-Type", + Value = "text/javascript" + }, + new () + { + Name = "ETag", + Value = "\u0022original\u0022" + }, + new () + { + Name = "Last-Modified", + Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) + } + ], + EndpointProperties = [ + new () + { + Name = "fingerprint", + Value = "fingerprint" + }, + new () + { + Name = "integrity", + Value = "sha256-original" + }, + new () + { + Name = "label", + Value = "candidate.js" + } + ] + }, + new() + { + Route = "candidate.fingerprint.js.br", + AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.br"), + ResponseHeaders = [ + new () + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new () + { + Name = "Cache-Control", + Value = "max-age=31536000, immutable" + }, + new () + { + Name = "Content-Encoding", + Value = "br" + }, + new () + { + Name = "Content-Length", + Value = "7" + }, + new () + { + Name = "Content-Type", + Value = "text/javascript" + }, + new () + { + Name = "ETag", + Value = "\u0022compressed-brotli\u0022" + }, + new () + { + Name = "Last-Modified", + Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) + }, + new () + { + Name = "Vary", + Value = "Content-Encoding" + } + ], + EndpointProperties = [ + new () + { + Name = "fingerprint", + Value = "fingerprint" + }, + new () + { + Name = "integrity", + Value = "sha256-compressed-brotli" + }, + new () + { + Name = "label", + Value = "candidate.js.br" + } + ] + }, + new() + { + Route = "candidate.fingerprint.js.gz", + AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.gz"), + ResponseHeaders = [ + new () + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new () + { + Name = "Cache-Control", + Value = "max-age=31536000, immutable" + }, + new () + { + Name = "Content-Encoding", + Value = "gzip" + }, + new () + { + Name = "Content-Length", + Value = "9" + }, + new () + { + Name = "Content-Type", + Value = "text/javascript" + }, + new () + { + Name = "ETag", + Value = "\u0022compressed-gzip\u0022" + }, + new () + { + Name = "Last-Modified", + Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) + }, + new () + { + Name = "Vary", + Value = "Content-Encoding" + } + ], + EndpointProperties = [ + new () + { + Name = "fingerprint", + Value = "fingerprint" + }, + new () + { + Name = "integrity", + Value = "sha256-compressed-gzip" + }, + new () + { + Name = "label", + Value = "candidate.js.gz" + } + ] + }, + new() + { + Route = "candidate.js", + AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.br"), + Selectors = [ + new () + { + Name = "Content-Encoding", + Value = "br", + Quality = "0.125000000000" + } + ], + ResponseHeaders = [ + new () + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new () + { + Name = "Cache-Control", + Value = "no-cache" + }, + new () + { + Name = "Content-Encoding", + Value = "br" + }, + new () + { + Name = "Content-Length", + Value = "7" + }, + new () + { + Name = "Content-Type", + Value = "text/javascript" + }, + new () + { + Name = "ETag", + Value = "\u0022compressed-brotli\u0022" + }, + new () + { + Name = "ETag", + Value = "W/\u0022original\u0022" + }, + new () + { + Name = "Last-Modified", + Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) + }, + new () + { + Name = "Vary", + Value = "Content-Encoding" + } + ], + EndpointProperties = [ + new () + { + Name = "integrity", + Value = "sha256-original" + } + ] + }, + new() + { + Route = "candidate.js", + AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.gz"), + Selectors = [ + new () + { + Name = "Content-Encoding", + Value = "gzip", + Quality = "0.100000000000" + } + ], + ResponseHeaders = [ + new () + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new () + { + Name = "Cache-Control", + Value = "no-cache" + }, + new () + { + Name = "Content-Encoding", + Value = "gzip" + }, + new () + { + Name = "Content-Length", + Value = "9" + }, + new () + { + Name = "Content-Type", + Value = "text/javascript" + }, + new () + { + Name = "ETag", + Value = "\u0022compressed-gzip\u0022" + }, + new () + { + Name = "ETag", + Value = "W/\u0022original\u0022" + }, + new () + { + Name = "Last-Modified", + Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) + }, + new () + { + Name = "Vary", + Value = "Content-Encoding" + } + ], + EndpointProperties = [ + new () + { + Name = "integrity", + Value = "sha256-original" + } + ] + }, + new() + { + Route = "candidate.js", + AssetFile = Path.Combine(AppContext.BaseDirectory, "wwwroot", "candidate.js"), + ResponseHeaders = [ + new () + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new () + { + Name = "Cache-Control", + Value = "no-cache" + }, + new () + { + Name = "Content-Length", + Value = "20" + }, + new () + { + Name = "Content-Type", + Value = "text/javascript" + }, + new () + { + Name = "ETag", + Value = "\u0022original\u0022" + }, + new () + { + Name = "Last-Modified", + Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) + } + ], + EndpointProperties = [ + new () + { + Name = "integrity", + Value = "sha256-original" + } + ] + }, + new() + { + Route = "candidate.js.br", + AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.br"), + ResponseHeaders = [ + new () + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new () + { + Name = "Cache-Control", + Value = "no-cache" + }, + new () + { + Name = "Content-Encoding", + Value = "br" + }, + new () + { + Name = "Content-Length", + Value = "7" + }, + new () + { + Name = "Content-Type", + Value = "text/javascript" + }, + new () + { + Name = "ETag", + Value = "\u0022compressed-brotli\u0022" + }, + new () + { + Name = "Last-Modified", + Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) + }, + new () + { + Name = "Vary", + Value = "Content-Encoding" + } + ], + EndpointProperties = [ + new () + { + Name = "integrity", + Value = "sha256-compressed-brotli" + } + ] + }, + new() + { + Route = "candidate.js.gz", + AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.gz"), + ResponseHeaders = [ + new () { + Name = "Accept-Ranges", + Value = "bytes" + }, + new () { + Name = "Cache-Control", + Value = "no-cache" + }, + new () { + Name = "Content-Encoding", + Value = "gzip" + }, + new () { + Name = "Content-Length", + Value = "9" + }, + new () { + Name = "Content-Type", + Value = "text/javascript" + }, + new () { + Name = "ETag", + Value = "\u0022compressed-gzip\u0022" + }, + new () { + Name = "Last-Modified", + Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) + }, + new () { + Name = "Vary", + Value = "Content-Encoding" + } + ], + EndpointProperties = [ + new () { + Name = "integrity", + Value = "sha256-compressed-gzip" + } + ] + } +}; + + endpoints.Should().BeEquivalentTo(expectedEndpoints); + } + + [Fact] + public void AppliesContentNegotiationRules_ToAllRelatedAssetEndpoints() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ApplyCompressionNegotiation + { + BuildEngine = buildEngine.Object, + CandidateAssets = + [ + CreateCandidate( + Path.Combine("wwwroot", "candidate.js"), + "MyPackage", + "Discovered", + "candidate.js", + "All", + "All", + "original-fingerprint", + "original", + fileLength: 20 + ), + CreateCandidate( + Path.Combine("compressed", "candidate.js.gz"), + "MyPackage", + "Discovered", + "candidate.js", + "All", + "All", + "compressed-fingerprint", + "compressed", + Path.Combine("wwwroot", "candidate.js"), + "Content-Encoding", + "gzip", + fileLength: 9 + ) + ], + CandidateEndpoints = + [ + CreateCandidateEndpoint( + "candidate.js", + Path.Combine("wwwroot", "candidate.js"), + CreateHeaders("text/javascript")), + CreateCandidateEndpoint( + "candidate.fingerprint.js", + Path.Combine("wwwroot", "candidate.js"), + CreateHeaders("text/javascript")), + CreateCandidateEndpoint( + "candidate.js.gz", + Path.Combine("compressed", "candidate.js.gz"), + CreateHeaders("text/javascript")) + ], + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.UpdatedEndpoints); + endpoints.Should().BeEquivalentTo((StaticWebAssetEndpoint[])[ + new () + { + Route = "candidate.js", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [ new () { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], + }, + new () + { + Route = "candidate.js", + AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), + ResponseHeaders = + [ + new () { Name = "Content-Type", Value = "text/javascript" } + ], + EndpointProperties = [], + Selectors = [], + }, + new () + { + Route = "candidate.fingerprint.js", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [ new () { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], + }, + new () + { + Route = "candidate.fingerprint.js", + AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), + ResponseHeaders = + [ + new () { Name = "Content-Type", Value = "text/javascript" } + ], + EndpointProperties = [], + Selectors = [], + }, + new () + { + Route = "candidate.js.gz", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [] + } + ]); + } + + [Fact] + public void AppliesContentNegotiationRules_IgnoresAlreadyProcessedEndpoints() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ApplyCompressionNegotiation + { + BuildEngine = buildEngine.Object, + CandidateAssets = + [ + CreateCandidate( + Path.Combine("wwwroot", "candidate.js"), + "MyPackage", + "Discovered", + "candidate.js", + "All", + "All", + "original-fingerprint", + "original" + ), + CreateCandidate( + Path.Combine("compressed", "candidate.js.gz"), + "MyPackage", + "Discovered", + "candidate.js", + "All", + "All", + "compressed-fingerprint", + "compressed", + Path.Combine("wwwroot", "candidate.js"), + "Content-Encoding", + "gzip" + ) + ], + CandidateEndpoints = new StaticWebAssetEndpoint[] + { + new() + { + Route = "candidate.js", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new (){ Name = "Content-Type", Value = "text/javascript" }, + new (){ Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], + }, + new() + { + Route = "candidate.js", + AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), + ResponseHeaders = + [ + new (){ Name = "Content-Type", Value = "text/javascript" } + ], + EndpointProperties = [], + Selectors = [], + }, + new() + { + Route = "candidate.fingerprint.js", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new (){ Name = "Content-Encoding", Value = "gzip" }, + new (){ Name = "Content-Type", Value = "text/javascript" }, + new (){ Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [ new () { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], + }, + new() + { + Route = "candidate.fingerprint.js", + AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), + ResponseHeaders = + [ + new () { Name = "Content-Type", Value = "text/javascript" } + ], + EndpointProperties = [], + Selectors = [], + }, + new() + { + Route = "candidate.js.gz", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [] + } + }.Select(e => e.ToTaskItem()).ToArray(), + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.UpdatedEndpoints); + endpoints.Should().BeEquivalentTo([ + new StaticWebAssetEndpoint + { + Route = "candidate.js", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], + }, + new StaticWebAssetEndpoint + { + Route = "candidate.js", + AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), + ResponseHeaders = + [ + new () { Name = "Content-Type", Value = "text/javascript" } + ], + EndpointProperties = [], + Selectors = [], + }, + new StaticWebAssetEndpoint + { + Route = "candidate.fingerprint.js", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], + }, + new StaticWebAssetEndpoint + { + Route = "candidate.fingerprint.js", + AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), + ResponseHeaders = + [ + new () { Name = "Content-Type", Value = "text/javascript" } + ], + EndpointProperties = [], + Selectors = [], + }, + new StaticWebAssetEndpoint + { + Route = "candidate.js.gz", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [] + } + ]); + } + + [Fact] + public void AppliesContentNegotiationRules_ProcessesNewCompressedFormatsWhenAvailable() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ApplyCompressionNegotiation + { + BuildEngine = buildEngine.Object, + CandidateAssets = + [ + CreateCandidate( + Path.Combine("wwwroot", "candidate.js"), + "MyPackage", + "Discovered", + "candidate.js", + "All", + "All", + "original-fingerprint", + "original", + fileLength: 20 + ), + CreateCandidate( + Path.Combine("compressed", "candidate.js.gz"), + "MyPackage", + "Discovered", + "candidate.js", + "All", + "All", + "compressed-gzip", + "compressed", + Path.Combine("wwwroot", "candidate.js"), + "Content-Encoding", + "gzip", + fileLength: 9 + ), + CreateCandidate( + Path.Combine("compressed", "candidate.js.br"), + "MyPackage", + "Discovered", + "candidate.js", + "All", + "All", + "compressed-brotli", + "compressed", + Path.Combine("wwwroot", "candidate.js"), + "Content-Encoding", + "br", + fileLength: 9 + ) + ], + CandidateEndpoints = new StaticWebAssetEndpoint[] + { + new() + { + Route = "candidate.js", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new (){ Name = "Content-Type", Value = "text/javascript" }, + new (){ Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], + }, + new() + { + Route = "candidate.js", + AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), + ResponseHeaders = + [ + new (){ Name = "Content-Type", Value = "text/javascript" } + ], + EndpointProperties = [], + Selectors = [], + }, + new() + { + Route = "candidate.fingerprint.js", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new (){ Name = "Content-Encoding", Value = "gzip" }, + new (){ Name = "Content-Type", Value = "text/javascript" }, + new (){ Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [ new () { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], + }, + new() + { + Route = "candidate.fingerprint.js", + AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), + ResponseHeaders = + [ + new () { Name = "Content-Type", Value = "text/javascript" } + ], + EndpointProperties = [], + Selectors = [], + }, + new() + { + Route = "candidate.js.gz", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [] + }, + new() + { + Route = "candidate.js.br", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.br")), + ResponseHeaders = + [ + new () { Name = "Content-Type", Value = "text/javascript" }, + ], + EndpointProperties = [], + Selectors = [] + } + }.Select(e => e.ToTaskItem()).ToArray(), + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.UpdatedEndpoints); + endpoints.Should().BeEquivalentTo([ + new StaticWebAssetEndpoint + { + Route = "candidate.js", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], + }, + new StaticWebAssetEndpoint + { + Route = "candidate.js", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.br")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "br" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "br", Quality = "0.100000000000" } ], + }, + new StaticWebAssetEndpoint + { + Route = "candidate.js", + AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), + ResponseHeaders = + [ + new () { Name = "Content-Type", Value = "text/javascript" } + ], + EndpointProperties = [], + Selectors = [], + }, + new StaticWebAssetEndpoint + { + Route = "candidate.fingerprint.js", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], + }, + new StaticWebAssetEndpoint + { + Route = "candidate.fingerprint.js", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.br")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "br" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "br", Quality = "0.100000000000" } ], + }, + new StaticWebAssetEndpoint + { + Route = "candidate.fingerprint.js", + AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), + ResponseHeaders = + [ + new () { Name = "Content-Type", Value = "text/javascript" } + ], + EndpointProperties = [], + Selectors = [], + }, + new StaticWebAssetEndpoint + { + Route = "candidate.js.gz", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "gzip" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [] + }, + new StaticWebAssetEndpoint + { + Route = "candidate.js.br", + AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.br")), + ResponseHeaders = + [ + new () { Name = "Content-Encoding", Value = "br" }, + new () { Name = "Content-Type", Value = "text/javascript" }, + new () { Name = "Vary", Value = "Content-Encoding" } + ], + EndpointProperties = [], + Selectors = [] + } + ]); + } + + private static StaticWebAssetEndpointSelector[] CreateContentEcondingSelector(string name, string value) + { + return + [ + new StaticWebAssetEndpointSelector + { + Name = name, + Value = value, + Quality = "0.100000000000" + } + ]; + } + + private static StaticWebAssetEndpointResponseHeader[] CreateHeaders(string contentType, params (string name, string value)[] AdditionalHeaders) + { + return + [ + new StaticWebAssetEndpointResponseHeader { + Name = "Content-Type", + Value = contentType + }, + ..(AdditionalHeaders ?? []).Select(h => new StaticWebAssetEndpointResponseHeader { Name = h.name, Value = h.value }) + ]; + } + + private static ITaskItem CreateCandidate( + string itemSpec, + string sourceId, + string sourceType, + string relativePath, + string assetKind, + string assetMode, + string fingerprint = "", + string integrity = "", + string relatedAsset = "", + string assetTraitName = "", + string assetTraitValue = "", + long fileLength = 9, + DateTimeOffset? lastModified = null) + { + lastModified ??= new DateTimeOffset(2023, 10, 1, 0, 0, 0, TimeSpan.Zero); + var result = new StaticWebAsset() + { + Identity = Path.GetFullPath(itemSpec), + SourceId = sourceId, + SourceType = sourceType, + ContentRoot = Directory.GetCurrentDirectory(), + BasePath = "base", + RelativePath = relativePath, + AssetKind = assetKind, + AssetMode = assetMode, + AssetRole = "Primary", + RelatedAsset = relatedAsset, + AssetTraitName = assetTraitName, + AssetTraitValue = assetTraitValue, + CopyToOutputDirectory = "", + CopyToPublishDirectory = "", + OriginalItemSpec = itemSpec, + // Add these to avoid accessing the disk to compute them + Integrity = integrity, + Fingerprint = "fingerprint", + FileLength = fileLength, + LastWriteTime = lastModified.Value, + }; + + result.ApplyDefaults(); + result.Normalize(); + + return result.ToTaskItem(); + } + + private static ITaskItem CreateCandidateEndpoint( + string route, + string assetFile, + StaticWebAssetEndpointResponseHeader[] responseHeaders = null, + StaticWebAssetEndpointSelector[] responseSelector = null, + StaticWebAssetEndpointProperty[] properties = null) + { + return new StaticWebAssetEndpoint + { + Route = route, + AssetFile = Path.GetFullPath(assetFile), + ResponseHeaders = responseHeaders ?? [], + EndpointProperties = properties ?? [], + Selectors = responseSelector ?? [] + }.ToTaskItem(); + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ApplyCssScopesTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ApplyCssScopesTest.cs new file mode 100644 index 000000000000..db19972aa054 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ApplyCssScopesTest.cs @@ -0,0 +1,379 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + public class ApplyAllCssScopesTest + { + [Fact] + public void ApplyAllCssScopes_AppliesScopesToRazorComponentFiles() + { + // Arrange + var taskInstance = new ApplyCssScopes() + { + RazorComponents = new[] + { + new TaskItem("TestFiles/Pages/Counter.razor"), + new TaskItem("TestFiles/Pages/Index.razor"), + }, + RazorGenerate = Array.Empty(), + ScopedCss = new[] + { + new TaskItem("TestFiles/Pages/Index.razor.css", new Dictionary { ["CssScope"] = "index-scope" }), + new TaskItem("TestFiles/Pages/Counter.razor.css", new Dictionary { ["CssScope"] = "counter-scope" }), + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.RazorComponentsWithScopes.Should().HaveCount(2); + taskInstance.RazorComponentsWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/Index.razor" && rcws.GetMetadata("CssScope") == "index-scope"); + taskInstance.RazorComponentsWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/Counter.razor" && rcws.GetMetadata("CssScope") == "counter-scope"); + } + + [Fact] + public void ApplyAllCssScopes_AppliesScopesToRazorViewFiles() + { + // Arrange + var taskInstance = new ApplyCssScopes() + { + RazorGenerate = new[] + { + new TaskItem("TestFiles/Pages/Counter.cshtml"), + new TaskItem("TestFiles/Pages/Index.cshtml"), + }, + RazorComponents = Array.Empty(), + ScopedCss = new[] + { + new TaskItem("TestFiles/Pages/Index.cshtml.css", new Dictionary { ["CssScope"] = "index-scope" }), + new TaskItem("TestFiles/Pages/Counter.cshtml.css", new Dictionary { ["CssScope"] = "counter-scope" }), + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.RazorGenerateWithScopes.Should().HaveCount(2); + taskInstance.RazorGenerateWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/Index.cshtml" && rcws.GetMetadata("CssScope") == "index-scope"); + taskInstance.RazorGenerateWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/Counter.cshtml" && rcws.GetMetadata("CssScope") == "counter-scope"); + } + + [Fact] + public void DoesNotApplyCssScopes_ToRazorComponentsWithoutAssociatedFiles() + { + // Arrange + var taskInstance = new ApplyCssScopes() + { + RazorComponents = new[] + { + new TaskItem("TestFiles/Pages/Counter.razor"), + new TaskItem("TestFiles/Pages/Index.razor"), + new TaskItem("TestFiles/Pages/FetchData.razor"), + }, + RazorGenerate = Array.Empty(), + ScopedCss = new[] + { + new TaskItem("TestFiles/Pages/Index.razor.css", new Dictionary { ["CssScope"] = "index-scope" }), + new TaskItem("TestFiles/Pages/Counter.razor.css", new Dictionary { ["CssScope"] = "counter-scope" }) + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + Assert.True(result); + result.Should().BeTrue(); + taskInstance.RazorComponentsWithScopes.Should().NotContain(rcws => rcws.ItemSpec == "TestFiles/Pages/Fetchdata.razor"); + } + + [Fact] + public void DoesNotApplyCssScopes_ToRazorViewsWithoutAssociatedFiles() + { + // Arrange + var taskInstance = new ApplyCssScopes() + { + RazorGenerate = new[] + { + new TaskItem("TestFiles/Pages/Counter.cshtml"), + new TaskItem("TestFiles/Pages/Index.cshtml"), + new TaskItem("TestFiles/Pages/FetchData.cshtml"), + }, + RazorComponents = Array.Empty(), + ScopedCss = new[] + { + new TaskItem("TestFiles/Pages/Index.cshtml.css", new Dictionary { ["CssScope"] = "index-scope" }), + new TaskItem("TestFiles/Pages/Counter.cshtml.css", new Dictionary { ["CssScope"] = "counter-scope" }) + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + Assert.True(result); + result.Should().BeTrue(); + taskInstance.RazorGenerateWithScopes.Should().NotContain(rcws => rcws.ItemSpec == "TestFiles/Pages/Fetchdata.razor"); + } + + [Fact] + public void ApplyAllCssScopes_FailsWhenTheScopedCss_DoesNotMatchTheRazorComponent() + { + // Arrange + var taskInstance = new ApplyCssScopes + { + RazorComponents = new[] + { + new TaskItem("TestFiles/Pages/Counter.razor"), + new TaskItem("TestFiles/Pages/Index.razor"), + }, + RazorGenerate = Array.Empty(), + ScopedCss = new[] + { + new TaskItem("TestFiles/Pages/Index.razor.css", new Dictionary { ["CssScope"] = "index-scope" }), + new TaskItem("TestFiles/Pages/Counter.razor.css", new Dictionary { ["CssScope"] = "counter-scope" }), + new TaskItem("TestFiles/Pages/Profile.razor.css", new Dictionary { ["CssScope"] = "profile-scope" }), + }, + BuildEngine = Mock.Of() + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeFalse(); + } + + [Fact] + public void ApplyAllCssScopes_FailsWhenTheScopedCss_DoesNotMatchTheRazorView() + { + // Arrange + var taskInstance = new ApplyCssScopes + { + RazorGenerate = new[] + { + new TaskItem("TestFiles/Pages/Counter.cshtml"), + new TaskItem("TestFiles/Pages/Index.cshtml"), + }, + RazorComponents = Array.Empty(), + ScopedCss = new[] + { + new TaskItem("TestFiles/Pages/Index.cshtml.css", new Dictionary { ["CssScope"] = "index-scope" }), + new TaskItem("TestFiles/Pages/Counter.cshtml.css", new Dictionary { ["CssScope"] = "counter-scope" }), + new TaskItem("TestFiles/Pages/Profile.cshtml.css", new Dictionary { ["CssScope"] = "profile-scope" }), + }, + BuildEngine = Mock.Of() + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeFalse(); + } + + [Fact] + public void ScopedCssCanDefineAssociatedRazorComponentFile() + { + // Arrange + var taskInstance = new ApplyCssScopes() + { + RazorComponents = new[] + { + new TaskItem("TestFiles/Pages/FetchData.razor") + }, + RazorGenerate = Array.Empty(), + ScopedCss = new[] + { + new TaskItem("TestFiles/Pages/Profile.razor.css", new Dictionary + { + ["CssScope"] = "fetchdata-scope", + ["RazorComponent"] = "TestFiles/Pages/FetchData.razor" + }) + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.RazorComponentsWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/FetchData.razor" && rcws.GetMetadata("CssScope") == "fetchdata-scope"); + } + + [Fact] + public void ScopedCssCanDefineAssociatedRazorGenerateFile() + { + // Arrange + var taskInstance = new ApplyCssScopes() + { + RazorGenerate = new[] + { + new TaskItem("TestFiles/Pages/FetchData.cshtml") + }, + RazorComponents = Array.Empty(), + ScopedCss = new[] + { + new TaskItem("TestFiles/Pages/Profile.cshtml.css", new Dictionary + { + ["CssScope"] = "fetchdata-scope", + ["View"] = "TestFiles/Pages/FetchData.cshtml" + }) + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.RazorGenerateWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/FetchData.cshtml" && rcws.GetMetadata("CssScope") == "fetchdata-scope"); + } + + [Fact] + public void ApplyAllCssScopes_FailsWhenMultipleScopedCssFiles_MatchTheSameRazorComponent() + { + // Arrange + var taskInstance = new ApplyCssScopes + { + RazorComponents = new[] + { + new TaskItem("TestFiles/Pages/Counter.razor"), + new TaskItem("TestFiles/Pages/Index.razor"), + }, + RazorGenerate = Array.Empty(), + ScopedCss = new[] + { + new TaskItem("TestFiles/Pages/Index.razor.css", new Dictionary { ["CssScope"] = "index-scope" }), + new TaskItem("TestFiles/Pages/Counter.razor.css", new Dictionary { ["CssScope"] = "counter-scope" }), + new TaskItem("TestFiles/Pages/Profile.razor.css", new Dictionary + { + ["CssScope"] = "conflict-scope", + ["RazorComponent"] = "TestFiles/Pages/Index.razor" + }), + }, + BuildEngine = Mock.Of() + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeFalse(); + } + + [Fact] + public void ApplyAllCssScopes_FailsWhenMultipleScopedCssFiles_MatchTheSameRazorView() + { + // Arrange + var taskInstance = new ApplyCssScopes + { + RazorGenerate = new[] + { + new TaskItem("TestFiles/Pages/Counter.cshtml"), + new TaskItem("TestFiles/Pages/Index.cshtml"), + }, + RazorComponents = Array.Empty(), + ScopedCss = new[] + { + new TaskItem("TestFiles/Pages/Index.cshtml.css", new Dictionary { ["CssScope"] = "index-scope" }), + new TaskItem("TestFiles/Pages/Counter.cshtml.css", new Dictionary { ["CssScope"] = "counter-scope" }), + new TaskItem("TestFiles/Pages/Profile.cshtml.css", new Dictionary + { + ["CssScope"] = "conflict-scope", + ["View"] = "TestFiles/Pages/Index.cshtml" + }), + }, + BuildEngine = Mock.Of() + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeFalse(); + } + + [Fact] + public void ApplyAllCssScopes_AppliesScopesToRazorComponentAndViewFiles() + { + // Arrange + var taskInstance = new ApplyCssScopes() + { + RazorComponents = new[] + { + new TaskItem("TestFiles/Pages/Counter.razor"), + new TaskItem("TestFiles/Pages/Index.razor"), + }, + RazorGenerate = new[] + { + new TaskItem("TestFiles/Pages/Home.cshtml"), + new TaskItem("TestFiles/Pages/_Host.cshtml"), + }, + ScopedCss = new[] + { + new TaskItem("TestFiles/Pages/Home.cshtml.css", new Dictionary { ["CssScope"] = "home-scope" }), + new TaskItem("TestFiles/Pages/_Host.cshtml.css", new Dictionary { ["CssScope"] = "_host-scope" }), + new TaskItem("TestFiles/Pages/Index.razor.css", new Dictionary { ["CssScope"] = "index-scope" }), + new TaskItem("TestFiles/Pages/Counter.razor.css", new Dictionary { ["CssScope"] = "counter-scope" }), + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.RazorComponentsWithScopes.Should().HaveCount(2); + taskInstance.RazorComponentsWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/Index.razor" && rcws.GetMetadata("CssScope") == "index-scope"); + taskInstance.RazorComponentsWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/Counter.razor" && rcws.GetMetadata("CssScope") == "counter-scope"); + + taskInstance.RazorGenerateWithScopes.Should().HaveCount(2); + taskInstance.RazorGenerateWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/Home.cshtml" && rcws.GetMetadata("CssScope") == "home-scope"); + taskInstance.RazorGenerateWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/_Host.cshtml" && rcws.GetMetadata("CssScope") == "_host-scope"); + } + + [Fact] + public void ApplyAllCssScopes_ScopedCssComponentsDontMatchWithScopedCssViewStylesAndViceversa() + { + // Arrange + var taskInstance = new ApplyCssScopes + { + RazorComponents = new[] + { + new TaskItem("TestFiles/Pages/Counter.razor"), + new TaskItem("TestFiles/Pages/Index.razor"), + }, + RazorGenerate = new[] + { + new TaskItem("TestFiles/Pages/Home.cshtml"), + new TaskItem("TestFiles/Pages/_Host.cshtml"), + }, + ScopedCss = new[] + { + new TaskItem("TestFiles/Pages/Home.razor.css", new Dictionary { ["CssScope"] = "home-scope" }), + new TaskItem("TestFiles/Pages/_Host.razor.css", new Dictionary { ["CssScope"] = "_host-scope" }), + new TaskItem("TestFiles/Pages/Index.cshtml.css", new Dictionary { ["CssScope"] = "index-scope" }), + new TaskItem("TestFiles/Pages/Counter.cshtml.css", new Dictionary { ["CssScope"] = "counter-scope" }), + }, + BuildEngine = Mock.Of() + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeFalse(); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeCssScopesTests.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeCssScopesTests.cs new file mode 100644 index 000000000000..98dd095c3dbb --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeCssScopesTests.cs @@ -0,0 +1,133 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using System.Text.RegularExpressions; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Utilities; + +namespace Microsoft.NET.Sdk.Razor.Test +{ + public class ComputeCssScopesTests + { + [Fact] + public void ComputesScopes_ComputesUniqueScopes_ForCssFiles() + { + // Arrange + var taskInstance = new ComputeCssScope() + { + ScopedCssInput = new[] + { + new TaskItem("TestFiles/Pages/Counter.razor.css"), + new TaskItem("TestFiles/Pages/Index.razor.css"), + new TaskItem("TestFiles/Pages/Profile.razor.css"), + }, + TargetName = "Test" + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().Be(true); + taskInstance.ScopedCss.Select(s => s.GetMetadata("CssScope")).Should().OnlyContain(item => + !string.IsNullOrEmpty(item) && new Regex("b-[a-z0-9]+").IsMatch(item)); + + taskInstance.ScopedCss.Select(s => s.GetMetadata("CssScope")).Should().HaveCount(3).And.OnlyHaveUniqueItems(); + } + + [Fact] + public void ComputesScopes_ScopeVariesByTargetName() + { + // Arrange + var taskInstance = new ComputeCssScope() + { + ScopedCssInput = new[] + { + new TaskItem("TestFiles/Pages/Counter.razor.css"), + new TaskItem("TestFiles/Pages/Index.razor.css"), + new TaskItem("TestFiles/Pages/Profile.razor.css"), + }, + TargetName = "Test" + }; + + // Act + taskInstance.Execute(); + var existing = taskInstance.ScopedCss.Select(s => s.GetMetadata("CssScope")).ToArray(); + + taskInstance.TargetName = "AnotherLibrary"; + var result = taskInstance.Execute(); + + // Assert + taskInstance.ScopedCss.Should().OnlyContain(newScoped => !existing.Contains(newScoped.GetMetadata("ScopedCss"))); + } + + [Fact] + public void ComputesScopes_IsDeterministic() + { + // Arrange + var taskInstance = new ComputeCssScope() + { + ScopedCssInput = new[] + { + new TaskItem("TestFiles/Pages/Counter.razor.css"), + new TaskItem("TestFiles/Pages/Index.razor.css"), + new TaskItem("TestFiles/Pages/Profile.razor.css"), + }, + TargetName = "Test" + }; + + // Act + taskInstance.Execute(); + var existing = taskInstance.ScopedCss.Select(s => s.GetMetadata("CssScope")).OrderBy(id => id).ToArray(); + + var result = taskInstance.Execute(); + + // Assert + var computed = taskInstance.ScopedCss.Select(newScoped => newScoped.GetMetadata("CssScope")).OrderBy(id => id).ToArray(); + computed.Should().Equal(existing); + } + + [Fact] + public void ComputesScopes_VariesByPath() + { + // Arrange + var taskInstance = new ComputeCssScope() + { + ScopedCssInput = new[] + { + new TaskItem("TestFiles/Pages/Index.razor.css"), + new TaskItem("TestFiles/Index.razor.css"), + }, + TargetName = "Test" + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.ScopedCss.Should().HaveCount(2); + taskInstance.ScopedCss[0].GetMetadata("CssScope").Should().NotBe(taskInstance.ScopedCss[1].GetMetadata("CssScope")); + } + + [Fact] + public void ComputesScopes_PreservesUserDefinedScopes() + { + // Arrange + var taskInstance = new ComputeCssScope() + { + ScopedCssInput = new[] + { + new TaskItem("TestFiles/Pages/Index.razor.css", new Dictionary{ ["CssScope"] = "b-predefined" }), }, + TargetName = "Test" + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.ScopedCss.Should().ContainSingle(scopedCss => scopedCss.GetMetadata("CssScope") == "b-predefined"); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeEndpointsForReferenceStaticWebAssetsTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeEndpointsForReferenceStaticWebAssetsTest.cs new file mode 100644 index 000000000000..38ddc3ca5f5d --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeEndpointsForReferenceStaticWebAssetsTest.cs @@ -0,0 +1,146 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests; + +public class ComputeEndpointsForReferenceStaticWebAssetsTest +{ + [Fact] + public void IncludesEndpointsForAssetsFromCurrentProject() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeEndpointsForReferenceStaticWebAssets + { + BuildEngine = buildEngine.Object, + Assets = [CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All")], + CandidateEndpoints = [CreateCandidateEndpoint("candidate.js", Path.Combine("wwwroot", "candidate.js"))] + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.Endpoints.Should().ContainSingle(); + task.Endpoints[0].ItemSpec.Should().Be("base/candidate.js"); + task.Endpoints[0].GetMetadata("AssetFile").Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + } + + [Fact] + public void UpdatesLabelAsNecessary_ForChosenEndpoints() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeEndpointsForReferenceStaticWebAssets + { + BuildEngine = buildEngine.Object, + Assets = [CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All")], + CandidateEndpoints = [CreateCandidateEndpoint("candidate.js", Path.Combine("wwwroot", "candidate.js"), addLabel: true)] + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.Endpoints.Should().ContainSingle(); + task.Endpoints[0].ItemSpec.Should().Be("base/candidate.js"); + task.Endpoints[0].GetMetadata("AssetFile").Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + var properties = StaticWebAssetEndpointProperty.FromMetadataValue(task.Endpoints[0].GetMetadata("EndpointProperties")); + properties.Should().ContainSingle(); + properties[0].Name.Should().Be("label"); + properties[0].Value.Should().Be("base/label-value"); + } + + [Fact] + public void FiltersOutEndpointsForAssetsNotFound() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeEndpointsForReferenceStaticWebAssets + { + BuildEngine = buildEngine.Object, + Assets = [CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All")], + CandidateEndpoints = [ + CreateCandidateEndpoint("candidate.js", Path.Combine("wwwroot", "candidate.js")), + CreateCandidateEndpoint("package.js", Path.Combine("..", "_content", "package-id", "package.js")) + ] + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.Endpoints.Where(e => e != null).Should().ContainSingle(); + task.Endpoints[0].ItemSpec.Should().Be("base/candidate.js"); + task.Endpoints[0].GetMetadata("AssetFile").Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + } + + private static ITaskItem CreateCandidate( + string itemSpec, + string sourceId, + string sourceType, + string relativePath, + string assetKind, + string assetMode) + { + var result = new StaticWebAsset() + { + Identity = Path.GetFullPath(itemSpec), + SourceId = sourceId, + SourceType = sourceType, + ContentRoot = Directory.GetCurrentDirectory(), + BasePath = "base", + RelativePath = relativePath, + AssetKind = assetKind, + AssetMode = assetMode, + AssetRole = "Primary", + RelatedAsset = "", + AssetTraitName = "", + AssetTraitValue = "", + CopyToOutputDirectory = "", + CopyToPublishDirectory = "", + OriginalItemSpec = itemSpec, + // Add these to avoid accessing the disk to compute them + Integrity = "integrity", + Fingerprint = "fingerprint", + LastWriteTime = DateTime.UtcNow, + FileLength = 10, + }; + + result.ApplyDefaults(); + result.Normalize(); + + return result.ToTaskItem(); + } + + private static ITaskItem CreateCandidateEndpoint(string route, string assetFile, bool addLabel = false) + { + return new StaticWebAssetEndpoint + { + Route = route, + AssetFile = Path.GetFullPath(assetFile), + EndpointProperties = addLabel + ? [new StaticWebAssetEndpointProperty { Name = "label", Value = "label-value" }] + : [], + }.ToTaskItem(); + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeReferenceStaticWebAssetItemsTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeReferenceStaticWebAssetItemsTest.cs new file mode 100644 index 000000000000..771984bb8d42 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeReferenceStaticWebAssetItemsTest.cs @@ -0,0 +1,396 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + public class ComputeReferenceStaticWebAssetItemsTest + { + [Fact] + public void IncludesAssetsFromCurrentProjectAsReferencedAssets() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeReferenceStaticWebAssetItems + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All") }, + Patterns = new ITaskItem[] { }, + AssetKind = "Build", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(1); + } + + [Fact] + public void IncludesPatternsFromCurrentProject() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeReferenceStaticWebAssetItems + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All") }, + Patterns = new[] { CreatePatternCandidate("MyPackage\\wwwroot", "base", Directory.GetCurrentDirectory(), "wwwroot\\**", "MyPackage") }, + AssetKind = "Build", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.DiscoveryPatterns.Should().HaveCount(1); + } + + [Fact] + public void FiltersPatternsFromReferencedProjects() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeReferenceStaticWebAssetItems + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All") }, + Patterns = new[] { CreatePatternCandidate("Other\\wwwroot", "base", Directory.GetCurrentDirectory(), "wwwroot\\**", "Other") }, + AssetKind = "Build", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.DiscoveryPatterns.Should().HaveCount(0); + } + + [Fact] + public void PrefersSpecificKindAssetsOverAllKindAssets() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeReferenceStaticWebAssetItems + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] + { + CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All"), + CreateCandidate(Path.Combine("wwwroot", "candidate.other.js"), "MyPackage", "Discovered", "candidate.js", "Build", "All") + }, + Patterns = new ITaskItem[] { }, + AssetKind = "Build", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(1); + task.StaticWebAssets[0].ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.other.js"))); + } + + [Fact] + public void AllAssetGetsIgnoredWhenBuildAndPublishAssetsAreDefined() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeReferenceStaticWebAssetItems + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] + { + CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All"), + CreateCandidate(Path.Combine("wwwroot", "candidate.other.js"), "MyPackage", "Discovered", "candidate.js", "Build", "All"), + CreateCandidate(Path.Combine("wwwroot", "candidate.publish.js"), "MyPackage", "Discovered", "candidate.js", "Publish", "All") + }, + Patterns = new ITaskItem[] { }, + AssetKind = "Build", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(1); + task.StaticWebAssets[0].ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.other.js"))); + } + + [Theory] + [InlineData("Build", "Publish")] + [InlineData("Publish", "Build")] + public void FiltersAssetsForOppositeKind(string assetKind, string manifestKind) + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeReferenceStaticWebAssetItems + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", assetKind, "All") }, + Patterns = new ITaskItem[] { }, + AssetKind = manifestKind, + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(0); + } + + [Fact] + public void FiltersCurrentProjectOnlyAssetsInDefaultMode() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeReferenceStaticWebAssetItems + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "CurrentProject") }, + Patterns = new ITaskItem[] { }, + AssetKind = "Default", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(0); + } + + [Fact] + public void IncludesReferenceAssetsInDefaultMode() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeReferenceStaticWebAssetItems + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "Reference") }, + Patterns = new ITaskItem[] { }, + AssetKind = "Default", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(1); + } + + [Fact] + public void IncludesCurrentProjectAssetsInRootMode() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeReferenceStaticWebAssetItems + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "CurrentProject") }, + Patterns = new ITaskItem[] { }, + AssetKind = "Default", + ProjectMode = "Root" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(1); + } + + [Fact] + public void FiltersReferenceOnlyAssetsInRootMode() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeReferenceStaticWebAssetItems + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "Reference") }, + Patterns = new ITaskItem[] { }, + AssetKind = "Default", + ProjectMode = "Root" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(0); + } + + [Fact] + public void FiltersAssetsFromOtherProjects() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeReferenceStaticWebAssetItems + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "Other", "Project", "candidate.js", "All", "All") }, + Patterns = new ITaskItem[] { }, + AssetKind = "Build", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(0); + } + + [Fact] + public void FiltersAssetsFromPackages() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeReferenceStaticWebAssetItems + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "Other", "Package", "candidate.js", "All", "All") }, + Patterns = new ITaskItem[] { }, + AssetKind = "Build", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(0); + } + + private static ITaskItem CreateCandidate( + string itemSpec, + string sourceId, + string sourceType, + string relativePath, + string assetKind, + string assetMode) + { + var result = new StaticWebAsset() + { + Identity = Path.GetFullPath(itemSpec), + SourceId = sourceId, + SourceType = sourceType, + ContentRoot = Directory.GetCurrentDirectory(), + BasePath = "base", + RelativePath = relativePath, + AssetKind = assetKind, + AssetMode = assetMode, + AssetRole = "Primary", + RelatedAsset = "", + AssetTraitName = "", + AssetTraitValue = "", + CopyToOutputDirectory = "", + CopyToPublishDirectory = "", + OriginalItemSpec = itemSpec, + // Add these to avoid accessing the disk to compute them + Integrity = "integrity", + Fingerprint = "fingerprint", + FileLength = 10, + LastWriteTime = DateTime.UtcNow, + }; + + result.ApplyDefaults(); + result.Normalize(); + + return result.ToTaskItem(); + } + + private static ITaskItem CreatePatternCandidate( + string name, + string basePath, + string contentRoot, + string pattern, + string source) + { + var result = new StaticWebAssetsDiscoveryPattern() + { + Name = name, + BasePath = basePath, + ContentRoot = contentRoot, + Pattern = pattern, + Source = source + }; + + return result.ToTaskItem(); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeStaticWebAssetsForCurrentProjectTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeStaticWebAssetsForCurrentProjectTest.cs new file mode 100644 index 000000000000..3ffa48fa7ced --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ComputeStaticWebAssetsForCurrentProjectTest.cs @@ -0,0 +1,316 @@ +// 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 System.Text.Json; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + public class ComputeStaticWebAssetsForCurrentProjectTest + { + [Fact] + public void IncludesAssetsFromCurrentProject() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeStaticWebAssetsForCurrentProject + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "MyPackage", "Discovered", "candidate.js", "All", "All") }, + AssetKind = "Build", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(1); + } + + [Fact] + public void PrefersSpecificKindAssetsOverAllKindAssets() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeStaticWebAssetsForCurrentProject + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] + { + CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All"), + CreateCandidate(Path.Combine("wwwroot", "candidate.other.js"), "MyPackage", "Discovered", "candidate.js", "Build", "All") + }, + AssetKind = "Build", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(1); + task.StaticWebAssets[0].ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.other.js"))); + } + + [Fact] + public void AllAssetGetsIgnoredWhenBuildAndPublishAssetsAreDefined() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeStaticWebAssetsForCurrentProject + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] + { + CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All"), + CreateCandidate(Path.Combine("wwwroot", "candidate.other.js"), "MyPackage", "Discovered", "candidate.js", "Build", "All"), + CreateCandidate(Path.Combine("wwwroot", "candidate.publish.js"), "MyPackage", "Discovered", "candidate.js", "Publish", "All") + }, + AssetKind = "Build", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(1); + task.StaticWebAssets[0].ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.other.js"))); + } + + [Theory] + [InlineData("Build", "Publish")] + [InlineData("Publish", "Build")] + public void FiltersAssetsForOppositeKind(string assetKind, string manifestKind) + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeStaticWebAssetsForCurrentProject + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "MyPackage", "Discovered", "candidate.js", assetKind, "All") }, + AssetKind = manifestKind, + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(0); + } + + [Fact] + public void IncludesCurrentProjectOnlyAssetsInDefaultMode() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeStaticWebAssetsForCurrentProject + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "MyPackage", "Discovered", "candidate.js", "All", "CurrentProject") }, + AssetKind = "Default", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(1); + } + + [Fact] + public void FiltersReferenceAssetsInDefaultMode() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeStaticWebAssetsForCurrentProject + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "MyPackage", "Discovered", "candidate.js", "All", "Reference") }, + AssetKind = "Default", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(0); + } + + [Fact] + public void IncludesCurrentProjectAssetsInRootMode() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeStaticWebAssetsForCurrentProject + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "MyPackage", "Discovered", "candidate.js", "All", "CurrentProject") }, + AssetKind = "Default", + ProjectMode = "Root" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(1); + } + + [Fact] + public void FiltersReferenceOnlyAssetsInRootMode() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeStaticWebAssetsForCurrentProject + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "MyPackage", "Discovered", "candidate.js", "All", "Reference") }, + AssetKind = "Default", + ProjectMode = "Root" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(0); + } + + [Fact] + public void IncludesAssetsFromOtherProjects() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeStaticWebAssetsForCurrentProject + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "Other", "Project", "candidate.js", "All", "All") }, + AssetKind = "Build", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(1); + } + + [Fact] + public void IncludesAssetsFromPackages() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ComputeStaticWebAssetsForCurrentProject + { + BuildEngine = buildEngine.Object, + Source = "MyPackage", + Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "Other", "Package", "candidate.js", "All", "All") }, + AssetKind = "Build", + ProjectMode = "Default" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.StaticWebAssets.Should().HaveCount(1); + } + + private static ITaskItem CreateCandidate( + string itemSpec, + string sourceId, + string sourceType, + string relativePath, + string assetKind, + string assetMode) + { + var result = new StaticWebAsset() + { + Identity = Path.GetFullPath(itemSpec), + SourceId = sourceId, + SourceType = sourceType, + ContentRoot = Directory.GetCurrentDirectory(), + BasePath = "base", + RelativePath = relativePath, + AssetKind = assetKind, + AssetMode = assetMode, + AssetRole = "Primary", + RelatedAsset = "", + AssetTraitName = "", + AssetTraitValue = "", + CopyToOutputDirectory = "", + CopyToPublishDirectory = "", + OriginalItemSpec = itemSpec, + // Add these to avoid accessing the disk to compute them + Integrity = "integrity", + Fingerprint = "fingerprint", + LastWriteTime = DateTime.UtcNow, + FileLength = 10, + }; + + result.ApplyDefaults(); + result.Normalize(); + + return result.ToTaskItem(); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ConcatenateFilesTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ConcatenateFilesTest.cs new file mode 100644 index 000000000000..36709cd1f5d4 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ConcatenateFilesTest.cs @@ -0,0 +1,353 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; + +namespace Microsoft.NET.Sdk.Razor.Test +{ + public class ConcatenateCssFilesTest + { + private static readonly string BundleContent = + @"/* _content/Test/TestFiles/Generated/Counter.razor.rz.scp.css */ +.counter { + font-size: 2rem; +} +/* _content/Test/TestFiles/Generated/Index.razor.rz.scp.css */ +.index { + font-weight: bold; +} +"; + + private static readonly string BundleWithImportsContent = """ + @import '_content/Test/TestFiles/Generated/lib.bundle.scp.css'; + @import '_content/Test/TestFiles/Generated/package.bundle.scp.css'; + + /* _content/Test/TestFiles/Generated/Counter.razor.rz.scp.css */ + .counter { + font-size: 2rem; + } + /* _content/Test/TestFiles/Generated/Index.razor.rz.scp.css */ + .index { + font-weight: bold; + } + """; + + private static readonly string UpdatedBundleContent = + @"/* _content/Test/TestFiles/Generated/Counter.razor.rz.scp.css */ +.counter { + font-size: 2rem; +} +/* _content/Test/TestFiles/Generated/FetchData.razor.rz.scp.css */ +.fetchData { + font-family: Helvetica; +} +/* _content/Test/TestFiles/Generated/Index.razor.rz.scp.css */ +.index { + font-weight: bold; +} +"; + + [Fact] + public void BundlesScopedCssFiles_ProducesEmpyBundleIfNoFilesAvailable() + { + // Arrange + var expectedFile = Path.Combine(Directory.GetCurrentDirectory(), $"{Guid.NewGuid():N}.css"); + var taskInstance = new ConcatenateCssFiles() + { + ScopedCssFiles = Array.Empty(), + ProjectBundles = Array.Empty(), + OutputFile = expectedFile + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + File.Exists(expectedFile).Should().BeTrue(); + File.ReadAllText(expectedFile).Should().BeEmpty(); + } + + [Fact] + public void BundlesScopedCssFiles_ProducesBundle() + { + // Arrange + var expectedFile = Path.Combine(Directory.GetCurrentDirectory(), $"{Guid.NewGuid():N}.css"); + var taskInstance = new ConcatenateCssFiles() + { + ScopedCssFiles = new[] + { + CreateStaticAsset( + "TestFiles/Generated/Counter.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/Counter.razor.rz.scp.css"), + CreateStaticAsset( + "TestFiles/Generated/Index.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/Index.razor.rz.scp.css"), + }, + ProjectBundles = Array.Empty(), + OutputFile = expectedFile + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + File.Exists(expectedFile).Should().BeTrue(); + + var actualContents = File.ReadAllText(expectedFile); + actualContents.Should().Contain(BundleContent); + } + + private static TaskItem CreateEndpoint(string route) => + new TaskItem(route); + + private static TaskItem CreateStaticAsset(string identity, string basePath, string relativePath) => + new TaskItem( + identity, + new Dictionary + { + ["BasePath"] = basePath, + ["RelativePath"] = relativePath, + ["SourceType"] = "Discovered", + ["SourceId"] = "MyLibrary", + ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "staticwebassets"), + ["AssetKind"] = "All", + ["AssetMode"] = "All", + ["AssetRole"] = "Primary", + ["RelatedAsset"] = "", + ["AssetTraitName"] = "", + ["AssetTraitValue"] = "", + ["OriginalItemSpec"] = identity, + ["Fingerprint"] = $"{Path.GetFileNameWithoutExtension(identity)}-fingerprint", + ["Integrity"] = $"{Path.GetFileNameWithoutExtension(identity)}-integrity", + ["CopyToOutputDirectory"] = "Never", + ["CopyToPublishDirectory"] = "PreserveNewest" + }); + + [Fact] + public void BundlesScopedCssFiles_IncludesOtherBundles() + { + // Arrange + var expectedFile = Path.Combine(Directory.GetCurrentDirectory(), $"{Guid.NewGuid():N}.css"); + var taskInstance = new ConcatenateCssFiles() + { + ScopedCssFiles = new[] + { + CreateStaticAsset( + "TestFiles/Generated/Counter.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/Counter.razor.rz.scp.css"), + CreateStaticAsset( + "TestFiles/Generated/Index.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/Index.razor.rz.scp.css"), + }, + ProjectBundles = new[] + { + CreateEndpoint("_content/Test/TestFiles/Generated/lib.bundle.scp.css"), + CreateEndpoint("_content/Test/TestFiles/Generated/package.bundle.scp.css"), + }, + ScopedCssBundleBasePath = "/", + OutputFile = expectedFile + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + File.Exists(expectedFile).Should().BeTrue(); + + var actualContents = File.ReadAllText(expectedFile); + actualContents.Should().Contain(BundleWithImportsContent); + } + + [Theory] + [InlineData("", "", "TestFiles/Generated/lib.bundle.scp.css")] + [InlineData("/", "/", "TestFiles/Generated/lib.bundle.scp.css")] + [InlineData("app", "_content", "../_content/TestFiles/Generated/lib.bundle.scp.css")] + [InlineData("app", "/_content", "../_content/TestFiles/Generated/lib.bundle.scp.css")] + [InlineData("app", "/_content/", "../_content/TestFiles/Generated/lib.bundle.scp.css")] + [InlineData("/app", "_content", "../_content/TestFiles/Generated/lib.bundle.scp.css")] + [InlineData("/app", "/_content", "../_content/TestFiles/Generated/lib.bundle.scp.css")] + [InlineData("/app", "/_content/", "../_content/TestFiles/Generated/lib.bundle.scp.css")] + [InlineData("app/", "_content", "../_content/TestFiles/Generated/lib.bundle.scp.css")] + [InlineData("app/", "/_content", "../_content/TestFiles/Generated/lib.bundle.scp.css")] + [InlineData("app/", "/_content/", "../_content/TestFiles/Generated/lib.bundle.scp.css")] + [InlineData("/company/app/", "_content", "../../_content/TestFiles/Generated/lib.bundle.scp.css")] + [InlineData("/company/app/", "/_content", "../../_content/TestFiles/Generated/lib.bundle.scp.css")] + [InlineData("/company/app/", "/_content/", "../../_content/TestFiles/Generated/lib.bundle.scp.css")] + public void BundlesScopedCssFiles_HandlesBasePathCombinationsCorrectly(string finalBasePath, string libraryBasePath, string expectedImport) + { + // Arrange + var expectedContent = BundleWithImportsContent + .Replace("_content/Test/TestFiles/Generated/lib.bundle.scp.css", expectedImport) + .Replace("@import '_content/Test/TestFiles/Generated/package.bundle.scp.css';", "") + .Replace("\r\n", "\n") + .Replace("\n\n", "\n"); + + var expectedFile = Path.Combine(Directory.GetCurrentDirectory(), $"{Guid.NewGuid():N}.css"); + var taskInstance = new ConcatenateCssFiles() + { + ScopedCssFiles = new[] + { + CreateStaticAsset( + "TestFiles/Generated/Counter.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/Counter.razor.rz.scp.css"), + CreateStaticAsset( + "TestFiles/Generated/Index.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/Index.razor.rz.scp.css"), + }, + ProjectBundles = new[] + { + CreateEndpoint(StaticWebAsset.CombineNormalizedPaths("",libraryBasePath,"TestFiles/Generated/lib.bundle.scp.css", '/')) + }, + ScopedCssBundleBasePath = finalBasePath, + OutputFile = expectedFile + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + File.Exists(expectedFile).Should().BeTrue(); + + var actualContents = File.ReadAllText(expectedFile); + actualContents.Should().BeVisuallyEquivalentTo(expectedContent); + } + + [Fact] + public void BundlesScopedCssFiles_BundlesFilesInOrder() + { + // Arrange + var expectedFile = Path.Combine(Directory.GetCurrentDirectory(), $"{Guid.NewGuid():N}.css"); + var taskInstance = new ConcatenateCssFiles() + { + ScopedCssFiles = new[] + { + CreateStaticAsset( + "TestFiles/Generated/Index.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/Index.razor.rz.scp.css"), + CreateStaticAsset( + "TestFiles/Generated/Counter.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/Counter.razor.rz.scp.css") + }, + ProjectBundles = Array.Empty(), + OutputFile = expectedFile + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + File.Exists(expectedFile).Should().BeTrue(); + + var actualContents = File.ReadAllText(expectedFile); + actualContents.Should().Contain(BundleContent); + } + + [Fact] + public void BundlesScopedCssFiles_DoesNotOverrideBundleForSameContents() + { + // Arrange + var expectedFile = Path.Combine(Directory.GetCurrentDirectory(), $"{Guid.NewGuid():N}.css"); + var taskInstance = new ConcatenateCssFiles() + { + ScopedCssFiles = new[] + { + CreateStaticAsset( + "TestFiles/Generated/Index.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/Index.razor.rz.scp.css"), + CreateStaticAsset( + "TestFiles/Generated/Counter.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/Counter.razor.rz.scp.css") + }, + ProjectBundles = Array.Empty(), + OutputFile = expectedFile + }; + + // Act + var result = taskInstance.Execute(); + + var lastModified = File.GetLastWriteTimeUtc(expectedFile); + + taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + File.Exists(expectedFile).Should().BeTrue(); + var actualContents = File.ReadAllText(expectedFile); + actualContents.Should().Contain(BundleContent); + + lastModified.Should().BeSameDateAs(File.GetLastWriteTimeUtc(expectedFile)); + } + + [Fact] + public async System.Threading.Tasks.Task BundlesScopedCssFiles_UpdatesBundleWhenContentsChange() + { + // Arrange + var expectedFile = Path.Combine(Directory.GetCurrentDirectory(), $"{Guid.NewGuid():N}.css"); + var taskInstance = new ConcatenateCssFiles() + { + ScopedCssFiles = new[] + { + CreateStaticAsset( + "TestFiles/Generated/Index.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/Index.razor.rz.scp.css"), + CreateStaticAsset( + "TestFiles/Generated/Counter.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/Counter.razor.rz.scp.css") + }, + ProjectBundles = Array.Empty(), + OutputFile = expectedFile + }; + + // Act + var result = taskInstance.Execute(); + + var lastModified = File.GetLastWriteTimeUtc(expectedFile); + + taskInstance.ScopedCssFiles = new[] + { + CreateStaticAsset( + "TestFiles/Generated/Index.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/Index.razor.rz.scp.css"), + CreateStaticAsset( + "TestFiles/Generated/Counter.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/Counter.razor.rz.scp.css"), + CreateStaticAsset( + "TestFiles/Generated/FetchData.razor.rz.scp.css", + "_content/Test/", + "TestFiles/Generated/FetchData.razor.rz.scp.css"), + }; + + await System.Threading.Tasks.Task.Delay(1000); + taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + File.Exists(expectedFile).Should().BeTrue(); + var actualContents = File.ReadAllText(expectedFile); + + actualContents.Should().Contain(UpdatedBundleContent); + lastModified.Should().NotBe(File.GetLastWriteTimeUtc(expectedFile)); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ContentTypeProviderTests.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ContentTypeProviderTests.cs new file mode 100644 index 000000000000..4cc3f29a3c65 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ContentTypeProviderTests.cs @@ -0,0 +1,155 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using System.Collections; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests.StaticWebAssets; + +public class ContentTypeProviderTests +{ + private readonly TaskLoggingHelper _log = new TestTaskLoggingHelper(); + + [Fact] + public void GetContentType_ReturnsTextPlainForTextFiles() + { + // Arrange + var provider = new ContentTypeProvider([]); + + // Act + var contentType = provider.ResolveContentTypeMapping(CreateContext("Fake-License.txt"), _log); + + // Assert + Assert.Equal("text/plain", contentType.MimeType); + } + + [Fact] + public void GetContentType_ReturnsMappingForRelativePath() + { + // Arrange + var provider = new ContentTypeProvider([]); + + // Act + var contentType = provider.ResolveContentTypeMapping(CreateContext("Components/Pages/Counter.razor.js"), _log); + + // Assert + Assert.Equal("text/javascript", contentType.MimeType); + } + + private StaticWebAssetGlobMatcher.MatchContext CreateContext(string v) + { + var ctx = StaticWebAssetGlobMatcher.CreateMatchContext(); + ctx.SetPathAndReinitialize(v); + return ctx; + } + + // wwwroot\exampleJsInterop.js.gz + + [Fact] + public void GetContentType_ReturnsMappingForCompressedRelativePath() + { + // Arrange + var provider = new ContentTypeProvider([]); + + // Act + var contentType = provider.ResolveContentTypeMapping(CreateContext("wwwroot/exampleJsInterop.js.gz"), _log); + + // Assert + Assert.Equal("text/javascript", contentType.MimeType); + } + + [Fact] + public void GetContentType_HandlesFingerprintedPaths() + { + // Arrange + var provider = new ContentTypeProvider([]); + // Act + var contentType = provider.ResolveContentTypeMapping(CreateContext("_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency#[.{fingerprint}].bundle.scp.css.gz"), _log); + // Assert + Assert.Equal("text/css", contentType.MimeType); + } + + [Fact] + public void GetContentType_ReturnsDefaultForUnknownMappings() + { + // Arrange + var provider = new ContentTypeProvider([]); + + // Act + var contentType = provider.ResolveContentTypeMapping(CreateContext("something.unknown"), _log); + + // Assert + Assert.Null(contentType.MimeType); + } + + [Theory] + [InlineData("something.unknown.gz", "application/x-gzip")] + [InlineData("something.unknown.br", "application/octet-stream")] + public void GetContentType_ReturnsGzipOrBrotliForUnknownCompressedMappings(string path, string expectedMapping) + { + // Arrange + var provider = new ContentTypeProvider([]); + + // Act + var contentType = provider.ResolveContentTypeMapping(CreateContext(path), _log); + + // Assert + Assert.Equal(expectedMapping, contentType.MimeType); + } + + [Theory] + [InlineData("Fake-License.txt.gz")] + [InlineData("Fake-License.txt.br")] + public void GetContentType_ReturnsTextPlainForCompressedTextFiles(string path) + { + // Arrange + var provider = new ContentTypeProvider([]); + + // Act + var contentType = provider.ResolveContentTypeMapping(CreateContext(path), _log); + + // Assert + Assert.Equal("text/plain", contentType.MimeType); + } + + private class TestTaskLoggingHelper : TaskLoggingHelper + { + public TestTaskLoggingHelper() : base(new TestTask()) + { + } + + private class TestTask : ITask + { + public IBuildEngine BuildEngine { get; set; } = new TestBuildEngine(); + public ITaskHost HostObject { get; set; } = new TestTaskHost(); + + public bool Execute() => true; + } + + private class TestBuildEngine : IBuildEngine + { + public bool ContinueOnError => true; + + public int LineNumberOfTaskNode => 0; + + public int ColumnNumberOfTaskNode => 0; + + public string ProjectFileOfTaskNode => "test.csproj"; + + public bool BuildProjectFile(string projectFileName, string[] targetNames, IDictionary globalProperties, IDictionary targetOutputs) => true; + + public void LogCustomEvent(CustomBuildEventArgs e) { } + public void LogErrorEvent(BuildErrorEventArgs e) { } + public void LogMessageEvent(BuildMessageEventArgs e) { } + public void LogWarningEvent(BuildWarningEventArgs e) { } + } + + private class TestTaskHost : ITaskHost + { + public object HostObject { get; set; } = new object(); + } + } + +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DefineStaticWebAssetEndpointsTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DefineStaticWebAssetEndpointsTest.cs new file mode 100644 index 000000000000..c472511c58db --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DefineStaticWebAssetEndpointsTest.cs @@ -0,0 +1,687 @@ +// 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 System.Diagnostics.Metrics; +using System.Diagnostics; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; +using NuGet.Packaging.Core; +using System.Net; +using System.Globalization; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests; + +public class DefineStaticWebAssetEndpointsTest +{ + [Theory] + [InlineData(StaticWebAsset.SourceTypes.Discovered)] + [InlineData(StaticWebAsset.SourceTypes.Computed)] + public void DefinesEndpointsForAssets(string sourceType) + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); + + var task = new DefineStaticWebAssetEndpoints + { + BuildEngine = buildEngine.Object, + CandidateAssets = [CreateCandidate( + Path.Combine("wwwroot", "candidate.js"), + "MyPackage", + sourceType, + "candidate.js", + "All", + "All", + fileLength: 10, + lastWriteTime: lastWrite)], + ExistingEndpoints = [], + ContentTypeMappings = [CreateContentMapping("**/*.js", "text/javascript")], + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.Endpoints); + endpoints.Should().ContainSingle(); + var endpoint = endpoints[0]; + + endpoint.Route.Should().Be("candidate.js"); + endpoint.AssetFile.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + endpoint.ResponseHeaders.Should().BeEquivalentTo( + [ + new StaticWebAssetEndpointResponseHeader + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Cache-Control", + Value = "no-cache" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Content-Length", + Value = "10" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Content-Type", + Value = "text/javascript" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "ETag", + Value = "\"integrity\"" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Last-Modified", + Value = "Thu, 15 Nov 1990 00:00:00 GMT" + } + ]); + } + + [Fact] + public void CanDefineFingerprintedEndpoints() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); + + var task = new DefineStaticWebAssetEndpoints + { + BuildEngine = buildEngine.Object, + CandidateAssets = [CreateCandidate( + Path.Combine("wwwroot", "candidate.js"), + "MyPackage", + "Discovered", + "candidate#[.{fingerprint}]?.js", + "All", + "All", + fingerprint: "1234asdf", + integrity: "asdf1234", + lastWriteTime: lastWrite)], + ExistingEndpoints = [], + ContentTypeMappings = [CreateContentMapping("**/*.js", "text/javascript")], + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.Endpoints); + endpoints.Length.Should().Be(2); + var endpoint = endpoints[0]; + + endpoint.Route.Should().Be("candidate.1234asdf.js"); + endpoint.AssetFile.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + endpoint.EndpointProperties.Should().BeEquivalentTo([ + new StaticWebAssetEndpointProperty + { + Name = "fingerprint", + Value = "1234asdf" + }, + new StaticWebAssetEndpointProperty + { + Name = "integrity", + Value = "sha256-asdf1234" + }, + new StaticWebAssetEndpointProperty + { + Name = "label", + Value = "candidate.js" + } + ]); + endpoint.ResponseHeaders.Should().BeEquivalentTo( + [ + new StaticWebAssetEndpointResponseHeader + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Content-Length", + Value = "10" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Content-Type", + Value = "text/javascript" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "ETag", + Value = "\"asdf1234\"" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Last-Modified", + Value = "Thu, 15 Nov 1990 00:00:00 GMT" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Cache-Control", + Value = "max-age=31536000, immutable" + } + ]); + + var otherEndpoint = endpoints[1]; + otherEndpoint.Route.Should().Be("candidate.js"); + otherEndpoint.AssetFile.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + otherEndpoint.ResponseHeaders.Should().BeEquivalentTo( + [ + new StaticWebAssetEndpointResponseHeader + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Cache-Control", + Value = "no-cache" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Content-Length", + Value = "10" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Content-Type", + Value = "text/javascript" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "ETag", + Value = "\"asdf1234\"" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Last-Modified", + Value = "Thu, 15 Nov 1990 00:00:00 GMT" + } + ]); + } + + [Fact] + public void CanDefineFingerprintedEndpoints_WithEmbeddedFingerprint() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); + + var task = new DefineStaticWebAssetEndpoints + { + BuildEngine = buildEngine.Object, + CandidateAssets = [CreateCandidate( + Path.Combine("wwwroot", "candidate.js"), + "MyPackage", + "Discovered", + "candidate#[.{fingerprint=yolo}]?.js", + "All", + "All", + fingerprint: "1234asdf", + integrity: "asdf1234", + lastWriteTime : lastWrite)], + ExistingEndpoints = [], + ContentTypeMappings = [CreateContentMapping("**/*.js", "text/javascript")], + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.Endpoints); + endpoints.Length.Should().Be(2); + var endpoint = endpoints[1]; + + endpoint.Route.Should().Be("candidate.yolo.js"); + endpoint.AssetFile.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + endpoint.EndpointProperties.Should().BeEquivalentTo([ + new StaticWebAssetEndpointProperty + { + Name = "fingerprint", + Value = "yolo" + }, + new StaticWebAssetEndpointProperty + { + Name = "integrity", + Value = "sha256-asdf1234" + }, + new StaticWebAssetEndpointProperty + { + Name = "label", + Value = "candidate.js" + } + ]); + endpoint.ResponseHeaders.Should().BeEquivalentTo( + [ + new StaticWebAssetEndpointResponseHeader + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Content-Length", + Value = "10" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Content-Type", + Value = "text/javascript" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "ETag", + Value = "\"asdf1234\"" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Last-Modified", + Value = "Thu, 15 Nov 1990 00:00:00 GMT" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Cache-Control", + Value = "max-age=31536000, immutable" + } + ]); + + var otherEndpoint = endpoints[0]; + otherEndpoint.Route.Should().Be("candidate.js"); + otherEndpoint.AssetFile.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + otherEndpoint.ResponseHeaders.Should().BeEquivalentTo( + [ + new StaticWebAssetEndpointResponseHeader + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Cache-Control", + Value = "no-cache" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Content-Length", + Value = "10" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Content-Type", + Value = "text/javascript" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "ETag", + Value = "\"asdf1234\"" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Last-Modified", + Value = "Thu, 15 Nov 1990 00:00:00 GMT" + } + ]); + } + + [Fact] + public void DoesNotDefineNewEndpointsWhenAnExistingEndpointAlreadyExists() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); + var headers = new StaticWebAssetEndpointResponseHeader[] + { + new() { + Name = "Accept-Ranges", + Value = "bytes" + }, + new() { + Name = "Content-Length", + Value = "10" + }, + new() { + Name = "Content-Type", + Value = "text/javascript" + }, + new() { + Name = "ETag", + Value = "integrity" + }, + new() { + Name = "Last-Modified", + Value = "Thu, 15 Nov 1990 00:00:00 GMT" + } + }; + + var task = new DefineStaticWebAssetEndpoints + { + BuildEngine = buildEngine.Object, + CandidateAssets = [CreateCandidate( + Path.Combine("wwwroot", "candidate.js"), + "MyPackage", + "Discovered", + "candidate.js", + "All", + "All", + lastWriteTime : lastWrite)], + ExistingEndpoints = [ + CreateCandidateEndpoint( + "candidate.js", + Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), + headers)], + ContentTypeMappings = [CreateContentMapping("**/*.js", "text/javascript")], + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.Endpoints); + endpoints.Should().BeEmpty(); + } + + [Fact] + public void ResolvesContentType_ForCompressedAssets() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); + + var task = new DefineStaticWebAssetEndpoints + { + BuildEngine = buildEngine.Object, + CandidateAssets = [ + new TaskItem( + Path.Combine(AppContext.BaseDirectory, "Client", "obj", "Debug", "net6.0", "compressed", "rdfmaxp4ta-43emfwee4b.gz"), + new Dictionary + { + ["RelativePath"] = "_framework/dotnet.timezones.blat.gz", + ["BasePath"] = "/", + ["AssetMode"] = "All", + ["AssetKind"] = "Build", + ["SourceId"] = "BlazorWasmHosted60.Client", + ["CopyToOutputDirectory"] = "PreserveNewest", + ["Fingerprint"] = "3ji2l2o1xa", + ["RelatedAsset"] = Path.Combine(AppContext.BaseDirectory, "Client", "bin", "Debug", "net6.0", "wwwroot", "_framework", "dotnet.timezones.blat"), + ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "Client", "obj", "Debug", "net6.0", "compressed"), + ["SourceType"] = "Computed", + ["Integrity"] = "TwfyUDDMyF5dWUB2oRhrZaTk8sEa9o8ezAlKdxypsX4=", + ["AssetRole"] = "Alternative", + ["AssetTraitValue"] = "gzip", + ["AssetTraitName"] = "Content-Encoding", + ["OriginalItemSpec"] = Path.Combine("D:", "work", "dotnet-sdk", "artifacts", "tmp", "Release", "Publish60Host---0200F604", "Client", "bin", "Debug", "net6.0", "wwwroot", "_framework", "dotnet.timezones.blat"), + ["CopyToPublishDirectory"] = "Never", + ["FileLength"] = "10", + ["LastWriteTime"] = lastWrite.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) + }) + ], + ExistingEndpoints = [], + ContentTypeMappings = [], + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.Endpoints); + endpoints.Length.Should().Be(1); + var endpoint = endpoints[0]; + endpoint.ResponseHeaders.Should().ContainSingle(h => h.Name == "Content-Type" && h.Value == "application/x-gzip"); + } + + [Fact] + public void ResolvesContentType_ForFingerprintedAssets() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); + + var task = new DefineStaticWebAssetEndpoints + { + BuildEngine = buildEngine.Object, + CandidateAssets = [ + new TaskItem( + Path.Combine(AppContext.BaseDirectory, "Client", "obj", "Debug", "net6.0", "compressed", "rdfmaxp4ta-43emfwee4b.gz"), + new Dictionary + { + ["RelativePath"] = "RazorPackageLibraryDirectDependency.iiugt355ct.bundle.scp.css.gz", + ["BasePath"] = "_content/RazorPackageLibraryDirectDependency", + ["AssetMode"] = "Reference", + ["AssetKind"] = "All", + ["SourceId"] = "RazorPackageLibraryDirectDependency", + ["CopyToOutputDirectory"] = "Never", + ["Fingerprint"] = "olx7vzw7zz", + ["RelatedAsset"] = Path.Combine(AppContext.BaseDirectory, "Client", "obj", "Debug", "net6.0", "compressed", "RazorPackageLibraryDirectDependency.iiugt355ct.bundle.scp.css"), + ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "Client", "obj", "Debug", "net6.0", "compressed"), + ["SourceType"] = "Package", + ["Integrity"] = "JK/W3g5zqZGxAM7zbv/pJ3ngpJheT01SXQ+NofKgQcc=", + ["AssetRole"] = "Alternative", + ["AssetTraitValue"] = "gzip", + ["AssetTraitName"] = "Content-Encoding", + ["OriginalItemSpec"] = Path.Combine(AppContext.BaseDirectory, "Client", "obj", "Debug", "net6.0", "compressed", "RazorPackageLibraryDirectDependency.iiugt355ct.bundle.scp.css"), + ["CopyToPublishDirectory"] = "PreserveNewest", + ["FileLength"] = "10", + ["LastWriteTime"] = lastWrite.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) + }) + ], + ExistingEndpoints = [], + ContentTypeMappings = [], + }; + + // Act + var result = task.Execute(); + result.Should().Be(true); + var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.Endpoints); + endpoints.Length.Should().Be(1); + var endpoint = endpoints[0]; + endpoint.ResponseHeaders.Should().ContainSingle(h => h.Name == "Content-Type" && h.Value == "text/css"); + } + + [Fact] + public void Produces_TheExpectedEndpoint_ForExternalAssets() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); + + var assetIdentity = Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"); + var task = new DefineStaticWebAssetEndpoints + { + BuildEngine = buildEngine.Object, + CandidateAssets = [ + new TaskItem( + assetIdentity, + new Dictionary + { + ["RelativePath"] = "assets/index-#[{fingerprint}].css", + ["BasePath"] = "", + ["AssetMode"] = "All", + ["AssetKind"] = "Publish", + ["SourceId"] = "MyProject", + ["CopyToOutputDirectory"] = "PreserveNewest", + ["RelatedAsset"] = "", + ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "dist"), + ["SourceType"] = "Discovered", + ["AssetRole"] = "Primary", + ["AssetTraitValue"] = "", + ["AssetTraitName"] = "", + ["Integrity"] = "asdf1234", + ["Fingerprint"] = "C5tBAdQX", + ["OriginalItemSpec"] = assetIdentity, + ["CopyToPublishDirectory"] = "PreserveNewest", + ["FileLength"] = "10", + ["LastWriteTime"] = lastWrite.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) + }), + ], + ExistingEndpoints = [], + ContentTypeMappings = [CreateContentMapping("**/*.css", "text/css")], + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.Endpoints); + endpoints.Length.Should().Be(1); + var endpoint = endpoints[0]; + + endpoint.Route.Should().Be("assets/index-C5tBAdQX.css"); + endpoint.AssetFile.Should().Be(assetIdentity); + endpoint.EndpointProperties.Should().BeEquivalentTo([ + new StaticWebAssetEndpointProperty + { + Name = "fingerprint", + Value = "C5tBAdQX" + }, + new StaticWebAssetEndpointProperty + { + Name = "integrity", + Value = "sha256-asdf1234" + }, + new StaticWebAssetEndpointProperty + { + Name = "label", + Value = "assets/index-.css" + } + ]); + endpoint.ResponseHeaders.Should().BeEquivalentTo( + [ + new StaticWebAssetEndpointResponseHeader + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Content-Length", + Value = "10" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Content-Type", + Value = "text/css" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "ETag", + Value = "\"asdf1234\"" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Last-Modified", + Value = "Thu, 15 Nov 1990 00:00:00 GMT" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Cache-Control", + Value = "max-age=31536000, immutable" + } + ]); + } + + private static ITaskItem CreateCandidate( + string itemSpec, + string sourceId, + string sourceType, + string relativePath, + string assetKind, + string assetMode, + string fingerprint = null, + string integrity = null, + long fileLength = 10, + DateTimeOffset? lastWriteTime = null) + { + lastWriteTime ??= DateTimeOffset.UtcNow; + var result = new StaticWebAsset() + { + Identity = Path.GetFullPath(itemSpec), + SourceId = sourceId, + SourceType = sourceType, + ContentRoot = Directory.GetCurrentDirectory(), + BasePath = "base", + RelativePath = relativePath, + AssetKind = assetKind, + AssetMode = assetMode, + AssetRole = "Primary", + RelatedAsset = "", + AssetTraitName = "", + AssetTraitValue = "", + CopyToOutputDirectory = "", + CopyToPublishDirectory = "", + OriginalItemSpec = itemSpec, + // Add these to avoid accessing the disk to compute them + Integrity = integrity ?? "integrity", + Fingerprint = fingerprint ?? "fingerprint", + FileLength = fileLength, + LastWriteTime = lastWriteTime.Value, + }; + + result.ApplyDefaults(); + result.Normalize(); + + return result.ToTaskItem(); + } + + private static TaskItem CreateContentMapping(string pattern, string contentType) + { + return new TaskItem(contentType, new Dictionary + { + { "Pattern", pattern }, + { "Priority", "0" } + }); + } + + private static ITaskItem CreateCandidateEndpoint( + string route, + string assetFile, + StaticWebAssetEndpointResponseHeader[] responseHeaders = null, + StaticWebAssetEndpointSelector[] responseSelector = null, + StaticWebAssetEndpointProperty[] properties = null) + { + return new StaticWebAssetEndpoint + { + Route = route, + AssetFile = Path.GetFullPath(assetFile), + ResponseHeaders = responseHeaders ?? [], + EndpointProperties = properties ?? [], + Selectors = responseSelector ?? [] + }.ToTaskItem(); + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DiscoverDefaultScopedCssItemsTests.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DiscoverDefaultScopedCssItemsTests.cs new file mode 100644 index 000000000000..e4e9a5c914ff --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DiscoverDefaultScopedCssItemsTests.cs @@ -0,0 +1,101 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Utilities; + +namespace Microsoft.NET.Sdk.Razor.Test +{ + public class DiscoverDefaultScopedCssItemsTests + { + [Fact] + public void DiscoversScopedCssFiles_BasedOnTheirExtension() + { + // Arrange + var taskInstance = new DiscoverDefaultScopedCssItems() + { + Content = new[] + { + new TaskItem("TestFiles/Pages/Counter.razor.css"), + new TaskItem("TestFiles/Pages/Index.razor.css"), + new TaskItem("TestFiles/Pages/Profile.razor.css"), + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.DiscoveredScopedCssInputs.Should().HaveCount(3); + } + + [Fact] + public void DoesNotDiscoversScopedCssFilesForViews_IfFeatureIsUnsupported() + { + // Arrange + var taskInstance = new DiscoverDefaultScopedCssItems() + { + Content = new[] + { + new TaskItem("TestFiles/Pages/Counter.cshtml.css"), + new TaskItem("TestFiles/Pages/Index.cshtml.css"), + new TaskItem("TestFiles/Pages/Profile.cshtml.css"), + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.DiscoveredScopedCssInputs.Should().BeEmpty(); + } + + [Fact] + public void DiscoversScopedCssFilesForViews_BasedOnTheirExtension() + { + // Arrange + var taskInstance = new DiscoverDefaultScopedCssItems() + { + SupportsScopedCshtmlCss = true, + Content = new[] + { + new TaskItem("TestFiles/Pages/Counter.cshtml.css"), + new TaskItem("TestFiles/Pages/Index.cshtml.css"), + new TaskItem("TestFiles/Pages/Profile.cshtml.css"), + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.DiscoveredScopedCssInputs.Should().HaveCount(3); + } + + [Fact] + public void DiscoversScopedCssFilesForViews_SkipsFilesWithScopedAttributeWithAFalseValue() + { + // Arrange + var taskInstance = new DiscoverDefaultScopedCssItems() + { + SupportsScopedCshtmlCss = true, + Content = new[] + { + new TaskItem("TestFiles/Pages/Counter.cshtml.css"), + new TaskItem("TestFiles/Pages/Index.cshtml.css"), + new TaskItem("TestFiles/Pages/Profile.cshtml.css", new Dictionary{ ["Scoped"] = "false" }), + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.DiscoveredScopedCssInputs.Should().HaveCount(2); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DiscoverPrecompressedAssetsTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DiscoverPrecompressedAssetsTest.cs new file mode 100644 index 000000000000..27d7baae60f0 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DiscoverPrecompressedAssetsTest.cs @@ -0,0 +1,115 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests; + +public class DiscoverPrecompressedAssetsTest +{ + public string ItemSpec { get; } + + public string OriginalItemSpec { get; } + + public string OutputBasePath { get; } + + public DiscoverPrecompressedAssetsTest() + { + OutputBasePath = Path.Combine(TestContext.Current.TestExecutionDirectory, nameof(ResolveCompressedAssetsTest)); + ItemSpec = Path.Combine(OutputBasePath, Guid.NewGuid().ToString("N") + ".tmp"); + OriginalItemSpec = Path.Combine(OutputBasePath, Guid.NewGuid().ToString("N") + ".tmp"); + } + + [Fact] + public void DiscoversPrecompressedAssetsCorrectly() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var uncompressedCandidate = new StaticWebAsset + { + Identity = Path.Combine(Environment.CurrentDirectory, "wwwroot", "js", "site.js"), + RelativePath = "js/site#[.{fingerprint}]?.js", + BasePath = "_content/Test", + AssetMode = StaticWebAsset.AssetModes.All, + AssetKind = StaticWebAsset.AssetKinds.All, + AssetMergeSource = string.Empty, + SourceId = "Test", + CopyToOutputDirectory = StaticWebAsset.AssetCopyOptions.Never, + Fingerprint = "uncompressed", + RelatedAsset = string.Empty, + ContentRoot = Path.Combine(Environment.CurrentDirectory,"wwwroot"), + SourceType = StaticWebAsset.SourceTypes.Discovered, + Integrity = "uncompressed-integrity", + AssetRole = StaticWebAsset.AssetRoles.Primary, + AssetMergeBehavior = string.Empty, + AssetTraitValue = string.Empty, + AssetTraitName = string.Empty, + OriginalItemSpec = Path.Combine("wwwroot", "js", "site.js"), + CopyToPublishDirectory = StaticWebAsset.AssetCopyOptions.PreserveNewest, + FileLength = 10, + LastWriteTime = DateTime.UtcNow + }; + + var compressedCandidate = new StaticWebAsset + { + Identity = Path.Combine(Environment.CurrentDirectory, "wwwroot", "js", "site.js.gz"), + RelativePath = "js/site.js#[.{fingerprint}]?.gz", + BasePath = "_content/Test", + AssetMode = StaticWebAsset.AssetModes.All, + AssetKind = StaticWebAsset.AssetKinds.All, + AssetMergeSource = string.Empty, + SourceId = "Test", + CopyToOutputDirectory = StaticWebAsset.AssetCopyOptions.Never, + Fingerprint = "compressed", + RelatedAsset = string.Empty, + ContentRoot = Path.Combine(Environment.CurrentDirectory, "wwwroot"), + SourceType = StaticWebAsset.SourceTypes.Discovered, + Integrity = "compressed-integrity", + AssetRole = StaticWebAsset.AssetRoles.Primary, + AssetMergeBehavior = string.Empty, + AssetTraitValue = string.Empty, + AssetTraitName = string.Empty, + OriginalItemSpec = Path.Combine("wwwroot", "js", "site.js.gz"), + CopyToPublishDirectory = StaticWebAsset.AssetCopyOptions.PreserveNewest, + FileLength = 10, + LastWriteTime = DateTime.UtcNow + }; + + var task = new DiscoverPrecompressedAssets + { + CandidateAssets = [uncompressedCandidate.ToTaskItem(), compressedCandidate.ToTaskItem()], + BuildEngine = buildEngine.Object + }; + + var result = task.Execute(); + + result.Should().BeTrue(); + task.DiscoveredCompressedAssets.Should().ContainSingle(); + var asset = task.DiscoveredCompressedAssets[0]; + asset.ItemSpec.Should().Be(compressedCandidate.Identity); + asset.GetMetadata("RelatedAsset").Should().Be(uncompressedCandidate.Identity); + asset.GetMetadata("OriginalItemSpec").Should().Be(uncompressedCandidate.Identity); + asset.GetMetadata("RelativePath").Should().Be("js/site#[.{fingerprint=uncompressed}]?.js.gz"); + asset.GetMetadata("AssetRole").Should().Be("Alternative"); + asset.GetMetadata("AssetTraitName").Should().Be("Content-Encoding"); + asset.GetMetadata("AssetTraitValue").Should().Be("gzip"); + asset.GetMetadata("Fingerprint").Should().Be("compressed"); + asset.GetMetadata("Integrity").Should().Be("compressed-integrity"); + asset.GetMetadata("CopyToPublishDirectory").Should().Be("PreserveNewest"); + asset.GetMetadata("CopyToOutputDirectory").Should().Be("Never"); + asset.GetMetadata("AssetMergeSource").Should().Be(string.Empty); + asset.GetMetadata("AssetMergeBehavior").Should().Be(string.Empty); + asset.GetMetadata("AssetKind").Should().Be("All"); + asset.GetMetadata("AssetMode").Should().Be("All"); + asset.GetMetadata("SourceId").Should().Be("Test"); + asset.GetMetadata("SourceType").Should().Be("Discovered"); + asset.GetMetadata("ContentRoot").Should().Be(Path.Combine(Environment.CurrentDirectory, $"wwwroot{Path.DirectorySeparatorChar}")); + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DiscoverStaticWebAssetsTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DiscoverStaticWebAssetsTest.cs new file mode 100644 index 000000000000..faa67913bb51 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/DiscoverStaticWebAssetsTest.cs @@ -0,0 +1,745 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + public class DiscoverStaticWebAssetsTest + { + private readonly Func _testResolveFileDetails = + (string identity, string originalItemSpec) => (null, 10, new DateTimeOffset(2023, 10, 1, 0, 0, 0, TimeSpan.Zero)); + + [Fact] + public void DiscoversMatchingAssetsBasedOnPattern() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new DefineStaticWebAssets + { + BuildEngine = buildEngine.Object, + TestResolveFileDetails = _testResolveFileDetails, + CandidateAssets = + [ + CreateCandidate(Path.Combine("wwwroot", "candidate.js")) + ], + RelativePathPattern = "wwwroot\\**", + SourceType = "Discovered", + SourceId = "MyProject", + ContentRoot = "wwwroot", + BasePath = "_content/Path" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); + task.Assets.Length.Should().Be(1); + var asset = task.Assets[0]; + asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().Be("MyProject"); + asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().Be("Discovered"); + asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar); + asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be("_content/Path"); + asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().Be("candidate.js"); + asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().Be("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().Be("Primary"); + asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); + asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); + asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().Be(Path.Combine("wwwroot", "candidate.js")); + } + + [Theory] + [InlineData("index.js", "index#[.{fingerprint}]?.js", "")] + [InlineData("css/site.css", "css/site#[.{fingerprint}]!.css", "#[.{fingerprint}]!")] + public void FingerprintsContentWhenEnabled(string file, string expectedRelativePath, string expression) + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new DefineStaticWebAssets + { + BuildEngine = buildEngine.Object, + TestResolveFileDetails = _testResolveFileDetails, + CandidateAssets = + [ + CreateCandidate(Path.Combine("wwwroot", file)) + ], + RelativePathPattern = "wwwroot\\**", + FingerprintCandidates = true, + SourceType = "Discovered", + SourceId = "MyProject", + ContentRoot = "wwwroot", + BasePath = "_content/Path" + }; + if (!string.IsNullOrEmpty(expression)) + { + task.FingerprintPatterns = [new TaskItem("CssFile", new Dictionary { ["Pattern"] = "*.css", ["Expression"] = expression })]; + } + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); + task.Assets.Length.Should().Be(1); + var asset = task.Assets[0]; + asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", file))); + asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().Be("MyProject"); + asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().Be("Discovered"); + asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar); + asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be("_content/Path"); + asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().Be(expectedRelativePath); + asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().Be("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().Be("Primary"); + asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); + asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); + asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().Be(Path.Combine("wwwroot", file)); + } + + [Theory] + [InlineData("index.js")] + [InlineData("css/site.js")] + public void DoesNotFingerprintsContentWhenNotEnabled(string candidate) + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new DefineStaticWebAssets + { + BuildEngine = buildEngine.Object, + TestResolveFileDetails = _testResolveFileDetails, + CandidateAssets = + [ + CreateCandidate(Path.Combine("wwwroot", candidate.Replace('/', Path.DirectorySeparatorChar))) + ], + RelativePathPattern = "wwwroot\\**", + FingerprintCandidates = false, + SourceType = "Discovered", + SourceId = "MyProject", + ContentRoot = "wwwroot", + BasePath = "_content/Path" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); + task.Assets.Length.Should().Be(1); + var asset = task.Assets[0]; + asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", candidate))); + asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().Be("MyProject"); + asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().Be("Discovered"); + asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar); + asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be("_content/Path"); + asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().Be(candidate); + asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().Be("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().Be("Primary"); + asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); + asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); + asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().Be(Path.Combine("wwwroot", Path.Combine(candidate.Split('/')))); + } + + [Theory] + [InlineData("candidate.lib.module.js", "candidate#[.{fingerprint}]?.lib.module.js", "")] + [InlineData("library.candidate.lib.module.js", "library.candidate#[.{fingerprint}]!.lib.module.js", "#[.{fingerprint}]!")] + public void FingerprintsContentUsingPatternsWhenMoreThanOneExtension(string fileName, string expectedRelativePath, string expression) + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new DefineStaticWebAssets + { + BuildEngine = buildEngine.Object, + TestResolveFileDetails = _testResolveFileDetails, + CandidateAssets = + [ + CreateCandidate(Path.Combine("wwwroot", fileName)) + ], + FingerprintPatterns = [new TaskItem("JsModule", new Dictionary { ["Pattern"] = "*.lib.module.js", ["Expression"] = expression })], + FingerprintCandidates = true, + RelativePathPattern = "wwwroot\\**", + SourceType = "Discovered", + SourceId = "MyProject", + ContentRoot = "wwwroot", + BasePath = "_content/Path" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); + task.Assets.Length.Should().Be(1); + var asset = task.Assets[0]; + asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", fileName))); + asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().Be("MyProject"); + asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().Be("Discovered"); + asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar); + asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be("_content/Path"); + asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().Be(expectedRelativePath); + asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().Be("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().Be("Primary"); + asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); + asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); + asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().Be(Path.Combine("wwwroot", fileName)); + } + + [Fact] + public void RespectsItemRelativePathWhenExplicitlySpecified() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new DefineStaticWebAssets + { + BuildEngine = buildEngine.Object, + TestResolveFileDetails = _testResolveFileDetails, + CandidateAssets = + [ + CreateCandidate(Path.Combine("wwwroot", "candidate.js"), relativePath: "subdir/candidate.js") + ], + RelativePathPattern = "wwwroot\\**", + SourceType = "Discovered", + SourceId = "MyProject", + ContentRoot = "wwwroot", + BasePath = "_content/Path" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); + task.Assets.Length.Should().Be(1); + var asset = task.Assets[0]; + asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().Be("MyProject"); + asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().Be("Discovered"); + asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar); + asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be("_content/Path"); + asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().Be("subdir/candidate.js"); + asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().Be("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().Be("Primary"); + asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); + asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); + asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().Be(Path.Combine("wwwroot", "candidate.js")); + } + + [Fact] + public void UsesTargetPathWhenFound() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new DefineStaticWebAssets + { + BuildEngine = buildEngine.Object, + TestResolveFileDetails = _testResolveFileDetails, + CandidateAssets = + [ + CreateCandidate(Path.Combine("wwwroot", "candidate.js"), targetPath: Path.Combine("wwwroot", "subdir", "candidate.publish.js")) + ], + RelativePathPattern = "wwwroot\\**", + SourceType = "Discovered", + SourceId = "MyProject", + ContentRoot = "wwwroot", + BasePath = "_content/Path" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); + task.Assets.Length.Should().Be(1); + var asset = task.Assets[0]; + asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().Be("MyProject"); + asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().Be("Discovered"); + asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar); + asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be("_content/Path"); + asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().Be("subdir/candidate.publish.js"); + asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().Be("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().Be("Primary"); + asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); + asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); + asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().Be(Path.Combine("wwwroot", "candidate.js")); + } + + [Fact] + public void UsesLinkPathWhenFound() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new DefineStaticWebAssets + { + BuildEngine = buildEngine.Object, + TestResolveFileDetails = _testResolveFileDetails, + CandidateAssets = + [ + CreateCandidate(Path.Combine("wwwroot", "candidate.js"), link: Path.Combine("wwwroot", "subdir", "candidate.link.js")) + ], + RelativePathPattern = "wwwroot\\**", + SourceType = "Discovered", + SourceId = "MyProject", + ContentRoot = "wwwroot", + BasePath = "_content/Path" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); + task.Assets.Length.Should().Be(1); + var asset = task.Assets[0]; + asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().Be("MyProject"); + asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().Be("Discovered"); + asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar); + asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be("_content/Path"); + asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().Be("subdir/candidate.link.js"); + asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().Be("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().Be("Primary"); + asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().Be(""); + asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); + asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); + asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().Be(Path.Combine("wwwroot", "candidate.js")); + } + + [Fact] + public void AutomaticallyDetectsAssetKindWhenMultipleAssetsTargetTheSameRelativePath() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new DefineStaticWebAssets + { + BuildEngine = buildEngine.Object, + TestResolveFileDetails = _testResolveFileDetails, + CandidateAssets = + [ + CreateCandidate(Path.Combine("wwwroot", "candidate.js"), copyToPublishDirectory: "Never"), + CreateCandidate(Path.Combine("wwwroot", "candidate.publish.js"), relativePath: "candidate.js") + ], + RelativePathPattern = "wwwroot\\**", + SourceType = "Discovered", + SourceId = "MyProject", + ContentRoot = "wwwroot", + BasePath = "_content/Path" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); + task.Assets.Length.Should().Be(2); + var buildAsset = task.Assets.Single(a => a.ItemSpec == Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + var publishAsset = task.Assets.Single(a => a.ItemSpec == Path.GetFullPath(Path.Combine("wwwroot", "candidate.publish.js"))); + buildAsset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + buildAsset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("Build"); + buildAsset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); + buildAsset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("Never"); + + publishAsset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.publish.js"))); + publishAsset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("Publish"); + publishAsset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); + publishAsset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); + } + + [Theory] + [InlineData("Never", "Never", "Build", "Never", "Never", "Build")] + [InlineData("PreserveNewest", "PreserveNewest", "All", "PreserveNewest", "PreserveNewest", "All")] + [InlineData("Always", "Always", "All", "Always", "Always", "All")] + [InlineData("Never", "Always", "All", "Never", "Always", "All")] + [InlineData("Always", "Never", "Build", "Always", "Never", "Build")] + public void FailsDiscoveringAssetsWhenThereIsAConflict( + string copyToOutputDirectoryFirst, + string copyToPublishDirectoryFirst, + string firstKind, + string copyToOutputDirectorySecond, + string copyToPublishDirectorySecond, + string secondKind) + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new DefineStaticWebAssets + { + BuildEngine = buildEngine.Object, + TestResolveFileDetails = _testResolveFileDetails, + CandidateAssets = + [ + CreateCandidate( + Path.Combine("wwwroot","candidate.js"), + copyToOutputDirectory: copyToOutputDirectoryFirst, + copyToPublishDirectory: copyToPublishDirectoryFirst), + + CreateCandidate( + Path.Combine("wwwroot","candidate.publish.js"), + relativePath: "candidate.js", + copyToOutputDirectory: copyToOutputDirectorySecond, + copyToPublishDirectory: copyToPublishDirectorySecond) + ], + RelativePathPattern = "wwwroot\\**", + SourceType = "Discovered", + SourceId = "MyProject", + ContentRoot = "wwwroot", + BasePath = "_content/Path" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(false); + errorMessages.Count.Should().Be(1); + errorMessages[0].Should().Be($@"Two assets found targeting the same path with incompatible asset kinds: +'{Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))}' with kind '{firstKind}' +'{Path.GetFullPath(Path.Combine("wwwroot", "candidate.publish.js"))}' with kind '{secondKind}' +for path 'candidate.js'"); + } + + [Theory] + [InlineData("\\_content\\Path\\", "_content/Path")] + [InlineData("\\_content\\Path", "_content/Path")] + [InlineData("_content\\Path", "_content/Path")] + [InlineData("/_content/Path/", "_content/Path")] + [InlineData("/_content/Path", "_content/Path")] + [InlineData("_content/Path", "_content/Path")] + [InlineData("\\_content/Path\\", "_content/Path")] + [InlineData("/_content\\Path/", "_content/Path")] + [InlineData("", "/")] + [InlineData("/", "/")] + [InlineData("\\", "/")] + public void NormalizesBasePath(string givenPath, string expectedPath) + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new DefineStaticWebAssets + { + BuildEngine = buildEngine.Object, + TestResolveFileDetails = _testResolveFileDetails, + CandidateAssets = + [ + CreateCandidate("wwwroot\\candidate.js") + ], + RelativePathPattern = "wwwroot\\**", + SourceType = "Discovered", + SourceId = "MyProject", + ContentRoot = "wwwroot", + BasePath = givenPath + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); + task.Assets.Length.Should().Be(1); + var asset = task.Assets[0]; + asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be(expectedPath); + } + + public static TheoryData NormalizesContentRootData + { + get + { + var currentPath = Path.GetFullPath("."); + var result = new TheoryData + { + { "wwwroot", Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar }, + { currentPath + Path.DirectorySeparatorChar + "wwwroot" + Path.DirectorySeparatorChar + "subdir", Path.GetFullPath("wwwroot/subdir") + Path.DirectorySeparatorChar }, + { currentPath + Path.DirectorySeparatorChar + "wwwroot" + Path.DirectorySeparatorChar + "subdir" + Path.DirectorySeparatorChar, Path.GetFullPath("wwwroot/subdir") + Path.DirectorySeparatorChar }, + { currentPath + Path.DirectorySeparatorChar + "wwwroot" + Path.DirectorySeparatorChar + "subdir" + Path.AltDirectorySeparatorChar, Path.GetFullPath("wwwroot/subdir") + Path.DirectorySeparatorChar }, + { currentPath + Path.AltDirectorySeparatorChar + "wwwroot" + Path.AltDirectorySeparatorChar + "subdir", Path.GetFullPath("wwwroot/subdir") + Path.DirectorySeparatorChar }, + { currentPath + Path.DirectorySeparatorChar + "wwwroot" + Path.AltDirectorySeparatorChar + "subdir", Path.GetFullPath("wwwroot/subdir") + Path.DirectorySeparatorChar }, + { currentPath + Path.AltDirectorySeparatorChar + "wwwroot" + Path.DirectorySeparatorChar + "subdir", Path.GetFullPath("wwwroot/subdir") + Path.DirectorySeparatorChar } + }; + return result; + } + } + + [Theory] + [MemberData(nameof(NormalizesContentRootData))] + public void NormalizesContentRoot(string contentRoot, string expected) + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new DefineStaticWebAssets + { + BuildEngine = buildEngine.Object, + TestResolveFileDetails = _testResolveFileDetails, + CandidateAssets = + [ + CreateCandidate("wwwroot\\candidate.js") + ], + RelativePathPattern = "wwwroot\\**", + SourceType = "Discovered", + SourceId = "MyProject", + ContentRoot = contentRoot, + BasePath = "base" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); + task.Assets.Length.Should().Be(1); + var asset = task.Assets[0]; + asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); + asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(expected); + } + + [Fact] + public void DefineStaticWebAssetsCache_UpToDate() + { + // Arrange + var (cache, inputHashes) = SetupCache([], []); + // Assert + cache.Update([], [], [], inputHashes); + + // Assert + Assert.True(cache.IsUpToDate()); + } + + [Fact] + public void DefineStaticWebAssetsCache_UpToDate_WithAssets() + { + // Arrange + var (cache, inputHashes) = SetupCache(["input1"], ["input1"]); + + // Act + cache.Update([], [], [], inputHashes); + + // Assert + Assert.True(cache.IsUpToDate()); + } + + [Theory] + [InlineData(UpdatedHash.GlobalProperties)] + [InlineData(UpdatedHash.FingerprintPatterns)] + [InlineData(UpdatedHash.Overrides)] + public void DefineStaticWebAssetsCache_Recomputes_All_WhenPropertiesChange(UpdatedHash updated) + { + // Arrange + var (cache, inputHashes) = SetupCache(["input1", "input2"], ["input1", "input2"]); + + // Act + switch (updated) + { + case UpdatedHash.GlobalProperties: + cache.Update([1], [], [], inputHashes); + break; + case UpdatedHash.FingerprintPatterns: + cache.Update([], [1], [], inputHashes); + break; + case UpdatedHash.Overrides: + cache.Update([], [], [1], inputHashes); + break; + } + + Assert.False(cache.IsUpToDate()); + Assert.Same(inputHashes, cache.OutOfDateInputs()); + Assert.Empty(cache.CachedAssets); + Assert.Empty(cache.CachedCopyCandidates); + } + + [Fact] + public void DefineStaticWebAssetsCache_PartialUpdate_WhenOnlySome_InputsChange() + { + // Arrange + var (cache, inputHashes) = SetupCache(["input1"], ["input2"], appendCachedToInputHashes: true); + var cachedAsset = cache.CachedAssets.Values.Single(); + + // Act + cache.Update([], [], [], inputHashes); + + // Assert + Assert.False(cache.IsUpToDate()); + Assert.NotSame(inputHashes, cache.OutOfDateInputs()); + var input1 = Assert.Single(cache.OutOfDateInputs()); + var ouput = cache.GetComputedOutputs(); + var input2 = Assert.Single(ouput.Assets); + } + + [Fact] + public void DefineStaticWebAssetsCache_PartialUpdate_NewAssetsCanBeAddedToTheCache() + { + // Arrange + var (cache, inputHashes) = SetupCache(["input1"], ["input2"], appendCachedToInputHashes: true); + cache.Update([], [], [], inputHashes); + + // Act + var newAssetItem = inputHashes["input1"]; + var newAsset = new StaticWebAsset { Identity = newAssetItem.ItemSpec }; + cache.AppendAsset("input1", newAsset, newAssetItem); + + // Assert + Assert.False(cache.IsUpToDate()); + Assert.NotSame(inputHashes, cache.OutOfDateInputs()); + var input1 = Assert.Single(cache.OutOfDateInputs()); + Assert.Contains("input1", cache.CachedAssets.Keys); + + var ouput = cache.GetComputedOutputs(); + Assert.Equal(2, ouput.Assets.Count); + Assert.Equal("input2", ouput.Assets[0].ItemSpec); + Assert.Equal("input1", ouput.Assets[1].ItemSpec); + } + + [Fact] + public void DefineStaticWebAssetsCache_CanRoundtripManifest() + { + var manifestPath = Path.Combine(Environment.CurrentDirectory, "CanRoundtripManifest.json"); + if (File.Exists(manifestPath)) + { + File.Delete(manifestPath); + } + try + { + var (cache, inputHashes) = SetupCache([], [], appendCachedToInputHashes: true, manifestPath: manifestPath); + + var cachedAsset = CreateCandidate(Path.Combine(Environment.CurrentDirectory, "Input2.txt"), "Input2.txt"); + cache.InputHashes = ["input2"]; + cache.CachedAssets["input2"] = new StaticWebAsset { Identity = cachedAsset.ItemSpec, RelativePath = "Input2.txt" }; + inputHashes["input2"] = cachedAsset; + + var newAsset = CreateCandidate(Path.Combine(Environment.CurrentDirectory, "Input1.txt"), "Input1.txt"); + inputHashes["input1"] = newAsset; + + cache.Update([], [], [], inputHashes); + cache.AppendAsset("input1", new StaticWebAsset { Identity = newAsset.ItemSpec, RelativePath = "Input1.txt" }, newAsset); + cache.WriteCacheManifest(); + + var otherManifest = DefineStaticWebAssets.DefineStaticWebAssetsCache.ReadOrCreateCache(CreateLogger(), manifestPath); + Assert.Equal(cache.InputHashes, otherManifest.InputHashes); + Assert.Equal(cache.CachedAssets.Count, otherManifest.CachedAssets.Count); + Assert.Equal(cache.CachedAssets["input2"].Identity, otherManifest.CachedAssets["input2"].Identity); + Assert.Equal(cache.CachedAssets["input2"].RelativePath, otherManifest.CachedAssets["input2"].RelativePath); + Assert.Equal(cache.CachedAssets["input1"].Identity, otherManifest.CachedAssets["input1"].Identity); + Assert.Equal(cache.CachedAssets["input1"].RelativePath, otherManifest.CachedAssets["input1"].RelativePath); + } + finally + { + File.Delete(manifestPath); + } + } + private static TaskLoggingHelper CreateLogger() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + var loggingHelper = new TaskLoggingHelper(buildEngine.Object, "DefineStaticWebAssets"); + return loggingHelper; + } + + private (DefineStaticWebAssets.DefineStaticWebAssetsCache cache, Dictionary inputHashes) SetupCache( + string[] newAssets, + string[] cached, + bool appendCachedToInputHashes = false, + string manifestPath = null) + { + var loggingHelper = CreateLogger(); + var cache = DefineStaticWebAssets.DefineStaticWebAssetsCache.ReadOrCreateCache(loggingHelper, manifestPath); + cache.InputHashes = [.. cached]; + cache.CachedAssets = cached.ToDictionary(c => c, c => new StaticWebAsset { Identity = c }); + + return (cache, newAssets.Concat(appendCachedToInputHashes ? cached : []).ToDictionary(c => c, c => new TaskItem(c) as ITaskItem)); + } + + public enum UpdatedHash + { + GlobalProperties, + FingerprintPatterns, + Overrides + } + + private static ITaskItem CreateCandidate( + string itemSpec, + string relativePath = null, + string targetPath = null, + string link = null, + string copyToOutputDirectory = null, + string copyToPublishDirectory = null) + { + return new TaskItem(itemSpec, new Dictionary + { + ["RelativePath"] = relativePath ?? "", + ["TargetPath"] = targetPath ?? "", + ["Link"] = link ?? "", + ["CopyToOutputDirectory"] = copyToOutputDirectory ?? "", + ["CopyToPublishDirectory"] = copyToPublishDirectory ?? "", + // Add these to avoid accessing the disk to compute them + ["Integrity"] = "integrity", + ["Fingerprint"] = "fingerprint", + ["LastWriteTime"] = DateTime.UtcNow.ToString(StaticWebAsset.DateTimeAssetFormat), + ["FileLength"] = "10", + }); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/FilterStaticWebAssetEndpointsTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/FilterStaticWebAssetEndpointsTest.cs new file mode 100644 index 000000000000..2cf9ee746d4e --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/FilterStaticWebAssetEndpointsTest.cs @@ -0,0 +1,316 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests.StaticWebAssets; +public class FilterStaticWebAssetEndpointsTest +{ + [Fact] + public void CanFilterEndpoints_ByAssetFile() + { + var assets = new[] { + CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), + CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), + CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), + CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), + CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), + CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), + }; + Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); + + var endpoints = CreateEndpoints(assets); + var expectedEndpoints = new[] { + endpoints[0], //index.css + endpoints[1], //index.fingerprint.css + endpoints[8], // other.html + endpoints[10] // other.fingerprint.html + }; + Array.Sort(expectedEndpoints); + var filterEndpointsTask = new FilterStaticWebAssetEndpoints() + { + Endpoints = endpoints.Select(endpoints => endpoints.ToTaskItem()).ToArray(), + Assets = + [ + // index.css + assets[0].ToTaskItem(), + // other.html + assets[4].ToTaskItem(), + ], + }; + + // Act + var result = filterEndpointsTask.Execute(); + + // Assert + result.Should().BeTrue(); + var filteredEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterEndpointsTask.FilteredEndpoints); + Array.Sort(filteredEndpoints); + filteredEndpoints.Should().HaveCount(4); + filteredEndpoints.Should().BeEquivalentTo(expectedEndpoints); + } + + [Fact] + public void CanFilterEndpoints_ByProperty() + { + var assets = new[] { + CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), + CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), + CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), + CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), + CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), + CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), + }; + Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); + + var endpoints = CreateEndpoints(assets); + var filterEndpointsTask = new FilterStaticWebAssetEndpoints() + { + Endpoints = endpoints.Select(endpoints => endpoints.ToTaskItem()).ToArray(), + Filters = [ + new TaskItem("Property", new Dictionary{ + ["Name"] = "fingerprint" + }) + ], + BuildEngine = Mock.Of() + }; + + // Act + var result = filterEndpointsTask.Execute(); + + // Assert + result.Should().BeTrue(); + var filteredEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterEndpointsTask.FilteredEndpoints); + Array.Sort(filteredEndpoints); + filteredEndpoints.Should().HaveCount(6); + filteredEndpoints.Should().AllSatisfy(e => e.EndpointProperties.Should().ContainSingle(p => p.Name == "fingerprint")); + } + + [Fact] + public void CanFilterEndpoints_ByResponseHeader() + { + var assets = new[] { + CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), + CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), + CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), + CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), + CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), + CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), + }; + Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); + + var endpoints = CreateEndpoints(assets); + var filterEndpointsTask = new FilterStaticWebAssetEndpoints() + { + Endpoints = endpoints.Select(endpoints => endpoints.ToTaskItem()).ToArray(), + Filters = [ + new TaskItem("Header", new Dictionary{ + ["Name"] = "Content-Type", + ["Value"] = "text/html" + }) + ], + BuildEngine = Mock.Of() + }; + + // Act + var result = filterEndpointsTask.Execute(); + + // Assert + result.Should().BeTrue(); + var filteredEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterEndpointsTask.FilteredEndpoints); + Array.Sort(filteredEndpoints); + filteredEndpoints.Should().HaveCount(4); + filteredEndpoints.Should().AllSatisfy(e => e.ResponseHeaders.Should().ContainSingle(p => p.Name == "Content-Type" && p.Value == "text/html")); + } + + [Fact] + public void CanFilterEndpoints_Standalone() + { + var assets = new[] { + CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), + CreateAsset("other.js", relativePath: "other#[.{fingerprint}]!.js"), + }; + Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); + + var endpoints = CreateEndpoints(assets); + var filterEndpointsTask = new FilterStaticWebAssetEndpoints() + { + Endpoints = endpoints.Select(endpoints => endpoints.ToTaskItem()).ToArray(), + Assets = [.. assets.Select(a => a.ToTaskItem())], + Filters = [ + new TaskItem("Standalone", new Dictionary{ }) + ], + BuildEngine = Mock.Of() + }; + + // Act + var result = filterEndpointsTask.Execute(); + + // Assert + result.Should().BeTrue(); + var filteredEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterEndpointsTask.FilteredEndpoints); + Array.Sort(filteredEndpoints); + filteredEndpoints.Should().HaveCount(2); + filteredEndpoints.Where(e => e.Route == "index.html").Should().ContainSingle(); + filteredEndpoints.Where(e => e.Route == "other.fingerprint.js").Should().ContainSingle(); + } + + [Fact] + public void CanFilterEndpoints_BySelector() + { + var assets = new[] { + CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), + CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), + CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), + CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), + CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), + CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), + }; + Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); + + var endpoints = CreateEndpoints(assets); + endpoints[0].Selectors = [new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip" }]; + var filterEndpointsTask = new FilterStaticWebAssetEndpoints() + { + Endpoints = endpoints.Select(endpoints => endpoints.ToTaskItem()).ToArray(), + Filters = [ + new TaskItem("Selector", new Dictionary{ + ["Name"] = "Content-Encoding", + ["Value"] = "gzip" + }) + ], + BuildEngine = Mock.Of() + }; + + // Act + var result = filterEndpointsTask.Execute(); + + // Assert + result.Should().BeTrue(); + var filteredEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterEndpointsTask.FilteredEndpoints); + Array.Sort(filteredEndpoints); + filteredEndpoints.Should().ContainSingle(); + filteredEndpoints[0].Route.Should().Be(endpoints[0].Route); + } + + [Fact] + public void CanFilterEndpoints_ByMultipleCriteria() + { + var assets = new[] { + CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), + CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), + CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), + CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), + CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), + CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), + }; + Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); + + var endpoints = CreateEndpoints(assets); + var filterEndpointsTask = new FilterStaticWebAssetEndpoints() + { + Endpoints = endpoints.Select(endpoints => endpoints.ToTaskItem()).ToArray(), + Filters = [ + new TaskItem("Header", new Dictionary{ + ["Name"] = "Content-Type", + ["Value"] = "text/html" + }), + new TaskItem("Property", new Dictionary{ + ["Name"] = "fingerprint" + }) + ], + BuildEngine = Mock.Of() + }; + + // Act + var result = filterEndpointsTask.Execute(); + + // Assert + result.Should().BeTrue(); + var filteredEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterEndpointsTask.FilteredEndpoints); + Array.Sort(filteredEndpoints); + filteredEndpoints.Should().HaveCount(2); + filteredEndpoints.Should().AllSatisfy(e => e.ResponseHeaders.Should().ContainSingle(p => p.Name == "Content-Type" && p.Value == "text/html")); + filteredEndpoints.Should().AllSatisfy(e => e.EndpointProperties.Should().ContainSingle(p => p.Name == "fingerprint")); + } + + private StaticWebAssetEndpoint[] CreateEndpoints(StaticWebAsset[] assets) + { + var defineStaticWebAssetEndpoints = new DefineStaticWebAssetEndpoints + { + CandidateAssets = assets.Select(a => a.ToTaskItem()).ToArray(), + ExistingEndpoints = [], + ContentTypeMappings = + [ + CreateContentMapping("*.html", "text/html"), + CreateContentMapping("*.js", "application/javascript"), + CreateContentMapping("*.css", "text/css"), + ] + }; + defineStaticWebAssetEndpoints.BuildEngine = Mock.Of(); + + defineStaticWebAssetEndpoints.Execute(); + return StaticWebAssetEndpoint.FromItemGroup(defineStaticWebAssetEndpoints.Endpoints); + } + + private static TaskItem CreateContentMapping(string pattern, string contentType) + { + return new TaskItem(contentType, new Dictionary + { + { "Pattern", pattern }, + { "Priority", "0" } + }); + } + + private static StaticWebAsset CreateAsset( + string itemSpec, + string sourceId = "MyApp", + string sourceType = "Discovered", + string relativePath = null, + string assetKind = "All", + string assetMode = "All", + string basePath = "base", + string assetRole = "Primary", + string relatedAsset = "", + string assetTraitName = "", + string assetTraitValue = "", + string copyToOutputDirectory = "Never", + string copytToPublishDirectory = "PreserveNewest") + { + var result = new StaticWebAsset() + { + Identity = Path.GetFullPath(itemSpec), + SourceId = sourceId, + SourceType = sourceType, + ContentRoot = Directory.GetCurrentDirectory(), + BasePath = basePath, + RelativePath = relativePath ?? itemSpec, + AssetKind = assetKind, + AssetMode = assetMode, + AssetRole = assetRole, + AssetMergeBehavior = StaticWebAsset.MergeBehaviors.PreferTarget, + AssetMergeSource = "", + RelatedAsset = relatedAsset, + AssetTraitName = assetTraitName, + AssetTraitValue = assetTraitValue, + CopyToOutputDirectory = copyToOutputDirectory, + CopyToPublishDirectory = copytToPublishDirectory, + OriginalItemSpec = itemSpec, + // Add these to avoid accessing the disk to compute them + Integrity = "integrity", + Fingerprint = "fingerprint", + FileLength = 10, + LastWriteTime = DateTime.UtcNow, + }; + + result.ApplyDefaults(); + result.Normalize(); + + return result; + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/FingerprintPatternMatcherTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/FingerprintPatternMatcherTest.cs new file mode 100644 index 000000000000..964c3086cce6 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/FingerprintPatternMatcherTest.cs @@ -0,0 +1,128 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using System.Collections; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests.StaticWebAssets; + +public class FingerprintPatternMatcherTest +{ + private readonly TaskLoggingHelper _log = new TestTaskLoggingHelper(); + + [Fact] + public void AppendFingerprintPattern_AlreadyContainsFingerprint_ReturnsIdentity() + { + // Arrange + var relativePath = "test#[.{fingerprint}].txt"; + + // Act + var result = new FingerprintPatternMatcher(_log, []).AppendFingerprintPattern(CreateMatchContext(relativePath), "Identity"); + + // Assert + Assert.Equal(relativePath, result); + } + + [Fact] + public void AppendFingerprintPattern_AppendsPattern_AtTheEndOfTheFileName() + { + // Arrange + var relativePath = Path.Combine("folder", "test.txt"); + var expected = Path.Combine("folder", "test#[.{fingerprint}]?.txt"); + + // Act + var result = new FingerprintPatternMatcher(_log, []).AppendFingerprintPattern(CreateMatchContext(relativePath), "Identity"); + + // Assert + Assert.Equal(expected, result); + } + + [Fact] + public void AppendFingerprintPattern_AppendsPattern_AtTheEndOfTheFileName_WhenFileNameContainsDots() + { + // Arrange + var relativePath = Path.Combine("folder", "test.v1.txt"); + var expected = Path.Combine("folder", "test.v1#[.{fingerprint}]?.txt"); + // Act + var result = new FingerprintPatternMatcher(_log, []).AppendFingerprintPattern(CreateMatchContext(relativePath), "Identity"); + // Assert + Assert.Equal(expected, result); + } + + [Fact] + public void AppendFingerprintPattern_AppendsPattern_AtTheEndOfTheFileName_WhenFileDoesNotHaveExtension() + { + // Arrange + var relativePath = Path.Combine("folder", "README"); + var expected = Path.Combine("folder", "README#[.{fingerprint}]?"); + // Act + var result = new FingerprintPatternMatcher(_log, []).AppendFingerprintPattern(CreateMatchContext(relativePath), "Identity"); + // Assert + Assert.Equal(expected, result); + } + + [Fact] + public void AppendFingerprintPattern_AppendsPattern_AtTheRightLocation_WhenACustomPatternIsProvided() + { + // Arrange + var relativePath = Path.Combine("folder", "test.bundle.scp.css"); + var expected = Path.Combine("folder", "test#[.{fingerprint}]!.bundle.scp.css"); + + // Act + var result = new FingerprintPatternMatcher( + _log, + [new TaskItem("ScopedCSS", new Dictionary { ["Pattern"] = "*.bundle.scp.css", ["Expression"] = "#[.{fingerprint}]!" })]) + .AppendFingerprintPattern(CreateMatchContext(relativePath), "Identity"); + + // Assert + Assert.Equal(expected, result); + } + + private StaticWebAssetGlobMatcher.MatchContext CreateMatchContext(string path) + { + var context = new StaticWebAssetGlobMatcher.MatchContext(); + context.SetPathAndReinitialize(path); + return context; + } + + private class TestTaskLoggingHelper : TaskLoggingHelper + { + public TestTaskLoggingHelper() : base(new TestTask()) + { + } + + private class TestTask : ITask + { + public IBuildEngine BuildEngine { get; set; } = new TestBuildEngine(); + public ITaskHost HostObject { get; set; } = new TestTaskHost(); + + public bool Execute() => true; + } + + private class TestBuildEngine : IBuildEngine + { + public bool ContinueOnError => true; + + public int LineNumberOfTaskNode => 0; + + public int ColumnNumberOfTaskNode => 0; + + public string ProjectFileOfTaskNode => "test.csproj"; + + public bool BuildProjectFile(string projectFileName, string[] targetNames, IDictionary globalProperties, IDictionary targetOutputs) => true; + + public void LogCustomEvent(CustomBuildEventArgs e) { } + public void LogErrorEvent(BuildErrorEventArgs e) { } + public void LogMessageEvent(BuildMessageEventArgs e) { } + public void LogWarningEvent(BuildWarningEventArgs e) { } + } + + private class TestTaskHost : ITaskHost + { + public object HostObject { get; set; } = new object(); + } + } + +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsManifestTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsManifestTest.cs new file mode 100644 index 000000000000..59bee35b3d77 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsManifestTest.cs @@ -0,0 +1,296 @@ +// 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 System.Text.Json; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests.StaticWebAssets; + +public class GenerateStaticWebAssetEndpointsManifestTest +{ + [Fact] + public void GeneratesManifest_ForEndpointsWithTokens() + { + StaticWebAssetEndpoint[] expectedEndpoints = + [ + new() { + Route = "index.fingerprint.html", + AssetFile = "index.html", + Selectors = [], + ResponseHeaders = + [ + new() { + Name = "Accept-Ranges", + Value = "bytes" + }, + new() { + Name = "Cache-Control", + Value = "max-age=31536000, immutable" + }, + new() { + Name = "Content-Length", + Value = "10" + }, + new() { + Name = "Content-Type", + Value = "text/html" + }, + new() { + Name = "ETag", + Value = "\"integrity\"" + }, + new() { + Name = "Last-Modified", + Value = "Sat, 01 Jan 2000 00:00:01 GMT" + } + ], + EndpointProperties = + [ + new() { + Name = "fingerprint", + Value = "fingerprint" + }, + new() { + Name = "integrity", + Value = "sha256-integrity" + }, + new() { + Name = "label", + Value = "index.html" + } + ] + }, + new() { + Route = "index.fingerprint.js", + AssetFile = "index.fingerprint.js", + Selectors = [], + ResponseHeaders = + [ + new() { + Name = "Accept-Ranges", + Value = "bytes" + }, + new() { + Name = "Cache-Control", + Value = "max-age=31536000, immutable" + }, + new() { + Name = "Content-Length", + Value = "10" + }, + new() { + Name = "Content-Type", + Value = "text/javascript" + }, + new() { + Name = "ETag", + Value = "\"integrity\"" + }, + new() { + Name = "Last-Modified", + Value = "Sat, 01 Jan 2000 00:00:01 GMT" + } + ], + EndpointProperties = + [ + new() { + Name = "fingerprint", + Value = "fingerprint" + }, + new() { + Name = "integrity", + Value = "sha256-integrity" + }, + new() { + Name = "label", + Value = "index.js" + } + ] + }, + new() { + Route = "index.html", + AssetFile = "index.html", + Selectors = [], + ResponseHeaders = + [ + new() { + Name = "Accept-Ranges", + Value = "bytes" + }, + new() { + Name = "Cache-Control", + Value = "no-cache" + }, + new() { + Name = "Content-Length", + Value = "10" + }, + new() { + Name = "Content-Type", + Value = "text/html" + }, + new() { + Name = "ETag", + Value = "\"integrity\"" + }, + new() { + Name = "Last-Modified", + Value = "Sat, 01 Jan 2000 00:00:01 GMT" + } + ], + EndpointProperties = [ + new() { + Name = "integrity", + Value = "sha256-integrity" + }] + }, + new() { + Route = "index.js", + AssetFile = "index.fingerprint.js", + Selectors = [], + ResponseHeaders = + [ + new() { + Name = "Accept-Ranges", + Value = "bytes" + }, + new() { + Name = "Cache-Control", + Value = "no-cache" + }, + new() { + Name = "Content-Length", + Value = "10" + }, + new() { + Name = "Content-Type", + Value = "text/javascript" + }, + new() { + Name = "ETag", + Value = "\"integrity\"" + }, + new() { + Name = "Last-Modified", + Value = "Sat, 01 Jan 2000 00:00:01 GMT" + } + ], + EndpointProperties = [ + new() { + Name = "integrity", + Value = "sha256-integrity" + }] + } + ]; + Array.Sort(expectedEndpoints); + + var assets = new[] + { + CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), + CreateAsset("index.js", relativePath: "index#[.{fingerprint}]!.js"), + }; + Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); + + var endpoints = CreateEndpoints(assets); + + var path = Path.Combine(AppContext.BaseDirectory, Guid.NewGuid().ToString("N") + "endpoints.json"); + + var task = new GenerateStaticWebAssetEndpointsManifest + { + Assets = assets.Select(a => a.ToTaskItem()).ToArray(), + Endpoints = endpoints.Select(e => e.ToTaskItem()).ToArray(), + ManifestType = "Build", + Source = "MyApp", + ManifestPath = path, + BuildEngine = Mock.Of() + }; + + try + { + // Act + task.Execute(); + + // Assert + new FileInfo(path).Should().Exist(); + var manifest = File.ReadAllText(path); + var json = JsonSerializer.Deserialize(manifest); + json.Should().NotBeNull(); + json.Endpoints.Should().HaveCount(4); + Array.Sort(json.Endpoints); + json.Endpoints.Should().BeEquivalentTo(expectedEndpoints); + } + finally + { + if (File.Exists(path)) + { + File.Delete(path); + } + } + } + + private StaticWebAssetEndpoint[] CreateEndpoints(StaticWebAsset[] assets) + { + var defineStaticWebAssetEndpoints = new DefineStaticWebAssetEndpoints + { + CandidateAssets = assets.Select(a => a.ToTaskItem()).ToArray(), + ExistingEndpoints = [], + ContentTypeMappings = [] + }; + defineStaticWebAssetEndpoints.BuildEngine = Mock.Of(); + + defineStaticWebAssetEndpoints.Execute(); + return StaticWebAssetEndpoint.FromItemGroup(defineStaticWebAssetEndpoints.Endpoints); + } + + private static StaticWebAsset CreateAsset( + string itemSpec, + string sourceId = "MyApp", + string sourceType = "Discovered", + string relativePath = null, + string assetKind = "All", + string assetMode = "All", + string basePath = "base", + string assetRole = "Primary", + string relatedAsset = "", + string assetTraitName = "", + string assetTraitValue = "", + string copyToOutputDirectory = "Never", + string copytToPublishDirectory = "PreserveNewest") + { + var result = new StaticWebAsset() + { + Identity = Path.GetFullPath(itemSpec), + SourceId = sourceId, + SourceType = sourceType, + ContentRoot = Directory.GetCurrentDirectory(), + BasePath = basePath, + RelativePath = relativePath ?? itemSpec, + AssetKind = assetKind, + AssetMode = assetMode, + AssetRole = assetRole, + AssetMergeBehavior = StaticWebAsset.MergeBehaviors.PreferTarget, + AssetMergeSource = "", + RelatedAsset = relatedAsset, + AssetTraitName = assetTraitName, + AssetTraitValue = assetTraitValue, + CopyToOutputDirectory = copyToOutputDirectory, + CopyToPublishDirectory = copytToPublishDirectory, + OriginalItemSpec = itemSpec, + // Add these to avoid accessing the disk to compute them + Integrity = "integrity", + Fingerprint = "fingerprint", + FileLength = 10, + LastWriteTime = new DateTime(2000, 1, 1, 0, 0, 1) + }; + + result.ApplyDefaults(); + result.Normalize(); + + return result; + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsPropsFileTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsPropsFileTest.cs new file mode 100644 index 000000000000..277b255dc588 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsPropsFileTest.cs @@ -0,0 +1,227 @@ +// 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 System.Net; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; +using NuGet.ContentModel; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests.StaticWebAssets; + +public class GenerateStaticWebAssetEndpointsPropsFileTest +{ + [Fact] + public void Generates_ValidEndpointsDefinitions() + { + // Arrange + var file = Path.GetTempFileName(); + var expectedDocument = """ + + + + $([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)..\staticwebassets\js\sample.js)) + + + + + + +"""; + + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new GenerateStaticWebAssetEndpointsPropsFile + { + BuildEngine = buildEngine.Object, + StaticWebAssets = + [ + CreateStaticWebAsset( + Path.Combine("wwwroot","js","sample.js"), + "MyLibrary", + "Discovered", + Path.Combine("js", "sample.js"), + "All", + "All") + ], + StaticWebAssetEndpoints = + [ + CreateStaticWebAssetEndpoint( + Path.Combine("js", "sample.js"), + Path.GetFullPath(Path.Combine("wwwroot","js","sample.js")), + [ + new StaticWebAssetEndpointResponseHeader + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Content-Length", + Value = "10" + } + ], + [ + new StaticWebAssetEndpointSelector + { + Name = "Content-Encoding", + Value = "gzip", + Quality = "0.1" + } + ], + [ + new StaticWebAssetEndpointProperty + { + Name = "integrity", + Value = "__integrity__" + } + ]) + ], + PackagePathPrefix = "staticwebassets", + TargetPropsFilePath = file + }; + + // Act + try + { + var result = task.Execute(); + + result.Should().BeTrue(); + new FileInfo(file).Should().Exist(); + var document = File.ReadAllText(file); + document.Should().BeVisuallyEquivalentTo(expectedDocument); + } + finally + { + if (File.Exists(file)) + { + try + { + File.Delete(file); + } + catch + { + } + } + } + } + + [Fact] + public void Fails_WhenEndpointWithoutAssetExists() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new GenerateStaticWebAssetEndpointsPropsFile + { + BuildEngine = buildEngine.Object, + StaticWebAssets = [], + StaticWebAssetEndpoints = + [ + CreateStaticWebAssetEndpoint( + Path.Combine("js", "sample.js").Replace('\\', '/'), + Path.GetFullPath(Path.Combine("wwwroot","js","sample.js")), + [ + new StaticWebAssetEndpointResponseHeader + { + Name = "Accept-Ranges", + Value = "bytes" + }, + new StaticWebAssetEndpointResponseHeader + { + Name = "Content-Length", + Value = "10" + } + ], + [ + new StaticWebAssetEndpointSelector + { + Name = "Content-Encoding", + Value = "gzip", + Quality = "0.1" + } + ], + [ + new StaticWebAssetEndpointProperty + { + Name = "integrity", + Value = "__integrity__" + } + ]) + ], + PackagePathPrefix = "staticwebassets", + TargetPropsFilePath = Path.GetTempFileName(), + }; + + // Act + var result = task.Execute(); + + result.Should().BeFalse(); + errorMessages.Should().ContainSingle(); + errorMessages[0].Should().Be($"""The asset file '{Path.GetFullPath(Path.Combine("wwwroot", "js", "sample.js"))}' specified in the endpoint '{Path.Combine("js","sample.js").Replace('\\', '/')}' does not exist."""); + } + + private static ITaskItem CreateStaticWebAsset( + string itemSpec, + string sourceId, + string sourceType, + string relativePath, + string assetKind, + string assetMode) + { + var result = new StaticWebAsset() + { + Identity = Path.GetFullPath(itemSpec), + SourceId = sourceId, + SourceType = sourceType, + ContentRoot = Directory.GetCurrentDirectory(), + BasePath = "base", + RelativePath = relativePath, + AssetKind = assetKind, + AssetMode = assetMode, + AssetRole = "Primary", + RelatedAsset = "", + AssetTraitName = "", + AssetTraitValue = "", + CopyToOutputDirectory = "", + CopyToPublishDirectory = "", + OriginalItemSpec = itemSpec, + // Add these to avoid accessing the disk to compute them + Integrity = "integrity", + Fingerprint = "fingerprint", + FileLength = 10, + LastWriteTime = DateTime.UtcNow, + }; + + result.ApplyDefaults(); + result.Normalize(); + + return result.ToTaskItem(); + } + + private static ITaskItem CreateStaticWebAssetEndpoint( + string route, + string assetFile, + StaticWebAssetEndpointResponseHeader[] responseHeaders = null, + StaticWebAssetEndpointSelector[] responseSelector = null, + StaticWebAssetEndpointProperty[] properties = null) + { + return new StaticWebAssetEndpoint + { + Route = route, + AssetFile = Path.GetFullPath(assetFile), + ResponseHeaders = responseHeaders ?? [], + EndpointProperties = properties ?? [], + Selectors = responseSelector ?? [] + }.ToTaskItem(); + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetsDevelopmentManifestTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetsDevelopmentManifestTest.cs new file mode 100644 index 000000000000..e2afd6e0097d --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetsDevelopmentManifestTest.cs @@ -0,0 +1,755 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Moq; +using static Microsoft.AspNetCore.StaticWebAssets.Tasks.GenerateStaticWebAssetsDevelopmentManifest; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + public class GenerateStaticWebAssetsDevelopmentManifestTest + { + [Fact] + public void SkipsManifestGenerationWhen_ThereAreNoAssetsNorDiscoveryPatterns() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + Assets = Array.Empty(), + DiscoveryPatterns = Array.Empty() + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeTrue(); + messages.Should().HaveCount(1); + } + + [Fact] + public void ComputeDevelopmentManifest_IncludesBuildAssets() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + ("index.html", CreateMatchNode(0, "index.html"))), + Environment.CurrentDirectory); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + }; + + var assets = new[] { CreateAsset("index.html", "index.html", assetKind: StaticWebAsset.AssetKinds.Build) }; + var patterns = Array.Empty(); + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + + [Theory] + [InlineData("#[.{fingerprint}]?", "index.html", "optional.html")] + [InlineData("#[.{fingerprint}]!", "index.fingerprint.html", "preferred.html")] + [InlineData("#[.{fingerprint}]", "index.fingerprint.html", "required.html")] + public void ComputeDevelopmentManifest_ReplacesAssetTokens(string fingerprintExpression, string path, string fileName) + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + (path, CreateMatchNode(0, path))), + Environment.CurrentDirectory); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + }; + + var assets = new[] { CreateAsset(fileName, $"index{fingerprintExpression}.html", assetKind: StaticWebAsset.AssetKinds.All) }; + var patterns = Array.Empty(); + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + + [Theory] + [InlineData("#[.{fingerprint}]?", "index.html", "optional.html")] + [InlineData("#[.{fingerprint}]!", "index.fingerprint.html", "preferred.html")] + [InlineData("#[.{fingerprint}]", "index.fingerprint.html", "required.html")] + public void ComputeDevelopmentManifest_ReplacesAssetTokens_FileExists(string fingerprintExpression, string path, string subPath) + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + (path, CreateMatchNode(0, subPath))), + Environment.CurrentDirectory); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + }; + + var assets = new[] { CreateAsset(subPath, $"index{fingerprintExpression}.html", assetKind: StaticWebAsset.AssetKinds.All) }; + var patterns = Array.Empty(); + + var fileName = Path.Combine(Environment.CurrentDirectory, subPath); + try + { + File.WriteAllText(fileName, "content"); + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + finally + { + if (File.Exists(fileName)) + { + File.Delete(fileName); + } + } + } + + [Fact] + public void ComputeDevelopmentManifest_UsesIdentitySubpath_WhenFileExists_AndContentRoot_IsPrefix() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + ("_framework", + CreateIntermediateNode( + ("dotnet.native.fingerprint.js.gz", CreateMatchNode(0, "blob-hash.gz"))))), + Environment.CurrentDirectory); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + }; + + var fileName = Path.Combine(Environment.CurrentDirectory, "blob-hash.gz"); + try + { + File.WriteAllText(fileName, "content"); + var assets = new[] { CreateAsset( + fileName, + $$"""_framework/dotnet.native#[.{fingerprint}]!.js.gz""", + contentRoot: Environment.CurrentDirectory, + assetKind: StaticWebAsset.AssetKinds.All) }; + var patterns = Array.Empty(); + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + finally + { + if (File.Exists(fileName)) + { + File.Delete(fileName); + } + } + } + + [Fact] + public void ComputeDevelopmentManifest_UsesRelativePath_ReplacesAssetTokens_WhenFileDoesNotExist_AtIdentity() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + ("_framework", + CreateIntermediateNode( + ("dotnet.native.fingerprint.js", CreateMatchNode(0, "_framework/dotnet.native.fingerprint.js"))))), + Environment.CurrentDirectory); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + }; + + var fileName = Path.Combine(Environment.CurrentDirectory, "dotnet.native.js"); + var assets = new[] { CreateAsset( + fileName, + $$"""_framework/dotnet.native#[.{fingerprint}]!.js""", + contentRoot: Environment.CurrentDirectory, + assetKind: StaticWebAsset.AssetKinds.All) }; + var patterns = Array.Empty(); + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + + [Fact] + public void ComputeDevelopmentManifest_IncludesAllAssets() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + ("index.html", CreateMatchNode(0, "index.html"))), + Environment.CurrentDirectory); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + }; + + var assets = new[] { CreateAsset("index.html", "index.html", assetKind: StaticWebAsset.AssetKinds.All) }; + var patterns = Array.Empty(); + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + + [Fact] + public void ComputeDevelopmentManifest_ExcludesPublishAssets() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode()); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + }; + + var assets = new[] { CreateAsset("index.html", "index.html", assetKind: StaticWebAsset.AssetKinds.Publish) }; + var patterns = Array.Empty(); + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + + [Fact] + public void ComputeDevelopmentManifest_ExcludesReferenceAssets() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode()); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + Source = "CurrentProjectId" + }; + + var assets = new[] { CreateAsset("index.html", "index.html", assetMode: StaticWebAsset.AssetModes.Reference) }; + var patterns = Array.Empty(); + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + + [Fact] + public void ComputeDevelopmentManifest_PrefersBuildAssetsOverAllAssets() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + ("index.html", CreateMatchNode(0, "index.build.html"))), + Environment.CurrentDirectory); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + Source = "CurrentProjectId" + }; + + var assets = new[] { + CreateAsset("index.build.html", "index.html", assetKind: StaticWebAsset.AssetKinds.Build), + CreateAsset("index.html", "index.html", assetKind: StaticWebAsset.AssetKinds.All) + }; + var patterns = Array.Empty(); + + var fileName = Path.Combine(Environment.CurrentDirectory, "index.build.html"); + try + { + File.WriteAllText(fileName, "content"); + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + finally + { + if (File.Exists(fileName)) + { + File.Delete(fileName); + } + } + } + + [Fact] + public void ComputeDevelopmentManifest_UsesIdentityWhenContentRootStartsByIdentity() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var filePath = Path.Combine("some", "subfolder", "index.build.html"); + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + ("index.html", CreateMatchNode(0, StaticWebAsset.Normalize(filePath)))), + Environment.CurrentDirectory); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + Source = "CurrentProjectId" + }; + + var assets = new[] { + CreateAsset(filePath, "index.html"), + }; + var patterns = Array.Empty(); + + try + { + Directory.CreateDirectory(Path.GetDirectoryName(filePath)); + File.WriteAllText(filePath, "content"); + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + finally + { + if (File.Exists(filePath)) + { + File.Delete(filePath); + } + } + } + + [Fact] + public void ComputeDevelopmentManifest_UsesRelativePathContentRootDoesNotStartByIdentity() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + ("index.html", CreateMatchNode(0, "index.html"))), + Path.GetFullPath(Path.Combine("bin", "debug", "wwwroot"))); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + Source = "CurrentProjectId" + }; + + var assets = new[] { + CreateAsset(Path.Combine("some", "subfolder", "index.build.html"), "index.html", contentRoot: Path.Combine("bin", "debug", "wwwroot")), + }; + var patterns = Array.Empty(); + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + + [Fact] + public void ComputeDevelopmentManifest_MapsPatternsFromCurrentProject() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode() + .AddPatterns((0, "**", 0)), + Path.GetFullPath("wwwroot")); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + Source = "CurrentProjectId" + }; + + var assets = Array.Empty(); + var patterns = new[] { CreatePattern() }; + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + + [Fact] + public void ComputeDevelopmentManifest_MapsPatternsFromOtherProjects() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + ("_other", CreateIntermediateNode( + ("_project", CreateIntermediateNode().AddPatterns((0, "**", 2)))))), + Path.GetFullPath("wwwroot")); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + Source = "CurrentProjectId" + }; + + var assets = Array.Empty(); + var patterns = new[] { CreatePattern(basePath: "_other/_project", source: "OtherProject") }; + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + + [Fact] + public void ComputeDevelopmentManifest_CanMapMultiplePatternsOnSameNode() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + ("_other", CreateIntermediateNode( + ("_project", CreateIntermediateNode().AddPatterns( + (0, "*.js", 2), + (0, "*.css", 2)))))), + Path.GetFullPath("wwwroot")); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + Source = "CurrentProjectId" + }; + + var assets = Array.Empty(); + var patterns = new[] + { + CreatePattern(basePath: "_other/_project", source: "OtherProject", pattern: "*.js"), + CreatePattern(basePath: "_other/_project", source: "OtherProject", pattern: "*.css") + }; + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + + [Fact] + public void ComputeDevelopmentManifest_CanMapMultiplePatternsOnSameNodeWithDifferentContentRoots() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + ("_other", CreateIntermediateNode( + ("_project", CreateIntermediateNode().AddPatterns( + (0, "*.css", 2), + (1, "*.js", 2)))))), + Path.GetFullPath("wwwroot"), + Path.GetFullPath("styles")); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + Source = "CurrentProjectId" + }; + + var assets = Array.Empty(); + var patterns = new[] + { + CreatePattern(basePath: "_other/_project", source: "OtherProject", pattern: "*.js"), + CreatePattern(basePath: "_other/_project", source: "OtherProject", pattern: "*.css", contentRoot: Path.GetFullPath("styles")) + }; + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + + [Fact] + public void ComputeDevelopmentManifest_MultipleAssetsSameContentRoot() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + ("css", CreateIntermediateNode(("site.css", CreateMatchNode(0, "css/site.css")))), + ("js", CreateIntermediateNode(("index.js", CreateMatchNode(0, "js/index.js"))))), + Environment.CurrentDirectory); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + Source = "CurrentProjectId" + }; + + var assets = new[] + { + CreateAsset(Path.Combine(Environment.CurrentDirectory, "css", "site.css"), "css/site.css"), + CreateAsset(Path.Combine(Environment.CurrentDirectory, "js", "index.js"), "js/index.js") + }; + + var patterns = Array.Empty(); + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + + [Fact] + public void ComputeDevelopmentManifest_DifferentCasingEndUpInDifferentNodes() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + ("css", CreateIntermediateNode(("site.css", CreateMatchNode(0, "css/site.css")))), + ("CSS", CreateIntermediateNode(("site.css", CreateMatchNode(0, "CSS/site.css"))))), + Environment.CurrentDirectory); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + Source = "CurrentProjectId" + }; + + var assets = new[] + { + CreateAsset(Path.Combine(Environment.CurrentDirectory, "css", "site.css"), "css/site.css"), + CreateAsset(Path.Combine(Environment.CurrentDirectory, "CSS", "site.css"), "CSS/site.css"), + }; + + var patterns = Array.Empty(); + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + + [Fact] + public void ComputeDevelopmentManifest_UsesBasePathForAssetsFromDifferentProjects() + { + // Arrange + var messages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) + .Callback(args => messages.Add(args.Message)); + + var expectedManifest = CreateExpectedManifest( + CreateIntermediateNode( + ("css", CreateIntermediateNode(("site.css", CreateMatchNode(0, "css/site.css")))), + ("_content", CreateIntermediateNode( + ("OtherProject", CreateIntermediateNode( + ("CSS", CreateIntermediateNode(("site.css", CreateMatchNode(1, "CSS/site.css"))))))))), + Environment.CurrentDirectory, + Path.GetFullPath("otherProject")); + + var task = new GenerateStaticWebAssetsDevelopmentManifest() + { + BuildEngine = buildEngine.Object, + Source = "CurrentProjectId" + }; + + var assets = new[] + { + CreateAsset(Path.Combine(Environment.CurrentDirectory, "css", "site.css"), "css/site.css"), + CreateAsset( + Path.Combine(Environment.CurrentDirectory, "CSS", "site.css"), + "CSS/site.css", + basePath: "_content/OtherProject", + sourceType: "Project", + contentRoot: Path.GetFullPath("otherProject")), + }; + + var patterns = Array.Empty(); + + // Act + var manifest = task.ComputeDevelopmentManifest(assets, patterns); + + // Assert + manifest.Should().BeEquivalentTo(expectedManifest); + } + + private static StaticWebAssetsDiscoveryPattern CreatePattern( + string name = null, + string contentRoot = null, + string pattern = null, + string basePath = null, + string source = null) => + new() + { + Name = name ?? "CurrentProjectId\\wwwroot", + Pattern = pattern ?? "**", + BasePath = basePath ?? "_content/CurrentProjectId", + Source = source ?? "CurrentProjectId", + ContentRoot = StaticWebAsset.NormalizeContentRootPath(contentRoot ?? Path.Combine(Environment.CurrentDirectory, "wwwroot")) + }; + + private static StaticWebAssetsDevelopmentManifest CreateExpectedManifest(StaticWebAssetNode root, params string[] contentRoots) + { + return new StaticWebAssetsDevelopmentManifest() + { + ContentRoots = contentRoots.Select(cr => StaticWebAsset.NormalizeContentRootPath(cr)).ToArray(), + Root = root + }; + } + + private static StaticWebAssetNode CreateIntermediateNode(params (string key, StaticWebAssetNode node)[] children) => new() + { + Children = children.Length == 0 ? null : children.ToDictionary(pair => pair.key, pair => pair.node) + }; + + private static StaticWebAssetNode CreateMatchNode(int index, string subpath) => new() + { + Asset = new StaticWebAssetMatch { ContentRootIndex = index, SubPath = subpath } + }; + + private static StaticWebAsset CreateAsset( + string identity, + string relativePath, + string assetKind = default, + string assetMode = default, + string sourceId = default, + string sourceType = default, + string basePath = default, + string contentRoot = default) + { + return new StaticWebAsset() + { + Identity = Path.GetFullPath(identity), + SourceId = sourceId ?? "CurrentProjectId", + SourceType = sourceType ?? StaticWebAsset.SourceTypes.Discovered, + BasePath = basePath ?? "_content/Base", + RelativePath = relativePath, + AssetKind = assetKind ?? StaticWebAsset.AssetKinds.All, + AssetMode = assetMode ?? StaticWebAsset.AssetModes.All, + AssetRole = StaticWebAsset.AssetRoles.Primary, + Fingerprint = "fingerprint", + ContentRoot = StaticWebAsset.NormalizeContentRootPath(contentRoot ?? Environment.CurrentDirectory), + OriginalItemSpec = identity + }; + } + } + + internal static class StaticWebAssetNodeTestExtensions + { + public static StaticWebAssetNode AddPatterns(this StaticWebAssetNode node, params (int contentRoot, string pattern, int depth)[] patterns) + { + node.Patterns = patterns.Select(p => new StaticWebAssetPattern { ContentRootIndex = p.contentRoot, Pattern = p.pattern, Depth = p.depth }).ToArray(); + return node; + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetsManifestTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetsManifestTest.cs new file mode 100644 index 000000000000..4d7cfeabc868 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetsManifestTest.cs @@ -0,0 +1,460 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + public class GenerateStaticWebAssetsManifestTest + { + public GenerateStaticWebAssetsManifestTest() + { + Directory.CreateDirectory(Path.Combine(TestContext.Current.TestExecutionDirectory, nameof(GenerateStaticWebAssetsManifestTest))); + TempFilePath = Path.Combine(TestContext.Current.TestExecutionDirectory, nameof(GenerateStaticWebAssetsManifestTest), Guid.NewGuid().ToString("N") + ".json"); + } + + public string TempFilePath { get; } + + [Fact] + public void CanGenerateEmptyManifest() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + // GetTempFilePath automatically creates the file, which interferes with the test. + File.Delete(TempFilePath); + + var task = new GenerateStaticWebAssetsManifest + { + BuildEngine = buildEngine.Object, + Assets = Array.Empty(), + Endpoints = Array.Empty(), + ReferencedProjectsConfigurations = Array.Empty(), + DiscoveryPatterns = Array.Empty(), + BasePath = "/", + Source = "MyProject", + ManifestType = "Build", + Mode = "Default", + ManifestPath = TempFilePath, + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var manifest = StaticWebAssetsManifest.FromJsonString(File.ReadAllText(TempFilePath)); + manifest.Should().NotBeNull(); + manifest.Assets.Should().BeNullOrEmpty(); + manifest.Endpoints.Should().BeNullOrEmpty(); + manifest.DiscoveryPatterns.Should().BeNullOrEmpty(); + manifest.ReferencedProjectsConfiguration.Should().BeNullOrEmpty(); + manifest.Version.Should().Be(1); + manifest.Hash.Should().NotBeNullOrWhiteSpace(); + manifest.Mode.Should().Be("Default"); + manifest.ManifestType.Should().Be("Build"); + manifest.BasePath.Should().Be("/"); + manifest.Source.Should().Be("MyProject"); + } + + [Fact] + public void GeneratesManifestWithAssets() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + // GetTempFilePath automatically creates the file, which interferes with the test. + File.Delete(TempFilePath); + var asset = CreateAsset(Path.Combine("wwwroot", "candidate.js"), "MyProject", "Computed", "candidate.js", "All", "All"); + var endpoint = CreateEndpoint(asset); + var task = new GenerateStaticWebAssetsManifest + { + BuildEngine = buildEngine.Object, + Assets = new[] + { + asset.ToTaskItem() + }, + Endpoints = [endpoint.ToTaskItem()], + ReferencedProjectsConfigurations = Array.Empty(), + DiscoveryPatterns = Array.Empty(), + BasePath = "/", + Source = "MyProject", + ManifestType = "Build", + Mode = "Default", + ManifestPath = TempFilePath, + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var manifest = StaticWebAssetsManifest.FromJsonString(File.ReadAllText(TempFilePath)); + manifest.Should().NotBeNull(); + manifest.Assets.Should().HaveCount(1); + var newAsset = manifest.Assets[0]; + newAsset.Should().Be(asset); + manifest.Endpoints.Should().HaveCount(1); + var newEndpoint = manifest.Endpoints[0]; + newEndpoint.Should().Be(endpoint); + } + + private static StaticWebAssetEndpoint CreateEndpoint(StaticWebAsset asset) + { + return new StaticWebAssetEndpoint + { + Route = asset.ComputeTargetPath("", '/'), + AssetFile = asset.Identity, + Selectors = [], + EndpointProperties = [], + ResponseHeaders = + [ + new() + { + Name = "Content-Type", + Value = "__content-type__" + }, + new() + { + Name = "Content-Length", + Value = "__content-length__", + }, + new() + { + Name = "ETag", + Value = "__etag__", + }, + new() + { + Name = "Last-Modified", + Value = "__last-modified__" + }, + new() + { + Name = "Accept-Ranges", + Value = "bytes" + } + ] + }; + } + + public static TheoryData> GeneratesManifestFailsWhenInvalidAssetsAreProvidedData + { + get + { + var theoryData = new TheoryData> + { + a => a.SourceId = "", + a => a.SourceType = "", + a => a.RelativePath = "", + a => a.ContentRoot = "", + a => a.OriginalItemSpec = "", + a => a.AssetKind = "", + a => a.AssetRole = "", + a => a.AssetMode = "", + a => + { + a.AssetRole = "Related"; + a.RelatedAsset = ""; + }, + a => + { + a.AssetRole = "Alternative"; + a.RelatedAsset = ""; + } + }; + + return theoryData; + } + } + + [Theory] + [MemberData(nameof(GeneratesManifestFailsWhenInvalidAssetsAreProvidedData))] + public void GeneratesManifestFailsWhenInvalidAssetsAreProvided(Action change) + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + // GetTempFilePath automatically creates the file, which interferes with the test. + File.Delete(TempFilePath); + var asset = CreateAsset(Path.Combine("wwwroot", "candidate.js"), "MyProject", "Computed", "candidate.js", "All", "All"); + change(asset); + var task = new GenerateStaticWebAssetsManifest + { + BuildEngine = buildEngine.Object, + Assets = new[] + { + asset.ToTaskItem() + }, + Endpoints = Array.Empty(), + ReferencedProjectsConfigurations = Array.Empty(), + DiscoveryPatterns = Array.Empty(), + BasePath = "/", + Source = "MyProject", + ManifestType = "Build", + Mode = "Default", + ManifestPath = TempFilePath, + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(false); + } + + public static TheoryData GeneratesManifestFailsWhenTwoAssetsEndUpOnTheSamePathData + { + get + { + var data = new TheoryData + { + // Duplicate assets + { + CreateAsset(Path.Combine("wwwroot", "candidate.js"), "MyProject", "Computed", "candidate.js", "All", "All"), + CreateAsset(Path.Combine("wwwroot", "candidate.js"), "MyProject", "Computed", "candidate.js", "All", "All") + }, + + // Conflicting Build asssets from different projects + { + CreateAsset(Path.Combine("wwwroot", "candidate.js"), "Package", "Package", "candidate.js", "All", "Build"), + CreateAsset(Path.Combine("wwwroot", "candidate.js"), "OtherProject", "Project", "candidate.js", "All", "Build") + }, + + // Conflicting Publish asssets from different projects + { + CreateAsset(Path.Combine("wwwroot", "candidate.js"), "Package", "Package", "candidate.js", "All", "Publish"), + CreateAsset(Path.Combine("wwwroot", "candidate.js"), "OtherProject", "Project", "candidate.js", "All", "Publish") + }, + + // Conflicting All asssets from different projects + { + CreateAsset(Path.Combine("wwwroot", "candidate.js"), "Package", "Package", "candidate.js", "All", "All"), + CreateAsset(Path.Combine("wwwroot", "candidate.js"), "OtherProject", "Project", "candidate.js", "All", "All") + }, + + // Assets with compatible kinds but from different projects + { + CreateAsset(Path.Combine("wwwroot", "candidate.js"), "MyProject", "Computed", "candidate.js", "All", "Build"), + CreateAsset(Path.Combine("wwwroot", "candidate.js"), "Other", "Project", "candidate.js", "All", "Publish") + } + }; + + return data; + } + } + + [Theory] + [MemberData(nameof(GeneratesManifestFailsWhenTwoAssetsEndUpOnTheSamePathData))] + public void GeneratesManifestFailsWhenTwoAssetsEndUpOnTheSamePath(StaticWebAsset first, StaticWebAsset second) + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + // GetTempFilePath automatically creates the file, which interferes with the test. + File.Delete(TempFilePath); + var task = new GenerateStaticWebAssetsManifest + { + BuildEngine = buildEngine.Object, + Assets = new[] + { + first.ToTaskItem(), + second.ToTaskItem() + }, + Endpoints = Array.Empty(), + ReferencedProjectsConfigurations = Array.Empty(), + DiscoveryPatterns = Array.Empty(), + BasePath = "/", + Source = "MyProject", + ManifestType = "Build", + Mode = "Default", + ManifestPath = TempFilePath, + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(false); + } + + + [Fact] + public void GeneratesManifestWithReferencedProjectConfigurations() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + // GetTempFilePath automatically creates the file, which interferes with the test. + File.Delete(TempFilePath); + var projectReference = CreateProjectReferenceConfiguration(2, "Other"); + var task = new GenerateStaticWebAssetsManifest + { + BuildEngine = buildEngine.Object, + Assets = Array.Empty(), + Endpoints = Array.Empty(), + ReferencedProjectsConfigurations = new[] { projectReference.ToTaskItem() }, + DiscoveryPatterns = Array.Empty(), + BasePath = "/", + Source = "MyProject", + ManifestType = "Build", + Mode = "Default", + ManifestPath = TempFilePath, + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var manifest = StaticWebAssetsManifest.FromJsonString(File.ReadAllText(TempFilePath)); + manifest.Should().NotBeNull(); + manifest.ReferencedProjectsConfiguration.Should().HaveCount(1); + var newProjectConfig = manifest.ReferencedProjectsConfiguration[0]; + newProjectConfig.Should().Be(projectReference); + } + + [Fact] + public void GeneratesManifestWithDiscoveryPatterns() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + // GetTempFilePath automatically creates the file, which interferes with the test. + File.Delete(TempFilePath); + + var candidatePattern = CreatePatternCandidate(Path.Combine("MyProject", "wwwroot"), "base", "wwwroot/**", "MyProject"); + var task = new GenerateStaticWebAssetsManifest + { + BuildEngine = buildEngine.Object, + Assets = Array.Empty(), + Endpoints = Array.Empty(), + ReferencedProjectsConfigurations = Array.Empty(), + DiscoveryPatterns = new[] { candidatePattern.ToTaskItem() }, + BasePath = "/", + Source = "MyProject", + ManifestType = "Build", + Mode = "Default", + ManifestPath = TempFilePath, + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var manifest = StaticWebAssetsManifest.FromJsonString(File.ReadAllText(TempFilePath)); + manifest.Should().NotBeNull(); + manifest.DiscoveryPatterns.Should().HaveCount(1); + var newProjectConfig = manifest.DiscoveryPatterns[0]; + newProjectConfig.Should().Be(candidatePattern); + } + + private static StaticWebAssetsManifest.ReferencedProjectConfiguration CreateProjectReferenceConfiguration( + int version, + string source, + string publishTargets = "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + string additionalPublishProperties = ";", + string additionalPublishPropertiesToRemove = ";WebPublishProfileFile", + string buildTargets = "GetCurrentProjectBuildStaticWebAssetItems", + string additionalBuildProperties = ";", + string additionalBuildPropertiesToRemove = ";WebPublishProfileFile") + { + var result = new StaticWebAssetsManifest.ReferencedProjectConfiguration + { + Identity = Path.GetFullPath(Path.Combine(Directory.GetCurrentDirectory(), $"{source}.csproj")), + Version = version, + Source = source, + GetPublishAssetsTargets = publishTargets, + AdditionalPublishProperties = additionalPublishProperties, + AdditionalPublishPropertiesToRemove = additionalPublishPropertiesToRemove, + GetBuildAssetsTargets = buildTargets, + AdditionalBuildProperties = additionalBuildProperties, + AdditionalBuildPropertiesToRemove = additionalBuildPropertiesToRemove + }; + + return result; + } + + private static StaticWebAsset CreateAsset( + string itemSpec, + string sourceId, + string sourceType, + string relativePath, + string assetKind, + string assetMode, + string basePath = "base", + string assetRole = "Primary", + string relatedAsset = "", + string assetTraitName = "", + string assetTraitValue = "", + string copyToOutputDirectory = "Never", + string copytToPublishDirectory = "PreserveNewest") + { + var result = new StaticWebAsset() + { + Identity = Path.GetFullPath(itemSpec), + SourceId = sourceId, + SourceType = sourceType, + ContentRoot = Directory.GetCurrentDirectory(), + BasePath = basePath, + RelativePath = relativePath, + AssetKind = assetKind, + AssetMode = assetMode, + AssetRole = assetRole, + AssetMergeBehavior = StaticWebAsset.MergeBehaviors.PreferTarget, + AssetMergeSource = "", + RelatedAsset = relatedAsset, + AssetTraitName = assetTraitName, + AssetTraitValue = assetTraitValue, + CopyToOutputDirectory = copyToOutputDirectory, + CopyToPublishDirectory = copytToPublishDirectory, + OriginalItemSpec = itemSpec, + // Add these to avoid accessing the disk to compute them + Integrity = "integrity", + Fingerprint = "fingerprint", + LastWriteTime = new DateTimeOffset(2023, 10, 1, 0, 0, 0, TimeSpan.Zero), + FileLength = 10, + }; + + result.ApplyDefaults(); + result.Normalize(); + + return result; + } + + private static StaticWebAssetsDiscoveryPattern CreatePatternCandidate( + string name, + string basePath, + string pattern, + string source) + { + var result = new StaticWebAssetsDiscoveryPattern() + { + Name = name, + BasePath = basePath, + ContentRoot = Directory.GetCurrentDirectory(), + Pattern = pattern, + Source = source + }; + + return result; + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetsPropsFileTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetsPropsFileTest.cs new file mode 100644 index 000000000000..4e083a3d64b7 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateStaticWebAssetsPropsFileTest.cs @@ -0,0 +1,526 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; +using NuGet.Packaging.Core; + +namespace Microsoft.NET.Sdk.Razor.Test +{ + public class GenerateStaticWebAssetsPropsFileTest + { + [Fact] + public void Fails_WhenStaticWebAsset_DoesNotContainSourceType() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new GenerateStaticWebAssetsPropsFile + { + BuildEngine = buildEngine.Object, + StaticWebAssets = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary + { + ["SourceId"] = "MyLibrary", + ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", + ["BasePath"] = "_content/mylibrary", + ["RelativePath"] = Path.Combine("js", "sample.js"), + }) + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeFalse(); + var expectedError = $"Missing required metadata 'SourceType' for '{Path.Combine("wwwroot", "js", "sample.js")}'."; + errorMessages.Should().ContainSingle(message => message == expectedError); + } + + [Fact] + public void Fails_WhenStaticWebAsset_DoesNotContainSourceId() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new GenerateStaticWebAssetsPropsFile + { + BuildEngine = buildEngine.Object, + StaticWebAssets = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary + { + ["SourceType"] = "Discovered", + ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", + ["BasePath"] = "_content/mylibrary", + ["RelativePath"] = Path.Combine("js", "sample.js"), + }) + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeFalse(); + var expectedError = $"Missing required metadata 'SourceId' for '{Path.Combine("wwwroot", "js", "sample.js")}'."; + errorMessages.Should().ContainSingle(message => message == expectedError); + } + + [Fact] + public void Fails_WhenStaticWebAsset_DoesNotContainContentRoot() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new GenerateStaticWebAssetsPropsFile + { + BuildEngine = buildEngine.Object, + StaticWebAssets = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary + { + ["SourceType"] = "Discovered", + ["SourceId"] = "MyLibrary", + ["BasePath"] = "_content/mylibrary", + ["RelativePath"] = Path.Combine("js", "sample.js"), + }) + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeFalse(); + var expectedError = $"Missing required metadata 'ContentRoot' for '{Path.Combine("wwwroot", "js", "sample.js")}'."; + errorMessages.Should().ContainSingle(message => message == expectedError); + } + + [Fact] + public void Fails_WhenStaticWebAsset_DoesNotContainBasePath() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new GenerateStaticWebAssetsPropsFile + { + BuildEngine = buildEngine.Object, + StaticWebAssets = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary + { + ["SourceType"] = "Discovered", + ["SourceId"] = "MyLibrary", + ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", + ["RelativePath"] = Path.Combine("js", "sample.js"), + }) + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeFalse(); + var expectedError = $"Missing required metadata 'BasePath' for '{Path.Combine("wwwroot", "js", "sample.js")}'."; + errorMessages.Should().ContainSingle(message => message == expectedError); + } + + [Fact] + public void Fails_WhenStaticWebAsset_DoesNotContainRelativePath() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new GenerateStaticWebAssetsPropsFile + { + BuildEngine = buildEngine.Object, + StaticWebAssets = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary + { + ["SourceType"] = "Discovered", + ["SourceId"] = "MyLibrary", + ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", + ["BasePath"] = "_content/mylibrary", + ["AssetKind"] = "All", + ["AssetMode"] = "All", + ["AssetRole"] = "Primary", + ["RelatedAsset"] = "", + ["AssetTraitName"] = "", + ["AssetTraitValue"] = "", + ["CopyToOutputDirectory"] = "Never", + ["CopyToPublishDirectory"] = "PreserveNewest" + }) + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeFalse(); + var expectedError = $"Missing required metadata 'RelativePath' for '{Path.Combine("wwwroot", "js", "sample.js")}'."; + errorMessages.Should().ContainSingle(message => message == expectedError); + } + + [Fact] + public void Fails_WhenStaticWebAsset_HasInvalidSourceType() + { + // Arrange + + var expectedError = $"Static web asset '{Path.Combine("wwwroot", "css", "site.css")}' has invalid source type 'Package'."; + + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new GenerateStaticWebAssetsPropsFile + { + BuildEngine = buildEngine.Object, + StaticWebAssets = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary + { + ["SourceType"] = "Discovered", + ["SourceId"] = "MyLibrary", + ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", + ["BasePath"] = "_content/mylibrary", + ["RelativePath"] = Path.Combine("js", "sample.js"), + ["AssetKind"] = "All", + ["AssetMode"] = "All", + ["AssetRole"] = "Primary", + ["RelatedAsset"] = "", + ["AssetTraitName"] = "", + ["AssetTraitValue"] = "", + ["CopyToOutputDirectory"] = "Never", + ["CopyToPublishDirectory"] = "PreserveNewest" + }), + CreateItem(Path.Combine("wwwroot","css","site.css"), new Dictionary + { + ["SourceType"] = "Package", + ["SourceId"] = "MyLibrary", + ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", + ["BasePath"] = "_content/mylibrary", + ["RelativePath"] = Path.Combine("css", "site.css"), + ["AssetKind"] = "All", + ["AssetMode"] = "All", + ["AssetRole"] = "Primary", + ["RelatedAsset"] = "", + ["AssetTraitName"] = "", + ["AssetTraitValue"] = "", + ["CopyToOutputDirectory"] = "Never", + ["CopyToPublishDirectory"] = "PreserveNewest" + }) + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeFalse(); + errorMessages.Should().ContainSingle(message => message == expectedError); + } + + [Fact] + public void Fails_WhenStaticWebAsset_HaveDifferentSourceId() + { + // Arrange + var expectedError = "Static web assets have different 'SourceId' metadata values " + + "'MyLibrary' and 'MyLibrary2' " + + $"for '{Path.Combine("wwwroot", "js", "sample.js")}' and '{Path.Combine("wwwroot", "css", "site.css")}'."; + + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new GenerateStaticWebAssetsPropsFile + { + BuildEngine = buildEngine.Object, + StaticWebAssets = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary + { + ["SourceType"] = "Discovered", + ["SourceId"] = "MyLibrary", + ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", + ["BasePath"] = "_content/mylibrary", + ["RelativePath"] = Path.Combine("js", "sample.js"), + ["AssetKind"] = "All", + ["AssetMode"] = "All", + ["AssetRole"] = "Primary", + ["RelatedAsset"] = "", + ["AssetTraitName"] = "", + ["AssetTraitValue"] = "", + ["CopyToOutputDirectory"] = "Never", + ["CopyToPublishDirectory"] = "PreserveNewest" + }), + CreateItem(Path.Combine("wwwroot","css","site.css"), new Dictionary + { + ["SourceType"] = "Discovered", + ["SourceId"] = "MyLibrary2", + ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", + ["BasePath"] = "_content/mylibrary", + ["RelativePath"] = Path.Combine("css", "site.css"), + ["AssetKind"] = "All", + ["AssetMode"] = "All", + ["AssetRole"] = "Primary", + ["RelatedAsset"] = "", + ["AssetTraitName"] = "", + ["AssetTraitValue"] = "", + ["CopyToOutputDirectory"] = "Never", + ["CopyToPublishDirectory"] = "PreserveNewest" + }) + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeFalse(); + errorMessages.Should().ContainSingle(message => message == expectedError); + } + + [Fact] + public void WritesPropsFile_WhenThereIsAtLeastOneStaticAsset() + { + // Arrange + var file = Path.GetTempFileName(); + var expectedDocument = @" + + + Package + MyLibrary + $(MSBuildThisFileDirectory)..\staticwebassets\ + _content/mylibrary + js/sample.js + All + All + Primary + + + + sample-fingerprint + sample-integrity + Never + PreserveNewest + 10 + Thu, 15 Nov 1990 00:00:00 GMT + $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..\staticwebassets\js\sample.js')) + + +"; + + try + { + var buildEngine = new Mock(); + + var task = new GenerateStaticWebAssetsPropsFile + { + BuildEngine = buildEngine.Object, + TargetPropsFilePath = file, + StaticWebAssets = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary + { + ["SourceType"] = "Discovered", + ["SourceId"] = "MyLibrary", + ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", + ["BasePath"] = "_content/mylibrary", + ["RelativePath"] = Path.Combine("js", "sample.js").Replace("\\","/"), + ["AssetKind"] = "All", + ["AssetMode"] = "All", + ["AssetRole"] = "Primary", + ["RelatedAsset"] = "", + ["AssetTraitName"] = "", + ["AssetTraitValue"] = "", + ["Fingerprint"] = "sample-fingerprint", + ["Integrity"] = "sample-integrity", + ["OriginalItemSpec"] = Path.Combine("wwwroot","js","sample.js"), + ["CopyToOutputDirectory"] = "Never", + ["CopyToPublishDirectory"] = "PreserveNewest", + ["FileLength"] = "10", + ["LastWriteTime"] = new DateTimeOffset(new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc)).ToString(StaticWebAsset.DateTimeAssetFormat) + }), + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeTrue(); + var document = File.ReadAllText(file); + document.Should().Contain(expectedDocument); + } + finally + { + if (File.Exists(file)) + { + File.Delete(file); + } + } + } + + [Fact] + public void WritesIndividualItems_WithTheirRespectiveBaseAndRelativePaths() + { + // Arrange + var file = Path.GetTempFileName(); + var expectedDocument = @" + + + Package + MyLibrary + $(MSBuildThisFileDirectory)..\staticwebassets\ + / + App.styles.css + All + All + Primary + + + + styles-fingerprint + styles-integrity + Never + PreserveNewest + 10 + Thu, 15 Nov 1990 00:00:00 GMT + $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..\staticwebassets\App.styles.css')) + + + Package + MyLibrary + $(MSBuildThisFileDirectory)..\staticwebassets\ + _content/mylibrary + js/sample.js + All + All + Primary + + + + sample-fingerprint + sample-integrity + Never + PreserveNewest + 10 + Thu, 15 Nov 1990 00:00:00 GMT + $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..\staticwebassets\js\sample.js')) + + +"; + + try + { + var buildEngine = new Mock(); + + var task = new GenerateStaticWebAssetsPropsFile + { + BuildEngine = buildEngine.Object, + TargetPropsFilePath = file, + StaticWebAssets = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary + { + ["SourceType"] = "Discovered", + ["SourceId"] = "MyLibrary", + ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", + ["BasePath"] = "_content/mylibrary", + ["RelativePath"] = Path.Combine("js", "sample.js").Replace("\\","/"), + ["AssetKind"] = "All", + ["AssetMode"] = "All", + ["AssetRole"] = "Primary", + ["RelatedAsset"] = "", + ["AssetTraitName"] = "", + ["AssetTraitValue"] = "", + ["OriginalItemSpec"] = Path.Combine("wwwroot","js","sample.js"), + ["Fingerprint"] = "sample-fingerprint", + ["Integrity"] = "sample-integrity", + ["CopyToOutputDirectory"] = "Never", + ["CopyToPublishDirectory"] = "PreserveNewest", + ["FileLength"] = "10", + ["LastWriteTime"] = new DateTimeOffset(new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc)).ToString(StaticWebAsset.DateTimeAssetFormat) + }), + CreateItem(Path.Combine("wwwroot","App.styles.css"), new Dictionary + { + ["SourceType"] = "Discovered", + ["SourceId"] = "MyLibrary", + ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", + ["BasePath"] = "/", + ["RelativePath"] = "App.styles.css", + ["AssetKind"] = "All", + ["AssetMode"] = "All", + ["AssetRole"] = "Primary", + ["RelatedAsset"] = "", + ["AssetTraitName"] = "", + ["AssetTraitValue"] = "", + ["OriginalItemSpec"] = Path.Combine("wwwroot","App.styles.css"), + ["Fingerprint"] = "styles-fingerprint", + ["Integrity"] = "styles-integrity", + ["CopyToOutputDirectory"] = "Never", + ["CopyToPublishDirectory"] = "PreserveNewest", + ["FileLength"] = "10", + ["LastWriteTime"] = new DateTimeOffset(new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc)).ToString(StaticWebAsset.DateTimeAssetFormat) + }), + } + }; + + // Act + var result = task.Execute(); + + // Assert + Assert.True(result); + var document = File.ReadAllText(file); + Assert.Equal(expectedDocument, document, ignoreLineEndingDifferences: true); + } + finally + { + if (File.Exists(file)) + { + File.Delete(file); + } + } + } + + private static TaskItem CreateItem( + string spec, + IDictionary metadata) + { + var result = new TaskItem(spec); + foreach (var (key, value) in metadata) + { + result.SetMetadata(key, value); + } + + return result; + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateV1StaticWebAssetsManifestTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateV1StaticWebAssetsManifestTest.cs new file mode 100644 index 000000000000..cf209c460cc0 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/GenerateV1StaticWebAssetsManifestTest.cs @@ -0,0 +1,273 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; + +namespace Microsoft.NET.Sdk.Razor.Test +{ + public class GenerateV1StaticWebAssetsManifestTest + { + [Fact] + public void ReturnsError_WhenBasePathIsMissing() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new GenerateV1StaticWebAssetsManifest + { + BuildEngine = buildEngine.Object, + ContentRootDefinitions = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot", "sample.js"), new Dictionary + { + ["ContentRoot"] = "/" + }) + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeFalse(); + var expectedError = $"Missing required metadata 'BasePath' for '{Path.Combine("wwwroot", "sample.js")}'."; + errorMessages.Should().ContainSingle(message => message == expectedError); + } + + [Fact] + public void ReturnsError_WhenContentRootIsMissing() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new GenerateV1StaticWebAssetsManifest + { + BuildEngine = buildEngine.Object, + ContentRootDefinitions = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","sample.js"), new Dictionary + { + ["BasePath"] = "MyLibrary" + }) + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeFalse(); + var expectedError = $"Missing required metadata 'ContentRoot' for '{Path.Combine("wwwroot", "sample.js")}'."; + errorMessages.Should().ContainSingle(message => message == expectedError); + } + + [Fact] + public void AllowsMultipleContentRootsWithSameBasePath_ForTheSameSourceId() + { + // Arrange + var file = Path.GetTempFileName(); + var expectedDocument = $@" + + +"; + + var buildEngine = new Mock(); + + var task = new GenerateV1StaticWebAssetsManifest + { + BuildEngine = buildEngine.Object, + ContentRootDefinitions = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","sample.js"), new Dictionary + { + ["BasePath"] = "Blazor.Client", + ["ContentRoot"] = Path.Combine(".", "nuget","Blazor.Client"), + ["SourceId"] = "Blazor.Client" + }), + CreateItem(Path.Combine("wwwroot", "otherLib.js"), new Dictionary + { + ["BasePath"] = "Blazor.Client", + ["ContentRoot"] = Path.Combine(".", "nuget", "bin","debug","netstandard2.1"), + ["SourceId"] = "Blazor.Client" + }) + }, + TargetManifestPath = file + }; + + try + { + // Act + var result = task.Execute(); + + // Assert + result.Should().BeTrue(); + var document = File.ReadAllText(file); + document.Should().Contain(expectedDocument); + } + finally + { + if (File.Exists(file)) + { + File.Delete(file); + } + } + } + + [Fact] + public void Generates_EmptyManifest_WhenNoItems_Passed() + { + // Arrange + var file = Path.GetTempFileName(); + var expectedDocument = @""; + + try + { + var buildEngine = new Mock(); + + var task = new GenerateV1StaticWebAssetsManifest + { + BuildEngine = buildEngine.Object, + ContentRootDefinitions = new TaskItem[] { }, + TargetManifestPath = file + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeTrue(); + var document = File.ReadAllText(file); + document.Should().Contain(expectedDocument); + } + finally + { + if (File.Exists(file)) + { + File.Delete(file); + } + } + } + + [Fact] + public void Generates_Manifest_WhenContentRootsAvailable() + { + // Arrange + var file = Path.GetTempFileName(); + var expectedDocument = $@" + +"; + + try + { + var buildEngine = new Mock(); + + var task = new GenerateV1StaticWebAssetsManifest + { + BuildEngine = buildEngine.Object, + ContentRootDefinitions = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","sample.js"), new Dictionary + { + ["BasePath"] = "MyLibrary", + ["ContentRoot"] = Path.Combine(".", "nuget", "MyLibrary", "razorContent"), + ["SourceId"] = "MyLibrary" + }), + }, + TargetManifestPath = file + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeTrue(); + var document = File.ReadAllText(file); + document.Should().Contain(expectedDocument); + } + finally + { + if (File.Exists(file)) + { + File.Delete(file); + } + } + } + + [Fact] + public void SkipsAdditionalElements_WithSameBasePathAndSameContentRoot() + { + // Arrange + var file = Path.GetTempFileName(); + var expectedDocument = $@" + +"; + + try + { + var buildEngine = new Mock(); + + var task = new GenerateV1StaticWebAssetsManifest + { + BuildEngine = buildEngine.Object, + ContentRootDefinitions = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","sample.js"), new Dictionary + { + // Base path needs to be normalized to '/' as it goes in the url + ["BasePath"] = "Base\\MyLibrary", + ["SourceId"] = "MyLibrary", + ["ContentRoot"] = Path.Combine(".", "nuget", "MyLibrary", "razorContent") + }), + // Comparisons are case insensitive + CreateItem(Path.Combine("wwwroot, site.css"), new Dictionary + { + ["BasePath"] = "Base\\MyLIBRARY", + ["SourceId"] = "MyLibrary", + ["ContentRoot"] = Path.Combine(".", "nuget", "MyLIBRARY", "razorContent") + }), + }, + TargetManifestPath = file + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeTrue(); + var document = File.ReadAllText(file); + document.Should().Contain(expectedDocument); + } + finally + { + if (File.Exists(file)) + { + File.Delete(file); + } + } + } + + private static TaskItem CreateItem( + string spec, + IDictionary metadata) + { + var result = new TaskItem(spec); + foreach (var (key, value) in metadata) + { + result.SetMetadata(key, value); + } + + return result; + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/Globbing/PathTokenizerTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/Globbing/PathTokenizerTest.cs new file mode 100644 index 000000000000..ed77b13265c1 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/Globbing/PathTokenizerTest.cs @@ -0,0 +1,133 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Microsoft.AspNetCore.StaticWebAssets.Tasks.Test; + +public class PathTokenizerTest +{ + [Fact] + public void RootSeparator_ProducesEmptySegment() + { + var path = "/a/b/c"; + var tokenizer = new PathTokenizer(path.AsMemory().Span); + var segments = new List(); + var collection = tokenizer.Fill(segments); + Assert.Equal("a", collection[0]); + Assert.Equal("b", collection[1]); + Assert.Equal("c", collection[2]); + } + + [Fact] + public void NonRootSeparator_ProducesInitialSegment() + { + var path = "a/b/c"; + var tokenizer = new PathTokenizer(path.AsMemory().Span); + var segments = new List(); + var collection = tokenizer.Fill(segments); + Assert.Equal("a", collection[0]); + Assert.Equal("b", collection[1]); + Assert.Equal("c", collection[2]); + } + + [Fact] + public void NonRootSeparator_MatchesMultipleCharacters() + { + var path = "aa/b/c"; + var tokenizer = new PathTokenizer(path.AsMemory().Span); + var segments = new List(); + var collection = tokenizer.Fill(segments); + Assert.Equal("aa", collection[0]); + Assert.Equal("b", collection[1]); + Assert.Equal("c", collection[2]); + } + + [Fact] + public void NonRootSeparator_HandlesConsecutivePathSeparators() + { + var path = "aa//b/c"; + var tokenizer = new PathTokenizer(path.AsMemory().Span); + var segments = new List(); + var collection = tokenizer.Fill(segments); + Assert.Equal("aa", collection[0]); + Assert.Equal("b", collection[1]); + Assert.Equal("c", collection[2]); + } + + [Fact] + public void NonRootSeparator_HandlesFinalPathSeparator() + { + var path = "aa/b/c/"; + var tokenizer = new PathTokenizer(path.AsMemory().Span); + var segments = new List(); + var collection = tokenizer.Fill(segments); + Assert.Equal("aa", collection[0]); + Assert.Equal("b", collection[1]); + Assert.Equal("c", collection[2]); + } + + [Fact] + public void NonRootSeparator_HandlesAlternativePathSeparators() + { + var path = "aa\\b\\c\\"; + var tokenizer = new PathTokenizer(path.AsMemory().Span); + var segments = new List(); + var collection = tokenizer.Fill(segments); + Assert.Equal("aa", collection[0]); + Assert.Equal("b", collection[1]); + Assert.Equal("c", collection[2]); + } + + [Fact] + public void NonRootSeparator_HandlesMixedPathSeparators() + { + var path = "aa/b\\c/"; + var tokenizer = new PathTokenizer(path.AsMemory().Span); + var segments = new List(); + var collection = tokenizer.Fill(segments); + Assert.Equal("aa", collection[0]); + Assert.Equal("b", collection[1]); + Assert.Equal("c", collection[2]); + } + + [Fact] + public void Ignores_EmpySegments() + { + var path = "aa//b//c"; + var tokenizer = new PathTokenizer(path.AsMemory().Span); + var segments = new List(); + var collection = tokenizer.Fill(segments); + Assert.Equal("aa", collection[0]); + Assert.Equal("b", collection[1]); + Assert.Equal("c", collection[2]); + } + + [Fact] + public void Ignores_DotSegments() + { + var path = "./aa/./b/./c/."; + var tokenizer = new PathTokenizer(path.AsMemory().Span); + var segments = new List(); + var collection = tokenizer.Fill(segments); + Assert.Equal("aa", collection[0]); + Assert.Equal("b", collection[1]); + Assert.Equal("c", collection[2]); + } + + [Fact] + public void Ignores_DotDotSegments() + { + var path = "../aa/../b/../c/.."; + var tokenizer = new PathTokenizer(path.AsMemory().Span); + var segments = new List(); + var collection = tokenizer.Fill(segments); + Assert.Equal("aa", collection[0]); + Assert.Equal("b", collection[1]); + Assert.Equal("c", collection[2]); + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.Compatibility.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.Compatibility.cs new file mode 100644 index 000000000000..f68ea9169c4f --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.Compatibility.cs @@ -0,0 +1,302 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +namespace Microsoft.AspNetCore.StaticWebAssets.Tasks.Test; + +public partial class StaticWebAssetGlobMatcherTest +{ + [Fact] + public void MatchingFileIsFound() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("alpha.txt"); + var globMatcher = matcher.Build(); + + var match = globMatcher.Match("alpha.txt"); + Assert.True(match.IsMatch); + Assert.Equal("alpha.txt", match.Pattern); + } + + [Fact] + public void MismatchedFileIsIgnored() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("alpha.txt"); + var globMatcher = matcher.Build(); + + var match = globMatcher.Match("omega.txt"); + Assert.False(match.IsMatch); + } + + [Fact] + public void FolderNamesAreTraversed() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("beta/alpha.txt"); + var globMatcher = matcher.Build(); + + var match = globMatcher.Match("beta/alpha.txt"); + Assert.True(match.IsMatch); + Assert.Equal("beta/alpha.txt", match.Pattern); + } + + [Theory] + [InlineData(@"beta/alpha.txt", @"beta/alpha.txt")] + [InlineData(@"beta\alpha.txt", @"beta/alpha.txt")] + [InlineData(@"beta/alpha.txt", @"beta\alpha.txt")] + [InlineData(@"beta\alpha.txt", @"beta\alpha.txt")] + [InlineData(@"\beta\alpha.txt", @"beta/alpha.txt")] + public void SlashPolarityIsIgnored(string includePattern, string filePath) + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns(includePattern); + var globMatcher = matcher.Build(); + + var match = globMatcher.Match(filePath); + Assert.True(match.IsMatch); + //Assert.Equal("beta/alpha.txt", match.Pattern); + } + + [Theory] + [InlineData(@"alpha.*", new[] { "alpha.txt" })] + [InlineData(@"*", new[] { "alpha.txt", "beta.txt", "gamma.dat" })] + [InlineData(@"*et*", new[] { "beta.txt" })] + [InlineData(@"*.*", new[] { "alpha.txt", "beta.txt", "gamma.dat" })] + [InlineData(@"b*et*x", new string[0])] + [InlineData(@"*.txt", new[] { "alpha.txt", "beta.txt" })] + [InlineData(@"b*et*t", new[] { "beta.txt" })] + public void CanPatternMatch(string includes, string[] expected) + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns(includes); + var globMatcher = matcher.Build(); + + var matches = new List { "alpha.txt", "beta.txt", "gamma.dat" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(expected, matches); + } + + [Theory] + [InlineData(@"12345*5678", new string[0])] + [InlineData(@"1234*5678", new[] { "12345678" })] + [InlineData(@"12*23*", new string[0])] + [InlineData(@"12*3456*78", new[] { "12345678" })] + [InlineData(@"*45*56", new string[0])] + [InlineData(@"*67*78", new string[0])] + public void PatternBeginAndEndCantOverlap(string includes, string[] expected) + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns(includes); + var globMatcher = matcher.Build(); + + var matches = new List { "12345678" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(expected, matches); + } + + [Theory] + [InlineData(@"*alpha*/*", new[] { "alpha/hello.txt" })] + [InlineData(@"/*/*", new[] { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" })] + [InlineData(@"*/*", new[] { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" })] + [InlineData(@"/*.*/*", new string[] { })] + [InlineData(@"*.*/*", new string[] { })] + [InlineData(@"/*mm*/*", new[] { "gamma/hello.txt" })] + [InlineData(@"*mm*/*", new[] { "gamma/hello.txt" })] + [InlineData(@"/*alpha*/*", new[] { "alpha/hello.txt" })] + public void PatternMatchingWorksInFolders(string includes, string[] expected) + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns(includes); + var globMatcher = matcher.Build(); + + var matches = new List { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(expected, matches); + } + + [Theory] + [InlineData(@"", new string[] { })] + [InlineData(@"./", new string[] { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" })] + [InlineData(@"./alpha/hello.txt", new string[] { "alpha/hello.txt" })] + [InlineData(@"./**/hello.txt", new string[] { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" })] + [InlineData(@"././**/hello.txt", new string[] { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" })] + [InlineData(@"././**/./hello.txt", new string[] { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" })] + [InlineData(@"././**/./**/hello.txt", new string[] { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" })] + [InlineData(@"./*mm*/hello.txt", new string[] { "gamma/hello.txt" })] + [InlineData(@"./*mm*/*", new string[] { "gamma/hello.txt" })] + public void PatternMatchingCurrent(string includePattern, string[] matchesExpected) + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns(includePattern); + var globMatcher = matcher.Build(); + + var matches = new List { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(matchesExpected, matches); + } + + [Fact] + public void StarDotStarIsSameAsStar() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("*.*"); + var globMatcher = matcher.Build(); + + var matches = new List { "alpha.txt", "alpha.", ".txt", ".", "alpha", "txt" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(new[] { "alpha.txt", "alpha.", ".txt" }, matches); + } + + [Fact] + public void IncompletePatternsDoNotInclude() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("*/*.txt"); + var globMatcher = matcher.Build(); + + var matches = new List { "one/x.txt", "two/x.txt", "x.txt" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(new[] { "one/x.txt", "two/x.txt" }, matches); + } + + [Fact] + public void IncompletePatternsDoNotExclude() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("*/*.txt"); + matcher.AddExcludePatterns("one/hello.txt"); + var globMatcher = matcher.Build(); + + var matches = new List { "one/x.txt", "two/x.txt" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(new[] { "one/x.txt", "two/x.txt" }, matches); + } + + [Fact] + public void TrailingRecursiveWildcardMatchesAllFiles() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("one/**"); + var globMatcher = matcher.Build(); + + var matches = new List { "one/x.txt", "two/x.txt", "one/x/y.txt" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(new[] { "one/x.txt", "one/x/y.txt" }, matches); + } + + [Fact] + public void LeadingRecursiveWildcardMatchesAllLeadingPaths() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("**/*.cs"); + var globMatcher = matcher.Build(); + + var matches = new List { "one/x.cs", "two/x.cs", "one/two/x.cs", "x.cs", "one/x.txt", "two/x.txt", "one/two/x.txt", "x.txt" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(new[] { "one/x.cs", "two/x.cs", "one/two/x.cs", "x.cs" }, matches); + } + + [Fact] + public void InnerRecursiveWildcardMustStartWithAndEndWith() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("one/**/*.cs"); + var globMatcher = matcher.Build(); + + var matches = new List { "one/x.cs", "two/x.cs", "one/two/x.cs", "x.cs", "one/x.txt", "two/x.txt", "one/two/x.txt", "x.txt" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(new[] { "one/x.cs", "one/two/x.cs" }, matches); + } + + [Fact] + public void ExcludeMayEndInDirectoryName() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("*.cs", "*/*.cs", "*/*/*.cs"); + matcher.AddExcludePatterns("bin/", "one/two/"); + var globMatcher = matcher.Build(); + + var matches = new List { "one/x.cs", "two/x.cs", "one/two/x.cs", "x.cs", "bin/x.cs", "bin/two/x.cs" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(new[] { "one/x.cs", "two/x.cs", "x.cs" }, matches); + } + + [Fact] + public void RecursiveWildcardSurroundingContainsWith() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("**/x/**"); + var globMatcher = matcher.Build(); + + var matches = new List { "x/1", "1/x/2", "1/x", "x", "1", "1/2" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(new[] { "x/1", "1/x/2", "1/x", "x" }, matches); + } + + [Fact] + public void SequentialFoldersMayBeRequired() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("a/b/**/1/2/**/2/3/**"); + var globMatcher = matcher.Build(); + + var matches = new List { "1/2/2/3/x", "1/2/3/y", "a/1/2/4/2/3/b", "a/2/3/1/2/b", "a/b/1/2/2/3/x", "a/b/1/2/3/y", "a/b/a/1/2/4/2/3/b", "a/b/a/2/3/1/2/b" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(new[] { "a/b/1/2/2/3/x", "a/b/a/1/2/4/2/3/b" }, matches); + } + + [Fact] + public void RecursiveAloneIncludesEverything() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("**"); + var globMatcher = matcher.Build(); + + var matches = new List { "1/2/2/3/x", "1/2/3/y" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(new[] { "1/2/2/3/x", "1/2/3/y" }, matches); + } + + [Fact] + public void ExcludeCanHaveSurroundingRecursiveWildcards() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("**"); + matcher.AddExcludePatterns("**/x/**"); + var globMatcher = matcher.Build(); + + var matches = new List { "x/1", "1/x/2", "1/x", "x", "1", "1/2" } + .Where(file => globMatcher.Match(file).IsMatch) + .ToArray(); + + Assert.Equal(new[] { "1", "1/2" }, matches); + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.cs new file mode 100644 index 000000000000..f8061c5d6ba1 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.cs @@ -0,0 +1,388 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Microsoft.AspNetCore.StaticWebAssets.Tasks.Test; + +// Set of things to test: +// Literals 'a' +// Multiple literals 'a/b' +// Extensions '*.a' +// Longer extensions first '*.a', '*.b.a' +// Extensions at the beginning '*.a/b' +// Extensions at the end 'a/*.b' +// Extensions in the middle 'a/*.b/c' +// Wildcard '*' +// Wildcard at the beginning '*/a' +// Wildcard at the end 'a/*' +// Wildcard in the middle 'a/*/c' +// Recursive wildcard '**' +// Recursive wildcard at the beginning '**/a' +// Recursive wildcard at the end 'a/**' +// Recursive wildcard in the middle 'a/**/c' +public partial class StaticWebAssetGlobMatcherTest +{ + [Fact] + public void CanMatchLiterals() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("a"); + var globMatcher = matcher.Build(); + + var match = globMatcher.Match("a"); + Assert.True(match.IsMatch); + Assert.Equal("a", match.Pattern); + Assert.Equal("a", match.Stem); + } + + [Fact] + public void CanMatchMultipleLiterals() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("a/b"); + var globMatcher = matcher.Build(); + + var match = globMatcher.Match("a/b"); + Assert.True(match.IsMatch); + Assert.Equal("a/b", match.Pattern); + Assert.Equal("b", match.Stem); + } + + [Fact] + public void CanMatchExtensions() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("*.a"); + var globMatcher = matcher.Build(); + var match = globMatcher.Match("a.a"); + Assert.True(match.IsMatch); + Assert.Equal("*.a", match.Pattern); + Assert.Equal("a.a", match.Stem); + } + + [Fact] + public void MatchesLongerExtensionsFirst() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("*.a", "*.b.a"); + var globMatcher = matcher.Build(); + var match = globMatcher.Match("c.b.a"); + Assert.True(match.IsMatch); + Assert.Equal("*.b.a", match.Pattern); + Assert.Equal("c.b.a", match.Stem); + } + + [Fact] + public void CanMatchExtensionsAtTheBeginning() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("*.a/b"); + var globMatcher = matcher.Build(); + var match = globMatcher.Match("c.a/b"); + Assert.True(match.IsMatch); + Assert.Equal("*.a/b", match.Pattern); + Assert.Equal("b", match.Stem); + } + + [Fact] + public void CanMatchExtensionsAtTheEnd() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("a/*.b"); + var globMatcher = matcher.Build(); + var match = globMatcher.Match("a/c.b"); + Assert.True(match.IsMatch); + Assert.Equal("a/*.b", match.Pattern); + Assert.Equal("c.b", match.Stem); + } + + [Fact] + public void CanMatchExtensionsInMiddle() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("a/*.b/c"); + var globMatcher = matcher.Build(); + var match = globMatcher.Match("a/d.b/c"); + Assert.True(match.IsMatch); + Assert.Equal("a/*.b/c", match.Pattern); + Assert.Equal("c", match.Stem); + } + + [Theory] + [InlineData("a*")] + [InlineData("*a")] + [InlineData("?")] + [InlineData("*?")] + [InlineData("?*")] + [InlineData("**a")] + [InlineData("a**")] + [InlineData("**?")] + [InlineData("?**")] + public void CanMatchComplexSegments(string pattern) + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns(pattern); + var globMatcher = matcher.Build(); + var match = globMatcher.Match("a"); + Assert.True(match.IsMatch); + Assert.Equal(pattern, match.Pattern); + Assert.Equal("a", match.Stem); + } + + [Theory] + [InlineData("a?", "aa", true)] + [InlineData("a?", "a", false)] + [InlineData("a?", "aaa", false)] + [InlineData("?a", "aa", true)] + [InlineData("?a", "a", false)] + [InlineData("?a", "aaa", false)] + [InlineData("a?a", "aaa", true)] + [InlineData("a?a", "aba", true)] + [InlineData("a?a", "abaa", false)] + [InlineData("a?a", "ab", false)] + public void QuestionMarksMatchSingleCharacter(string pattern, string input, bool expectedMatchResult) + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns(pattern); + var globMatcher = matcher.Build(); + var match = globMatcher.Match(input); + Assert.Equal(expectedMatchResult, match.IsMatch); + if(expectedMatchResult) + { + Assert.Equal(pattern, match.Pattern); + Assert.Equal(input, match.Stem); + } + else + { + Assert.Null(match.Pattern); + Assert.Null(match.Stem); + } + } + + [Theory] + [InlineData("a??", "aaa", true)] + [InlineData("a??", "aa", false)] + [InlineData("a??", "aaaa", false)] + [InlineData("?a?", "aaa", true)] + [InlineData("?a?", "aa", false)] + [InlineData("?a?", "aaaa", false)] + [InlineData("??a", "aaa", true)] + [InlineData("??a", "aa", false)] + [InlineData("??a", "aaaa", false)] + [InlineData("a??a", "aaaa", true)] + [InlineData("a??a", "aaba", true)] + [InlineData("a??a", "aabaa", false)] + [InlineData("a??a", "aba", false)] + public void MultipleQuestionMarksMatchExactlyTheNumberOfCharacters(string pattern, string input, bool expectedMatchResult) + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns(pattern); + var globMatcher = matcher.Build(); + var match = globMatcher.Match(input); + Assert.Equal(expectedMatchResult, match.IsMatch); + if (expectedMatchResult) + { + Assert.Equal(pattern, match.Pattern); + Assert.Equal(input, match.Stem); + } + else + { + Assert.Null(match.Pattern); + Assert.Null(match.Stem); + } + } + + [Theory] + [InlineData("a*", "a", true)] + [InlineData("a*", "aa", true)] + [InlineData("a*", "aaa", true)] + [InlineData("a*", "aaaa", true)] + [InlineData("a*", "aaaaa", true)] + [InlineData("a*", "aaaaaa", true)] + [InlineData("*a", "a", true)] + [InlineData("*a", "aa", true)] + [InlineData("*a", "aaa", true)] + [InlineData("*a", "aaaa", true)] + [InlineData("*a", "aaaaa", true)] + [InlineData("a*a", "a", false)] + [InlineData("a*a", "aa", true)] + [InlineData("a*a", "aaa", true)] + [InlineData("a*a", "aaaaa", true)] + [InlineData("a*a", "aaaaaa", true)] + [InlineData("a*a", "aba", true)] + [InlineData("a*a", "abaa", true)] + [InlineData("a*a", "abba", true)] + [InlineData("a*b", "ab", true)] + public void WildCardsMatchZeroOrMoreCharacters(string pattern, string input, bool expectedMatchResult) + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns(pattern); + var globMatcher = matcher.Build(); + var match = globMatcher.Match(input); + Assert.Equal(expectedMatchResult, match.IsMatch); + if (expectedMatchResult) + { + Assert.Equal(pattern, match.Pattern); + Assert.Equal(input, match.Stem); + } + else + { + Assert.Null(match.Pattern); + Assert.Null(match.Stem); + } + } + + [Theory] + [InlineData("*?a", "a", false)] + [InlineData("*?a", "aa", true)] + [InlineData("*?a", "aaa", true)] + [InlineData("*?a", "aaaa", true)] + [InlineData("*?a", "aaaaa", true)] + [InlineData("*?a", "aaaaaa", true)] + [InlineData("*??a", "aa", false)] + [InlineData("*??a", "aaa", true)] + [InlineData("*???a", "aaa", false)] + [InlineData("*???a", "aaaa", true)] + [InlineData("*????a", "aaaa", false)] + [InlineData("*????a", "aaaaa", true)] + [InlineData("*?????a", "aaaaa", false)] + [InlineData("*?????a", "aaaaaa", true)] + [InlineData("*??????a", "aaaaaa", false)] + [InlineData("*??????a", "aaaaaaa", true)] + [InlineData("a*?", "a", false)] + [InlineData("a*?", "aa", true)] + [InlineData("a*?", "aaa", true)] + [InlineData("a*?", "aaaa", true)] + [InlineData("a*?", "aaaaa", true)] + [InlineData("a*?", "aaaaaa", true)] + [InlineData("a*??", "aa", false)] + [InlineData("a*??", "aaa", true)] + [InlineData("a*???", "aaa", false)] + [InlineData("a*???", "aaaa", true)] + [InlineData("a*????", "aaaa", false)] + [InlineData("a*????", "aaaaa", true)] + [InlineData("a*?????", "aaaaa", false)] + [InlineData("a*?????", "aaaaaa", true)] + [InlineData("a*??????", "aaaaaa", false)] + [InlineData("a*??????", "aaaaaaa", true)] + + public void SingleWildcardPrecededOrSucceededByQuestionMarkRequireMinimumNumberOfCharacters(string pattern, string input, bool expectedMatchResult) + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns(pattern); + var globMatcher = matcher.Build(); + var match = globMatcher.Match(input); + Assert.Equal(expectedMatchResult, match.IsMatch); + if (expectedMatchResult) + { + Assert.Equal(pattern, match.Pattern); + Assert.Equal(input, match.Stem); + } + else + { + Assert.Null(match.Pattern); + Assert.Null(match.Stem); + } + } + + [Fact] + public void CanMatchWildCard() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("*"); + var globMatcher = matcher.Build(); + var match = globMatcher.Match("a"); + Assert.True(match.IsMatch); + Assert.Equal("*", match.Pattern); + Assert.Equal("a", match.Stem); + } + + [Fact] + public void CanMatchWildCardAtTheBeginning() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("*/a"); + var globMatcher = matcher.Build(); + var match = globMatcher.Match("c/a"); + Assert.True(match.IsMatch); + Assert.Equal("*/a", match.Pattern); + Assert.Equal("a", match.Stem); + } + + [Fact] + public void CanMatchWildCardAtTheEnd() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("a/*"); + var globMatcher = matcher.Build(); + var match = globMatcher.Match("a/c"); + Assert.True(match.IsMatch); + Assert.Equal("a/*", match.Pattern); + Assert.Equal("c", match.Stem); + } + + [Fact] + public void CanMatchWildCardInMiddle() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("a/*/c"); + var globMatcher = matcher.Build(); + var match = globMatcher.Match("a/b/c"); + Assert.True(match.IsMatch); + Assert.Equal("a/*/c", match.Pattern); + Assert.Equal("c", match.Stem); + } + + [Fact] + public void CanMatchRecursiveWildCard() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("**"); + var globMatcher = matcher.Build(); + var match = globMatcher.Match("a/b/c"); + Assert.True(match.IsMatch); + Assert.Equal("**", match.Pattern); + Assert.Equal("a/b/c", match.Stem); + } + + [Fact] + public void CanMatchRecursiveWildCardAtTheBeginning() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("**/a"); + var globMatcher = matcher.Build(); + var match = globMatcher.Match("c/b/a"); + Assert.True(match.IsMatch); + Assert.Equal("**/a", match.Pattern); + Assert.Equal("c/b/a", match.Stem); + } + + [Fact] + public void CanMatchRecursiveWildCardAtTheEnd() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("a/**"); + var globMatcher = matcher.Build(); + var match = globMatcher.Match("a/b/c"); + Assert.True(match.IsMatch); + Assert.Equal("a/**", match.Pattern); + Assert.Equal("b/c", match.Stem); + } + + [Fact] + public void CanMatchRecursiveWildCardInMiddle() + { + var matcher = new StaticWebAssetGlobMatcherBuilder(); + matcher.AddIncludePatterns("a/**/c"); + var globMatcher = matcher.Build(); + var match = globMatcher.Match("a/b/c"); + Assert.True(match.IsMatch); + Assert.Equal("a/**/c", match.Pattern); + Assert.Equal("b/c", match.Stem); + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/MergeConfigurationPropertiesTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/MergeConfigurationPropertiesTest.cs new file mode 100644 index 000000000000..a19ca4bd7a1c --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/MergeConfigurationPropertiesTest.cs @@ -0,0 +1,298 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + public class MergeConfigurationPropertiesTest + { + [Fact] + public void MergesProjectConfigurationWithProjectReferenceWhenMatchingReferenceFound() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var referenceProjectFile = Path.Combine("..", "reference", "myRcl.csproj"); + var task = new MergeConfigurationProperties + { + BuildEngine = buildEngine.Object, + CandidateConfigurations = new[] { CreateCandidateProjectConfiguration(Path.GetFullPath(referenceProjectFile)) }, + ProjectReferences = new[] { + CreateProjectReference( + project: Path.Combine("..", "myRcl", "myRcl.csproj"), + msBuildSourceProjectFile: Path.GetFullPath(referenceProjectFile), + undefineProperties: Path.Combine(";TargetFramework;RuntimeIdentifier")) + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.ProjectConfigurations.Should().HaveCount(1); + var config = task.ProjectConfigurations[0]; + config.GetMetadata("Source").Should().Be("myRcl"); + config.GetMetadata("GetBuildAssetsTargets").Should().Be("GetCurrentProjectBuildStaticWebAssetItems"); + config.GetMetadata("GetPublishAssetsTargets").Should() + .Be("ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems"); + config.GetMetadata("Version").Should().Be("2"); + config.GetMetadata("AdditionalBuildProperties").Should().Be(""); + config.GetMetadata("AdditionalBuildPropertiesToRemove").Should().Be("TargetFramework;RuntimeIdentifier"); + config.GetMetadata("AdditionalPublishProperties").Should().Be(""); + config.GetMetadata("AdditionalPublishPropertiesToRemove").Should().Be("TargetFramework;RuntimeIdentifier"); + } + + [Fact] + public void MergesProjectConfigurationWithProjectReference_UsesOSCasingForMatching() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var referenceProjectFile = Path.Combine("..", "reference", "myRcl.csproj"); + var task = new MergeConfigurationProperties + { + BuildEngine = buildEngine.Object, + CandidateConfigurations = new[] { CreateCandidateProjectConfiguration(Path.GetFullPath(referenceProjectFile)) }, + ProjectReferences = new[] + { + CreateProjectReference( + project: Path.Combine("..", "myRCL", "myRcl.csproj"), + msBuildSourceProjectFile: Path.GetFullPath(referenceProjectFile).ToUpperInvariant(), + undefineProperties: Path.Combine(";TargetFramework;RuntimeIdentifier")) + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(OperatingSystem.IsWindows()); + } + + [Fact] + public void FailswhenProjectReferenceNotFound() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var referenceProjectFile = Path.Combine("..", "reference", "myRcl.csproj"); + var task = new MergeConfigurationProperties + { + BuildEngine = buildEngine.Object, + CandidateConfigurations = new[] { CreateCandidateProjectConfiguration(Path.GetFullPath(referenceProjectFile)) }, + ProjectReferences = Array.Empty() + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(false); + } + + [Fact] + public void MergesProjectConfigurationRespectsSetTargetFramework() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var referenceProjectFile = Path.Combine("..", "reference", "myRcl.csproj"); + var task = new MergeConfigurationProperties + { + BuildEngine = buildEngine.Object, + CandidateConfigurations = new[] { CreateCandidateProjectConfiguration(Path.GetFullPath(referenceProjectFile)) }, + ProjectReferences = new[] { + CreateProjectReference( + project: Path.Combine("..", "myRcl", "myRcl.csproj"), + msBuildSourceProjectFile: Path.GetFullPath(referenceProjectFile), + setTargetFramework: $"TargetFramework={ToolsetInfo.CurrentTargetFramework}") + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.ProjectConfigurations.Should().HaveCount(1); + var config = task.ProjectConfigurations[0]; + config.GetMetadata("Source").Should().Be("myRcl"); + config.GetMetadata("GetBuildAssetsTargets").Should().Be("GetCurrentProjectBuildStaticWebAssetItems"); + config.GetMetadata("GetPublishAssetsTargets").Should() + .Be("ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems"); + config.GetMetadata("Version").Should().Be("2"); + config.GetMetadata("AdditionalBuildProperties").Should().Be($"TargetFramework={ToolsetInfo.CurrentTargetFramework}"); + config.GetMetadata("AdditionalBuildPropertiesToRemove").Should().Be(""); + config.GetMetadata("AdditionalPublishProperties").Should().Be($"TargetFramework={ToolsetInfo.CurrentTargetFramework}"); + config.GetMetadata("AdditionalPublishPropertiesToRemove").Should().Be(""); + } + + [Fact] + public void MergesProjectConfigurationRespectsSetPlatform() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var referenceProjectFile = Path.Combine("..", "reference", "myRcl.csproj"); + var task = new MergeConfigurationProperties + { + BuildEngine = buildEngine.Object, + CandidateConfigurations = new[] { CreateCandidateProjectConfiguration(Path.GetFullPath(referenceProjectFile)) }, + ProjectReferences = new[] { + CreateProjectReference( + project: Path.Combine("..", "myRcl", "myRcl.csproj"), + msBuildSourceProjectFile: Path.GetFullPath(referenceProjectFile), + setPlatform: "RuntimeIdentifier=win-x64") + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.ProjectConfigurations.Should().HaveCount(1); + var config = task.ProjectConfigurations[0]; + config.GetMetadata("Source").Should().Be("myRcl"); + config.GetMetadata("GetBuildAssetsTargets").Should().Be("GetCurrentProjectBuildStaticWebAssetItems"); + config.GetMetadata("GetPublishAssetsTargets").Should() + .Be("ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems"); + config.GetMetadata("Version").Should().Be("2"); + config.GetMetadata("AdditionalBuildProperties").Should().Be("RuntimeIdentifier=win-x64"); + config.GetMetadata("AdditionalBuildPropertiesToRemove").Should().Be(""); + config.GetMetadata("AdditionalPublishProperties").Should().Be("RuntimeIdentifier=win-x64"); + config.GetMetadata("AdditionalPublishPropertiesToRemove").Should().Be(""); + } + + [Fact] + public void MergesProjectConfigurationRespectsSetConfiguration() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var referenceProjectFile = Path.Combine("..", "reference", "myRcl.csproj"); + var task = new MergeConfigurationProperties + { + BuildEngine = buildEngine.Object, + CandidateConfigurations = new[] { CreateCandidateProjectConfiguration(Path.GetFullPath(referenceProjectFile)) }, + ProjectReferences = new[] { + CreateProjectReference( + project: Path.Combine("..", "myRcl", "myRcl.csproj"), + msBuildSourceProjectFile: Path.GetFullPath(referenceProjectFile), + setConfiguration: "Configuration=Release") + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.ProjectConfigurations.Should().HaveCount(1); + var config = task.ProjectConfigurations[0]; + config.GetMetadata("Source").Should().Be("myRcl"); + config.GetMetadata("GetBuildAssetsTargets").Should().Be("GetCurrentProjectBuildStaticWebAssetItems"); + config.GetMetadata("GetPublishAssetsTargets").Should() + .Be("ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems"); + config.GetMetadata("Version").Should().Be("2"); + config.GetMetadata("AdditionalBuildProperties").Should().Be("Configuration=Release"); + config.GetMetadata("AdditionalBuildPropertiesToRemove").Should().Be(""); + config.GetMetadata("AdditionalPublishProperties").Should().Be("Configuration=Release"); + config.GetMetadata("AdditionalPublishPropertiesToRemove").Should().Be(""); + } + + [Fact] + public void MergesProjectConfigurationRespectsGlobalPropertiesToRemove() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var referenceProjectFile = Path.Combine("..", "reference", "myRcl.csproj"); + var task = new MergeConfigurationProperties + { + BuildEngine = buildEngine.Object, + CandidateConfigurations = new[] { CreateCandidateProjectConfiguration(Path.GetFullPath(referenceProjectFile)) }, + ProjectReferences = new[] { + CreateProjectReference( + project: Path.Combine("..", "myRcl", "myRcl.csproj"), + msBuildSourceProjectFile: Path.GetFullPath(referenceProjectFile), + undefineProperties: "TargetFramework", + globalPropertiesToRemove: "RuntimeIdentifier") + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.ProjectConfigurations.Should().HaveCount(1); + var config = task.ProjectConfigurations[0]; + config.GetMetadata("Source").Should().Be("myRcl"); + config.GetMetadata("GetBuildAssetsTargets").Should().Be("GetCurrentProjectBuildStaticWebAssetItems"); + config.GetMetadata("GetPublishAssetsTargets").Should() + .Be("ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems"); + config.GetMetadata("Version").Should().Be("2"); + config.GetMetadata("AdditionalBuildProperties").Should().Be(""); + config.GetMetadata("AdditionalBuildPropertiesToRemove").Should().Be("RuntimeIdentifier;TargetFramework"); + config.GetMetadata("AdditionalPublishProperties").Should().Be(""); + config.GetMetadata("AdditionalPublishPropertiesToRemove").Should().Be("RuntimeIdentifier;TargetFramework"); + } + + private static ITaskItem CreateCandidateProjectConfiguration(string project) + { + return new TaskItem(Path.GetFullPath(project), new Dictionary + { + ["AdditionalPublishProperties"] = "", + ["GetBuildAssetsTargets"] = "GetCurrentProjectBuildStaticWebAssetItems", + ["GetPublishAssetsTargets"] = "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + ["Version"] = "2", + ["AdditionalBuildProperties"] = "", + ["Source"] = "myRcl", + ["AdditionalPublishPropertiesToRemove"] = "", + ["AdditionalBuildPropertiesToRemove"] = "", + }); + } + + private static ITaskItem CreateProjectReference( + string project, + string msBuildSourceProjectFile, + string undefineProperties = "", + string setConfiguration = "", + string setPlatform = "", + string setTargetFramework = "", + string globalPropertiesToRemove = "") + { + return new TaskItem(project, new Dictionary + { + ["MSBuildSourceProjectFile"] = msBuildSourceProjectFile, + ["UndefineProperties"] = undefineProperties, + ["SetConfiguration"] = setConfiguration, + ["SetPlatform"] = setPlatform, + ["SetTargetFramework"] = setTargetFramework, + ["GlobalPropertiesToRemove"] = globalPropertiesToRemove, + }); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/OverrideHtmlAssetPlaceholdersTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/OverrideHtmlAssetPlaceholdersTest.cs new file mode 100644 index 000000000000..31e709b85f12 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/OverrideHtmlAssetPlaceholdersTest.cs @@ -0,0 +1,290 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using System.Text.RegularExpressions; + +namespace Microsoft.AspNetCore.Razor.Tasks; + +public class OverrideHtmlAssetPlaceholdersTest +{ + [Theory] + [InlineData( + """ + + """, + true, + "main.js" + )] + [InlineData( + """ + + """, + true, + "main.js" + )] + [InlineData( + """ + + """, + true, + "main.js" + )] + [InlineData( + """ + + """, + true, + "./main.js" + )] + [InlineData( + """ + + """, + true, + "./folder/folder/file.name.something.js" + )] + [InlineData( + """ + + """, + true, + "main.suffix.js" + )] + [InlineData( + """ + + """, + true, + "/root/main.suffix.js" + )] + [InlineData( + """ + + """, + false + )] + [InlineData( + """ + + """, + false + )] + [InlineData( + """ + + """, + false + )] + [InlineData( + """ +

main#[.{fingerprint}].js

+ """, + false + )] + [InlineData( + """ + + """, + true, + "main.js" + )] + [InlineData( + """ + + """, + true, + "./main.js" + )] + [InlineData( + """ + + """, + true, + "main.js" + )] + public void ValidateAssetsRegex(string input, bool shouldMatch, string fileName = null) + { + var match = OverrideHtmlAssetPlaceholders._assetsRegex.Match(input); + Assert.Equal(shouldMatch, match.Success); + + if (fileName != null) + { + Assert.Equal(fileName, match.Groups["fileName"].Value + match.Groups["fileExtension"].Value); + } + } + + [Theory] + [InlineData( + """ + + """, + true + )] + [InlineData( + """ + + """, + true + )] + [InlineData( + """ + + """, + true + )] + [InlineData( + """ + + """, + true + )] + [InlineData( + """ + + """, + false + )] + [InlineData( + """ + + """, + false + )] + [InlineData( + """ + + """, + false + )] + public void ValidateImportMapRegex(string input, bool shouldMatch) + { + Assert.Equal(shouldMatch, OverrideHtmlAssetPlaceholders._importMapRegex.Match(input).Success); + } + + [Theory] + [InlineData( + """ + + """, + true + )] + [InlineData( + """ + + """, + true + )] + [InlineData( + """ + + """, + true + )] + [InlineData( + """ + + """, + false + )] + [InlineData( + """ + + """, + false + )] + [InlineData( + """ + " + """, + false + )] + [InlineData( + """ + " + """, + false + )] + [InlineData( + """ + + """, + false + )] + [InlineData( + """ + + """, + true, + "webassembly" + )] + [InlineData( + """ + + """, + true, + "webassembly" + )] + [InlineData( + """ + + """, + false + )] + [InlineData( + """ + + """, + false + )] + [InlineData( + """ + + """, + false + )] + [InlineData( + """ + + """, + true, + "webassembly" + )] + public void ValidatePreloadRegex(string input, bool shouldMatch, string group = null) + { + var match = OverrideHtmlAssetPlaceholders._preloadRegex.Match(input); + Assert.Equal(shouldMatch, match.Success); + + if (group != null) + { + Assert.Equal(group, match.Groups["group"]?.Value); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ReadStaticWebAssetsManifestFileTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ReadStaticWebAssetsManifestFileTest.cs new file mode 100644 index 000000000000..04ae560a514a --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ReadStaticWebAssetsManifestFileTest.cs @@ -0,0 +1,383 @@ +// 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 System.Text.Json; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + public class ReadStaticWebAssetsManifestFileTest + { + public ReadStaticWebAssetsManifestFileTest() + { + Directory.CreateDirectory(Path.Combine(TestContext.Current.TestExecutionDirectory, nameof(ReadStaticWebAssetsManifestFileTest))); + TempFilePath = Path.Combine(TestContext.Current.TestExecutionDirectory, nameof(ReadStaticWebAssetsManifestFileTest), Guid.NewGuid().ToString("N") + ".json"); + } + + public string TempFilePath { get; } + + [Fact] + public void CanReadManifestWithoutProperties() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var emptyManifest = "{}"; + File.WriteAllText(TempFilePath, emptyManifest); + + var task = new ReadStaticWebAssetsManifestFile + { + BuildEngine = buildEngine.Object, + ManifestPath = TempFilePath + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.Assets.Should().BeEmpty(); + task.Endpoints.Should().BeEmpty(); + task.DiscoveryPatterns.Should().BeEmpty(); + task.ReferencedProjectsConfiguration.Should().BeEmpty(); + } + + [Fact] + public void CanReadEmptyManifest() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var emptyManifest = @"{ + ""Version"": 1, + ""Hash"": ""__hash__"", + ""Source"": ""ComponentApp"", + ""BasePath"": ""_content/ComponentApp"", + ""Mode"": ""Default"", + ""ManifestType"": ""Build"", + ""ReferencedProjectsConfiguration"": [], + ""DiscoveryPatterns"": [], + ""Assets"": [], + ""Endpoints"": [] +}"; + File.WriteAllText(TempFilePath, emptyManifest); + + var task = new ReadStaticWebAssetsManifestFile + { + BuildEngine = buildEngine.Object, + ManifestPath = TempFilePath + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.Assets.Should().BeEmpty(); + task.Endpoints.Should().BeEmpty(); + task.DiscoveryPatterns.Should().BeEmpty(); + task.ReferencedProjectsConfiguration.Should().BeEmpty(); + } + + [Fact] + public void ConvertsAssetsToTaskItems() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var contentRoot = Path.GetFullPath("."); + var encodedContentRoot = JsonEncodedText.Encode(contentRoot); + var identity = Path.Combine(contentRoot, "ComponentApp.styles.css"); + var encodedIdentity = JsonEncodedText.Encode(identity); + var manifest = $@"{{ + ""Version"": 1, + ""Hash"": ""__hash__"", + ""Source"": ""ComponentApp"", + ""BasePath"": ""_content/ComponentApp"", + ""Mode"": ""Default"", + ""ManifestType"": ""Build"", + ""ReferencedProjectsConfiguration"": [], + ""DiscoveryPatterns"": [], + ""Assets"": [ + {{ + ""Identity"": ""{encodedIdentity}"", + ""SourceId"": ""ComponentApp"", + ""SourceType"": ""Computed"", + ""ContentRoot"": ""{encodedContentRoot}"", + ""BasePath"": ""_content/ComponentApp"", + ""RelativePath"": ""ComponentApp.styles.css"", + ""AssetKind"": ""All"", + ""AssetMode"": ""CurrentProject"", + ""AssetRole"": ""Primary"", + ""RelatedAsset"": """", + ""AssetTraitName"": ""ScopedCss"", + ""AssetTraitValue"": ""ApplicationBundle"", + ""CopyToOutputDirectory"": ""Never"", + ""CopyToPublishDirectory"": ""PreserveNewest"", + ""OriginalItemSpec"": ""{encodedIdentity}"" + }} + ], +""Endpoints"": [ + {{ + ""AssetFile"": ""{encodedIdentity}"", + ""Route"": ""_content/ComponentApp/ComponentApp.styles.css"", + ""Selectors"": [ + {{ + ""Name"": ""Content-Encoding"", + ""Value"": ""gzip"", + ""Quality"": ""0.9"" + }} + ], + ""ResponseHeaders"": [ + {{ + ""Name"": ""Accept-Ranges"", + ""Value"": ""bytes"" + }}, + {{ + ""Name"": ""Content-Length"", + ""Value"": ""__content-length__"" + }}, + {{ + ""Name"": ""Content-Type"", + ""Value"": ""text/css"" + }}, + {{ + ""Name"": ""ETag"", + ""Value"": ""__etag__"" + }}, + {{ + ""Name"": ""Last-Modified"", + ""Value"": ""__last-modified__"" + }} + ] + }} + ] +}}"; + File.WriteAllText(TempFilePath, manifest); + + var task = new ReadStaticWebAssetsManifestFile + { + BuildEngine = buildEngine.Object, + ManifestPath = TempFilePath + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.ReferencedProjectsConfiguration.Should().BeEmpty(); + task.DiscoveryPatterns.Should().BeEmpty(); + task.Assets.Length.Should().Be(1); + var asset = task.Assets[0]; + asset.GetMetadata(nameof(StaticWebAsset.Identity)).Should().BeEquivalentTo($"{identity}"); + asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().BeEquivalentTo("ComponentApp"); + asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().BeEquivalentTo("Computed"); + asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().BeEquivalentTo($"{contentRoot}"); + asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().BeEquivalentTo("_content/ComponentApp"); + asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().BeEquivalentTo("ComponentApp.styles.css"); + asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().BeEquivalentTo("All"); + asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().BeEquivalentTo("CurrentProject"); + asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().BeEquivalentTo("Primary"); + asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().BeEquivalentTo(""); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().BeEquivalentTo("ScopedCss"); + asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().BeEquivalentTo("ApplicationBundle"); + asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().BeEquivalentTo("Never"); + asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().BeEquivalentTo("PreserveNewest"); + asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().BeEquivalentTo($"{identity}"); + + task.Endpoints.Length.Should().Be(1); + var endpoint = task.Endpoints[0]; + endpoint.ItemSpec.Should().BeEquivalentTo("_content/ComponentApp/ComponentApp.styles.css"); + endpoint.GetMetadata(nameof(StaticWebAssetEndpoint.AssetFile)).Should().BeEquivalentTo($"{identity}"); + endpoint.GetMetadata(nameof(StaticWebAssetEndpoint.Selectors)).Should().BeEquivalentTo("""[{"Name":"Content-Encoding","Value":"gzip","Quality":"0.9"}]"""); + endpoint.GetMetadata(nameof(StaticWebAssetEndpoint.ResponseHeaders)) + .Should() + .BeEquivalentTo("""[{"Name":"Accept-Ranges","Value":"bytes"},{"Name":"Content-Length","Value":"__content-length__"},{"Name":"Content-Type","Value":"text/css"},{"Name":"ETag","Value":"__etag__"},{"Name":"Last-Modified","Value":"__last-modified__"}]"""); + } + + [Fact] + public void ConvertsReferencedProjectsConfigurationsToTaskItems() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var contentRoot = Path.GetFullPath("."); + var identity = Path.Combine(contentRoot, "AnotherClassLib", "AnotherClassLib.csproj"); + var encodedIdentity = JsonEncodedText.Encode(identity); + var manifest = $@"{{ + ""Version"": 1, + ""Hash"": ""__hash__"", + ""Source"": ""ComponentApp"", + ""BasePath"": ""_content/ComponentApp"", + ""Mode"": ""Default"", + ""ManifestType"": ""Build"", + ""ReferencedProjectsConfiguration"": [ + {{ + ""Identity"": ""{encodedIdentity}"", + ""Version"": 2, + ""Source"": ""AnotherClassLib"", + ""GetPublishAssetsTargets"": ""ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems"", + ""AdditionalPublishProperties"": "";"", + ""AdditionalPublishPropertiesToRemove"": "";WebPublishProfileFile"", + ""GetBuildAssetsTargets"": ""GetCurrentProjectBuildStaticWebAssetItems"", + ""AdditionalBuildProperties"": "";"", + ""AdditionalBuildPropertiesToRemove"": "";WebPublishProfileFile"" + }} +], + ""DiscoveryPatterns"": [], + ""Assets"": [], + ""Endpoints"": [] +}}"; + File.WriteAllText(TempFilePath, manifest); + + var task = new ReadStaticWebAssetsManifestFile + { + BuildEngine = buildEngine.Object, + ManifestPath = TempFilePath + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.ReferencedProjectsConfiguration.Length.Should().Be(1); + task.Assets.Should().BeEmpty(); + task.Endpoints.Should().BeEmpty(); + task.DiscoveryPatterns.Should().BeEmpty(); + var projectConfiguration = task.ReferencedProjectsConfiguration[0]; + projectConfiguration.ItemSpec.Should().BeEquivalentTo(identity); + projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.Version)).Should().BeEquivalentTo("2"); + projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.Source)).Should().BeEquivalentTo("AnotherClassLib"); + projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.GetPublishAssetsTargets)).Should().BeEquivalentTo("ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems"); + projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.AdditionalPublishProperties)).Should().BeEquivalentTo(";"); + projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.AdditionalPublishPropertiesToRemove)).Should().BeEquivalentTo(";WebPublishProfileFile"); + projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.GetBuildAssetsTargets)).Should().BeEquivalentTo("GetCurrentProjectBuildStaticWebAssetItems"); + projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.AdditionalBuildProperties)).Should().BeEquivalentTo(";"); + projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.AdditionalBuildPropertiesToRemove)).Should().BeEquivalentTo(";WebPublishProfileFile"); + } + + [Fact] + public void ConvertsDiscoveryPatternsToTaskItems() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var contentRoot = Path.Combine(Path.GetFullPath("."), "AnotherClassLib", "wwwroot"); + var encodedContentRoot = JsonEncodedText.Encode(contentRoot); + var manifest = $@"{{ + ""Version"": 1, + ""Hash"": ""__hash__"", + ""Source"": ""ComponentApp"", + ""BasePath"": ""_content/ComponentApp"", + ""Mode"": ""Default"", + ""ManifestType"": ""Build"", + ""ReferencedProjectsConfiguration"": [ ], + ""DiscoveryPatterns"": [ + {{ + ""Name"": ""AnotherClassLib\\wwwroot"", + ""Source"": ""AnotherClassLib"", + ""ContentRoot"": ""{encodedContentRoot}"", + ""BasePath"": ""_content/AnotherClassLib"", + ""Pattern"": ""**"" + }} +], + ""Assets"": [], + ""Endpoints"": [] +}}"; + File.WriteAllText(TempFilePath, manifest); + + var task = new ReadStaticWebAssetsManifestFile + { + BuildEngine = buildEngine.Object, + ManifestPath = TempFilePath + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + task.DiscoveryPatterns.Length.Should().Be(1); + task.ReferencedProjectsConfiguration.Should().BeEmpty(); + task.Assets.Should().BeEmpty(); + task.Endpoints.Should().BeEmpty(); + var discoveryPattern = task.DiscoveryPatterns[0]; + + discoveryPattern.ItemSpec.Should().BeEquivalentTo(Path.Combine("AnotherClassLib", "wwwroot")); + discoveryPattern.GetMetadata(nameof(StaticWebAssetsDiscoveryPattern.Source)).Should().BeEquivalentTo("AnotherClassLib"); + discoveryPattern.GetMetadata(nameof(StaticWebAssetsDiscoveryPattern.ContentRoot)).Should().BeEquivalentTo($"{contentRoot}"); + discoveryPattern.GetMetadata(nameof(StaticWebAssetsDiscoveryPattern.BasePath)).Should().BeEquivalentTo("_content/AnotherClassLib"); + discoveryPattern.GetMetadata(nameof(StaticWebAssetsDiscoveryPattern.Pattern)).Should().BeEquivalentTo("**"); + } + + [Fact] + public void ReturnsErrorwhenManifestDoesNotExist() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ReadStaticWebAssetsManifestFile + { + BuildEngine = buildEngine.Object, + ManifestPath = "nonexisting.staticwebassets.json" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(false); + errorMessages.Count.Should().Be(1); + errorMessages[0].Should().Be("Manifest file at 'nonexisting.staticwebassets.json' not found."); + task.Assets.Should().BeNull(); + task.DiscoveryPatterns.Should().BeNull(); + task.ReferencedProjectsConfiguration.Should().BeNull(); + } + + [Fact] + public void ReturnsErrorwhenManifestIsMalformed() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var manifest = "{"; + File.WriteAllText(TempFilePath, manifest); + var task = new ReadStaticWebAssetsManifestFile + { + BuildEngine = buildEngine.Object, + ManifestPath = TempFilePath + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(false); + errorMessages.Count.Should().Be(1); + task.Assets.Should().BeNull(); + task.Endpoints.Should().BeNull(); + task.DiscoveryPatterns.Should().BeNull(); + task.ReferencedProjectsConfiguration.Should().BeNull(); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ResolveAllScopedCssAssetsTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ResolveAllScopedCssAssetsTest.cs new file mode 100644 index 000000000000..f6261ae15561 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ResolveAllScopedCssAssetsTest.cs @@ -0,0 +1,122 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Utilities; + +namespace Microsoft.NET.Sdk.Razor.Test +{ + public class ResolveAllScopedCssAssetsTest + { + [Fact] + public void ResolveAllScopedCssAssets_IgnoresRegularCssFiles() + { + // Arrange + var taskInstance = new ResolveAllScopedCssAssets() + { + StaticWebAssets = new[] + { + new TaskItem("TestFiles/Pages/Counter.razor.rz.scp.css", new Dictionary + { + ["RelativePath"] = "Pages/Counter.razor.rz.scp.css" + }), + new TaskItem("site.css", new Dictionary + { + ["RelativePath"] = "site.css" + }), + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.ScopedCssAssets.Should().ContainSingle(); + taskInstance.ScopedCssAssets.Should().NotContain(scopedCssAsset => scopedCssAsset.ItemSpec == "site.css"); + } + + [Fact] + public void ResolveAllScopedCssAssets_DetectsScopedCssFiles() + { + // Arrange + var taskInstance = new ResolveAllScopedCssAssets() + { + StaticWebAssets = new[] + { + new TaskItem("TestFiles/Pages/Counter.razor.rz.scp.css", new Dictionary + { + ["RelativePath"] = "Pages/Counter.razor.rz.scp.css" + }), + new TaskItem("site.css", new Dictionary + { + ["RelativePath"] = "site.css" + }), + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.ScopedCssAssets.Should().ContainSingle(); + taskInstance.ScopedCssAssets.Should().Contain(scopedCssAsset => scopedCssAsset.ItemSpec == "TestFiles/Pages/Counter.razor.rz.scp.css"); + } + + [Fact] + public void ResolveAllScopedCssAssets_DetectsScopedCssProjectBundleFiles() + { + // Arrange + var taskInstance = new ResolveAllScopedCssAssets() + { + StaticWebAssets = new[] + { + new TaskItem("Folder/Project.bundle.scp.css", new Dictionary + { + ["RelativePath"] = "Project.bundle.scp.css" + }), + new TaskItem("site.css", new Dictionary + { + ["RelativePath"] = "site.css" + }), + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.ScopedCssProjectBundles.Should().ContainSingle(); + taskInstance.ScopedCssProjectBundles.Should().Contain(scopedCssBundle => scopedCssBundle.ItemSpec == "Folder/Project.bundle.scp.css"); + } + + [Fact] + public void ResolveAllScopedCssAssets_IgnoresScopedCssApplicationBundleFiles() + { + // Arrange + var taskInstance = new ResolveAllScopedCssAssets() + { + StaticWebAssets = new[] + { + new TaskItem("Folder/Project.styles.css", new Dictionary + { + ["RelativePath"] = "Project.styles.css" + }), + new TaskItem("site.css", new Dictionary + { + ["RelativePath"] = "site.css" + }), + } + }; + + // Act + var result = taskInstance.Execute(); + + // Assert + result.Should().BeTrue(); + taskInstance.ScopedCssProjectBundles.Should().BeEmpty(); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ResolveCompressedAssetsTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ResolveCompressedAssetsTest.cs new file mode 100644 index 000000000000..5098c8ac0738 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ResolveCompressedAssetsTest.cs @@ -0,0 +1,475 @@ +// 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 System.Diagnostics.Metrics; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; +using NuGet.ContentModel; +using NuGet.Packaging.Core; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests; + +public class ResolveCompressedAssetsTest +{ + public string ItemSpec { get; } + + public string OriginalItemSpec { get; } + + public string OutputBasePath { get; } + + public ResolveCompressedAssetsTest() + { + OutputBasePath = Path.Combine(TestContext.Current.TestExecutionDirectory, nameof(ResolveCompressedAssetsTest)); + ItemSpec = Path.Combine(OutputBasePath, Guid.NewGuid().ToString("N") + ".tmp"); + OriginalItemSpec = Path.Combine(OutputBasePath, Guid.NewGuid().ToString("N") + ".tmp"); + } + + [Fact] + public void ResolvesExplicitlyProvidedAssets() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var asset = new StaticWebAsset() + { + Identity = ItemSpec, + OriginalItemSpec = OriginalItemSpec, + RelativePath = Path.GetFileName(ItemSpec), + ContentRoot = Path.GetDirectoryName(ItemSpec), + SourceType = StaticWebAsset.SourceTypes.Discovered, + SourceId = "App", + AssetKind = StaticWebAsset.AssetKinds.All, + AssetMode = StaticWebAsset.AssetModes.All, + AssetRole = StaticWebAsset.AssetRoles.Primary, + Fingerprint = "v1", + Integrity = "abc", + FileLength = 10, + LastWriteTime = DateTime.UtcNow + }.ToTaskItem(); + + var gzipExplicitAsset = new TaskItem(asset.ItemSpec, asset.CloneCustomMetadata()); + var brotliExplicitAsset = new TaskItem(asset.ItemSpec, asset.CloneCustomMetadata()); + + var task = new ResolveCompressedAssets() + { + OutputPath = OutputBasePath, + BuildEngine = buildEngine.Object, + CandidateAssets = new[] { asset }, + Formats = "gzip;brotli", + ExplicitAssets = new[] { gzipExplicitAsset, brotliExplicitAsset }, + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeTrue(); + task.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(2); + task.AssetsToCompress[0].ItemSpec.Should().EndWith(".gz"); + task.AssetsToCompress[1].ItemSpec.Should().EndWith(".br"); + } + + [Fact] + public void InfersPreCompressedAssetsCorrectly() + { + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var uncompressedCandidate = new StaticWebAsset + { + Identity = Path.Combine(Environment.CurrentDirectory, "wwwroot", "js", "site.js"), + RelativePath = "js/site#[.{fingerprint}]?.js", + BasePath = "_content/Test", + AssetMode = StaticWebAsset.AssetModes.All, + AssetKind = StaticWebAsset.AssetKinds.All, + AssetMergeSource = string.Empty, + SourceId = "Test", + CopyToOutputDirectory = StaticWebAsset.AssetCopyOptions.Never, + Fingerprint = "xtxxf3hu2r", + RelatedAsset = string.Empty, + ContentRoot = Path.Combine(Environment.CurrentDirectory,"wwwroot"), + SourceType = StaticWebAsset.SourceTypes.Discovered, + Integrity = "hRQyftXiu1lLX2P9Ly9xa4gHJgLeR1uGN5qegUobtGo=", + FileLength = 10, + LastWriteTime = DateTime.UtcNow, + AssetRole = StaticWebAsset.AssetRoles.Primary, + AssetMergeBehavior = string.Empty, + AssetTraitValue = string.Empty, + AssetTraitName = string.Empty, + OriginalItemSpec = Path.Combine("wwwroot", "js", "site.js"), + CopyToPublishDirectory = StaticWebAsset.AssetCopyOptions.PreserveNewest + }; + + var compressedCandidate = new StaticWebAsset + { + Identity = Path.Combine(Environment.CurrentDirectory, "wwwroot", "js", "site.js.gz"), + RelativePath = "js/site.js#[.{fingerprint}]?.gz", + BasePath = "_content/Test", + AssetMode = StaticWebAsset.AssetModes.All, + AssetKind = StaticWebAsset.AssetKinds.All, + AssetMergeSource = string.Empty, + SourceId = "Test", + CopyToOutputDirectory = StaticWebAsset.AssetCopyOptions.Never, + Fingerprint = "es13vhk42b", + RelatedAsset = string.Empty, + ContentRoot = Path.Combine(Environment.CurrentDirectory, "wwwroot"), + SourceType = StaticWebAsset.SourceTypes.Discovered, + Integrity = "zs5Fd3XI6+g9f4N1SFLVdgghuiqdvq+nETAjTbvVxx4=", + AssetRole = StaticWebAsset.AssetRoles.Primary, + AssetMergeBehavior = string.Empty, + AssetTraitValue = string.Empty, + AssetTraitName = string.Empty, + OriginalItemSpec = Path.Combine("wwwroot", "js", "site.js.gz"), + CopyToPublishDirectory = StaticWebAsset.AssetCopyOptions.PreserveNewest, + FileLength = 10, + LastWriteTime = DateTime.UtcNow + }; + + var task = new ResolveCompressedAssets + { + OutputPath = OutputBasePath, + CandidateAssets = [uncompressedCandidate.ToTaskItem(), compressedCandidate.ToTaskItem()], + Formats = "gzip", + BuildEngine = buildEngine.Object + }; + + var result = task.Execute(); + + result.Should().BeTrue(); + task.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(0); + } + + [Fact] + public void ResolvesAssetsMatchingIncludePattern() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var asset = new StaticWebAsset() + { + Identity = ItemSpec, + OriginalItemSpec = OriginalItemSpec, + RelativePath = Path.GetFileName(ItemSpec), + ContentRoot = Path.GetDirectoryName(ItemSpec), + SourceType = StaticWebAsset.SourceTypes.Discovered, + SourceId = "App", + AssetKind = StaticWebAsset.AssetKinds.All, + AssetMode = StaticWebAsset.AssetModes.All, + AssetRole = StaticWebAsset.AssetRoles.Primary, + Fingerprint = "v1", + Integrity = "abc", + FileLength = 10, + LastWriteTime = DateTime.UtcNow + }.ToTaskItem(); + + var task = new ResolveCompressedAssets() + { + OutputPath = OutputBasePath, + BuildEngine = buildEngine.Object, + CandidateAssets = new[] { asset }, + IncludePatterns = "**\\*.tmp", + Formats = "gzip;brotli", + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeTrue(); + task.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(2); + task.AssetsToCompress[0].ItemSpec.Should().EndWith(".gz"); + task.AssetsToCompress[1].ItemSpec.Should().EndWith(".br"); + } + + [Fact] + public void ResolvesAssets_WithFingerprint_MatchingIncludePattern() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var asset = new StaticWebAsset() + { + Identity = ItemSpec, + OriginalItemSpec = OriginalItemSpec, + RelativePath = Path.GetFileNameWithoutExtension(ItemSpec)+"#[.{fingerprint}]" + Path.GetExtension(ItemSpec), + ContentRoot = Path.GetDirectoryName(ItemSpec), + SourceType = StaticWebAsset.SourceTypes.Discovered, + SourceId = "App", + AssetKind = StaticWebAsset.AssetKinds.All, + AssetMode = StaticWebAsset.AssetModes.All, + AssetRole = StaticWebAsset.AssetRoles.Primary, + Fingerprint = "v1", + Integrity = "abc", + FileLength = 10, + LastWriteTime = DateTime.UtcNow + }.ToTaskItem(); + + var task = new ResolveCompressedAssets() + { + OutputPath = OutputBasePath, + BuildEngine = buildEngine.Object, + CandidateAssets = new[] { asset }, + IncludePatterns = "**\\*.tmp", + Formats = "gzip;brotli", + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeTrue(); + task.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(2); + task.AssetsToCompress[0].ItemSpec.Should().EndWith(".gz"); + var relativePath = task.AssetsToCompress[0].GetMetadata("RelativePath"); + relativePath.Should().EndWith(".gz"); + relativePath = Path.GetFileNameWithoutExtension(relativePath); + relativePath.Should().EndWith(".tmp"); + relativePath = Path.GetFileNameWithoutExtension(relativePath); + relativePath.Should().EndWith("#[.{fingerprint=v1}]"); + task.AssetsToCompress[1].ItemSpec.Should().EndWith(".br"); + relativePath = task.AssetsToCompress[1].GetMetadata("RelativePath"); + relativePath.Should().EndWith(".br"); + relativePath = Path.GetFileNameWithoutExtension(relativePath); + relativePath.Should().EndWith(".tmp"); + relativePath = Path.GetFileNameWithoutExtension(relativePath); + relativePath.Should().EndWith("#[.{fingerprint=v1}]"); + } + + [Fact] + public void ExcludesAssetsMatchingExcludePattern() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var asset = new StaticWebAsset() + { + Identity = ItemSpec, + OriginalItemSpec = OriginalItemSpec, + RelativePath = Path.GetFileName(ItemSpec), + ContentRoot = Path.GetDirectoryName(ItemSpec), + SourceType = StaticWebAsset.SourceTypes.Discovered, + SourceId = "App", + AssetKind = StaticWebAsset.AssetKinds.All, + AssetMode = StaticWebAsset.AssetModes.All, + AssetRole = StaticWebAsset.AssetRoles.Primary, + Fingerprint = "v1", + Integrity = "abc", + FileLength = 10, + LastWriteTime = DateTime.UtcNow + }.ToTaskItem(); + + var task = new ResolveCompressedAssets() + { + OutputPath = OutputBasePath, + BuildEngine = buildEngine.Object, + IncludePatterns = "**\\*", + ExcludePatterns = "**\\*.tmp", + CandidateAssets = new[] { asset }, + Formats = "gzip;brotli" + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeTrue(); + task.AssetsToCompress.Should().HaveCount(0); + } + + [Fact] + public void DeduplicatesAssetsResolvedBothExplicitlyAndFromPattern() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var asset = new StaticWebAsset() + { + Identity = ItemSpec, + OriginalItemSpec = OriginalItemSpec, + RelativePath = Path.GetFileName(ItemSpec), + ContentRoot = Path.GetDirectoryName(ItemSpec), + SourceType = StaticWebAsset.SourceTypes.Discovered, + SourceId = "App", + AssetKind = StaticWebAsset.AssetKinds.All, + AssetMode = StaticWebAsset.AssetModes.All, + AssetRole = StaticWebAsset.AssetRoles.Primary, + Fingerprint = "v1", + Integrity = "abc", + FileLength = 10, + LastWriteTime = DateTime.UtcNow + }.ToTaskItem(); + + var gzipExplicitAsset = new TaskItem(asset.ItemSpec, asset.CloneCustomMetadata()); + var brotliExplicitAsset = new TaskItem(asset.ItemSpec, asset.CloneCustomMetadata()); + + var buildTask = new ResolveCompressedAssets() + { + OutputPath = OutputBasePath, + BuildEngine = buildEngine.Object, + CandidateAssets = new[] { asset }, + IncludePatterns = "**\\*.tmp", + ExplicitAssets = new[] { gzipExplicitAsset, brotliExplicitAsset }, + Formats = "gzip;brotli" + }; + + // Act + var buildResult = buildTask.Execute(); + + // Assert + buildResult.Should().BeTrue(); + buildTask.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(2); + buildTask.AssetsToCompress[0].ItemSpec.Should().EndWith(".gz"); + buildTask.AssetsToCompress[1].ItemSpec.Should().EndWith(".br"); + } + + [Fact] + public void IgnoresAssetsCompressedInPreviousTaskRun_Gzip() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var asset = new StaticWebAsset() + { + Identity = ItemSpec, + OriginalItemSpec = OriginalItemSpec, + RelativePath = Path.GetFileName(ItemSpec), + ContentRoot = Path.GetDirectoryName(ItemSpec), + SourceType = StaticWebAsset.SourceTypes.Discovered, + SourceId = "App", + AssetKind = StaticWebAsset.AssetKinds.All, + AssetMode = StaticWebAsset.AssetModes.All, + AssetRole = StaticWebAsset.AssetRoles.Primary, + Fingerprint = "v1", + Integrity = "abc", + FileLength = 10, + LastWriteTime = DateTime.UtcNow + }.ToTaskItem(); + + // Act/Assert + var task1 = new ResolveCompressedAssets() + { + OutputPath = OutputBasePath, + BuildEngine = buildEngine.Object, + CandidateAssets = new[] { asset }, + IncludePatterns = "**\\*.tmp", + Formats = "gzip", + }; + + var result1 = task1.Execute(); + + result1.Should().BeTrue(); + task1.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(1); + task1.AssetsToCompress[0].ItemSpec.Should().EndWith(".gz"); + task1.AssetsToCompress[0].SetMetadata("Fingerprint", "v1gz"); + task1.AssetsToCompress[0].SetMetadata("Integrity", "abcgz"); + + var brotliExplicitAsset = new TaskItem(asset.ItemSpec, asset.CloneCustomMetadata()); + brotliExplicitAsset.SetMetadata("Fingerprint", "v2"); + brotliExplicitAsset.SetMetadata("Integrity", "def"); + + var task2 = new ResolveCompressedAssets() + { + OutputPath = OutputBasePath, + BuildEngine = buildEngine.Object, + CandidateAssets = new[] { asset, task1.AssetsToCompress[0] }, + IncludePatterns = "**\\*.tmp", + ExplicitAssets = new[] { brotliExplicitAsset }, + Formats = "gzip;brotli" + }; + + var result2 = task2.Execute(); + + result2.Should().BeTrue(); + task2.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(1); + task2.AssetsToCompress[0].ItemSpec.Should().EndWith(".br"); + } + + [Fact] + public void IgnoresAssetsCompressedInPreviousTaskRun_Brotli() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var asset = new StaticWebAsset() + { + Identity = ItemSpec, + OriginalItemSpec = OriginalItemSpec, + RelativePath = Path.GetFileName(ItemSpec), + ContentRoot = Path.GetDirectoryName(ItemSpec), + SourceType = StaticWebAsset.SourceTypes.Discovered, + SourceId = "App", + AssetKind = StaticWebAsset.AssetKinds.All, + AssetMode = StaticWebAsset.AssetModes.All, + AssetRole = StaticWebAsset.AssetRoles.Primary, + Fingerprint = "v1", + Integrity = "abc", + FileLength = 10, + LastWriteTime = DateTime.UtcNow + }.ToTaskItem(); + + // Act/Assert + var task1 = new ResolveCompressedAssets() + { + OutputPath = OutputBasePath, + BuildEngine = buildEngine.Object, + CandidateAssets = new[] { asset }, + IncludePatterns = "**\\*.tmp", + Formats = "brotli", + }; + + var result1 = task1.Execute(); + + result1.Should().BeTrue(); + task1.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(1); + task1.AssetsToCompress[0].ItemSpec.Should().EndWith(".br"); + task1.AssetsToCompress[0].SetMetadata("Fingerprint", "v1br"); + task1.AssetsToCompress[0].SetMetadata("Integrity", "abcbr"); + + var gzipExplicitAsset = new TaskItem(asset.ItemSpec, asset.CloneCustomMetadata()); + gzipExplicitAsset.SetMetadata("Fingerprint", "v2"); + gzipExplicitAsset.SetMetadata("Integrity", "def"); + + var task2 = new ResolveCompressedAssets() + { + OutputPath = OutputBasePath, + BuildEngine = buildEngine.Object, + CandidateAssets = new[] { asset, task1.AssetsToCompress[0] }, + IncludePatterns = "**\\*.tmp", + ExplicitAssets = new[] { gzipExplicitAsset }, + Formats = "gzip;brotli" + }; + + var result2 = task2.Execute(); + + result2.Should().BeTrue(); + task2.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(1); + task2.AssetsToCompress[0].ItemSpec.Should().EndWith(".gz"); + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ResolveFingerprintedStaticWebAssetEndpointsForAssetsTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ResolveFingerprintedStaticWebAssetEndpointsForAssetsTest.cs new file mode 100644 index 000000000000..a27049b45841 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ResolveFingerprintedStaticWebAssetEndpointsForAssetsTest.cs @@ -0,0 +1,295 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests.StaticWebAssets; + +public class ResolveFingerprintedStaticWebAssetEndpointsForAssetsTest +{ + [Theory] + [InlineData("candidate#[.{fingerprint}]?.js", "candidate.js")] + [InlineData("candidate#[.{fingerprint}]!.js", "candidate.asdf1234.js")] + public void Standalone_Selects_EndpointMatching_FilePath(string pattern, string expectedRoute) + { + var now = DateTime.Now; + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + List candidateAssets = [ + CreateCandidate( + Path.Combine("wwwroot", "candidate.js"), + "MyPackage", + "Discovered", + pattern, + "All", + "All", + "asdf1234", + "integrity" + ) + ]; + + var endpoints = CreateEndpoints(candidateAssets.Select(a => StaticWebAsset.FromTaskItem(a)).ToArray()); + + var resolvedEndpoints = new ResolveFingerprintedStaticWebAssetEndpointsForAssets + { + CandidateAssets = [.. candidateAssets], + CandidateEndpoints = [..endpoints.Select(e => e.ToTaskItem())], + IsStandalone = true, + BuildEngine = buildEngine.Object + }; + + // Act + var result = resolvedEndpoints.Execute(); + result.Should().BeTrue(); + + // Assert + resolvedEndpoints.ResolvedEndpoints.Should().HaveCount(1); + var endpoint = StaticWebAssetEndpoint.FromTaskItem(resolvedEndpoints.ResolvedEndpoints[0]); + + endpoint.Route.Should().Be(expectedRoute); + } + + [Fact] + public void StandaloneFails_MatchingEndpointNotFound() + { + var now = DateTime.Now; + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + List candidateAssets = [ + CreateCandidate( + Path.Combine("wwwroot", "candidate.js"), + "MyPackage", + "Discovered", + "candidate#[.{fingerprint}]!.js", + "All", + "All", + "asdf1234", + "integrity" + ) + ]; + + var endpoints = CreateEndpoints(candidateAssets.Select(a => StaticWebAsset.FromTaskItem(a)).ToArray()); + endpoints = endpoints.Where(e => !e.Route.Contains("asdf1234")).ToArray(); + + var resolvedEndpoints = new ResolveFingerprintedStaticWebAssetEndpointsForAssets + { + CandidateAssets = [.. candidateAssets], + CandidateEndpoints = [.. endpoints.Select(e => e.ToTaskItem())], + IsStandalone = true, + BuildEngine = buildEngine.Object + }; + + // Act + var result = resolvedEndpoints.Execute(); + result.Should().BeFalse(); + } + + [Theory] + [InlineData("candidate#[.{fingerprint}]?.js", "candidate.asdf1234.js")] + [InlineData("candidate#[.{fingerprint}]!.js", "candidate.asdf1234.js")] + public void Hosted_AlwaysPrefers_FingerprintedEndpoint(string pattern, string expectedRoute) + { + var now = DateTime.Now; + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + List candidateAssets = [ + CreateCandidate( + Path.Combine("wwwroot", "candidate.js"), + "MyPackage", + "Discovered", + pattern, + "All", + "All", + "asdf1234", + "integrity" + ) + ]; + + var endpoints = CreateEndpoints(candidateAssets.Select(a => StaticWebAsset.FromTaskItem(a)).ToArray()); + + var resolvedEndpoints = new ResolveFingerprintedStaticWebAssetEndpointsForAssets + { + CandidateAssets = [.. candidateAssets], + CandidateEndpoints = [.. endpoints.Select(e => e.ToTaskItem())], + IsStandalone = false, + BuildEngine = buildEngine.Object + }; + + // Act + var result = resolvedEndpoints.Execute(); + result.Should().BeTrue(); + + // Assert + resolvedEndpoints.ResolvedEndpoints.Should().HaveCount(1); + var endpoint = StaticWebAssetEndpoint.FromTaskItem(resolvedEndpoints.ResolvedEndpoints[0]); + + endpoint.Route.Should().Be(expectedRoute); + } + + [Fact] + public void Hosted_FallsBackToNonFingerprintedEndpoint_WhenFingerprintedVersionNotAvailable() + { + var now = DateTime.Now; + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + List candidateAssets = [ + CreateCandidate( + Path.Combine("wwwroot", "candidate.js"), + "MyPackage", + "Discovered", + "candidate.js", + "All", + "All", + "asdf1234", + "integrity" + ) + ]; + + var endpoints = CreateEndpoints(candidateAssets.Select(a => StaticWebAsset.FromTaskItem(a)).ToArray()); + + var resolvedEndpoints = new ResolveFingerprintedStaticWebAssetEndpointsForAssets + { + CandidateAssets = [.. candidateAssets], + CandidateEndpoints = [.. endpoints.Select(e => e.ToTaskItem())], + IsStandalone = false, + BuildEngine = buildEngine.Object + }; + + // Act + var result = resolvedEndpoints.Execute(); + result.Should().BeTrue(); + + // Assert + resolvedEndpoints.ResolvedEndpoints.Should().HaveCount(1); + var endpoint = StaticWebAssetEndpoint.FromTaskItem(resolvedEndpoints.ResolvedEndpoints[0]); + + endpoint.Route.Should().Be("candidate.js"); + } + + [Fact] + public void Hosted_FailsWhen_DoesnotFindMatchingEndpoint() + { + var now = DateTime.Now; + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + List candidateAssets = [ + CreateCandidate( + Path.Combine("wwwroot", "candidate.js"), + "MyPackage", + "Discovered", + "candidate.js", + "All", + "All", + "asdf1234", + "integrity" + ) + ]; + + var endpoints = CreateEndpoints(candidateAssets.Select(a => StaticWebAsset.FromTaskItem(a)).ToArray()); + endpoints = endpoints.Where(e => !e.Route.Contains("asdf1234")).ToArray(); + endpoints[0].AssetFile = Path.GetFullPath("other.js"); + + var resolvedEndpoints = new ResolveFingerprintedStaticWebAssetEndpointsForAssets + { + CandidateAssets = [.. candidateAssets], + CandidateEndpoints = [.. endpoints.Select(e => e.ToTaskItem())], + IsStandalone = false, + BuildEngine = buildEngine.Object + }; + + // Act + var result = resolvedEndpoints.Execute(); + result.Should().BeFalse(); + } + + private static ITaskItem CreateCandidate( + string itemSpec, + string sourceId, + string sourceType, + string relativePath, + string assetKind, + string assetMode, + string fingerprint = "", + string integrity = "", + string relatedAsset = "", + string assetTraitName = "", + string assetTraitValue = "") + { + var result = new StaticWebAsset() + { + Identity = Path.GetFullPath(itemSpec), + SourceId = sourceId, + SourceType = sourceType, + ContentRoot = Directory.GetCurrentDirectory(), + BasePath = "base", + RelativePath = relativePath, + AssetKind = assetKind, + AssetMode = assetMode, + AssetRole = "Primary", + RelatedAsset = relatedAsset, + AssetTraitName = assetTraitName, + AssetTraitValue = assetTraitValue, + CopyToOutputDirectory = "", + CopyToPublishDirectory = "", + OriginalItemSpec = itemSpec, + // Add these to avoid accessing the disk to compute them + Integrity = integrity, + Fingerprint = fingerprint, + FileLength = 10, + LastWriteTime = DateTime.UtcNow, + }; + + result.ApplyDefaults(); + result.Normalize(); + + return result.ToTaskItem(); + } + + private StaticWebAssetEndpoint[] CreateEndpoints(StaticWebAsset[] assets) + { + var defineStaticWebAssetEndpoints = new DefineStaticWebAssetEndpoints + { + CandidateAssets = assets.Select(a => a.ToTaskItem()).ToArray(), + ExistingEndpoints = [], + ContentTypeMappings = + [ + CreateContentMapping("*.html", "text/html"), + CreateContentMapping("*.js", "application/javascript"), + CreateContentMapping("*.css", "text/css"), + ] + }; + defineStaticWebAssetEndpoints.BuildEngine = Mock.Of(); + + defineStaticWebAssetEndpoints.Execute(); + return StaticWebAssetEndpoint.FromItemGroup(defineStaticWebAssetEndpoints.Endpoints); + } + + private static TaskItem CreateContentMapping(string pattern, string contentType) + { + return new TaskItem(contentType, new Dictionary + { + { "Pattern", pattern }, + { "Priority", "0" } + }); + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/RewriteCssTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/RewriteCssTest.cs new file mode 100644 index 000000000000..3665a85814bc --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/RewriteCssTest.cs @@ -0,0 +1,389 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using Microsoft.AspNetCore.StaticWebAssets.Tasks; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests; + +public class RewriteCssTest +{ + [Fact] + public void HandlesEmptyFile() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", string.Empty, "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(string.Empty, result); + } + + [Fact] + public void AddsScopeAfterSelector() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + .myclass { color: red; } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + .myclass[TestScope] { color: red; } +", result); + } + + [Fact] + public void HandlesMultipleSelectors() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + .first, .second { color: red; } + .third { color: blue; } + :root { color: green; } + * { color: white; } + #some-id { color: yellow; } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + .first[TestScope], .second[TestScope] { color: red; } + .third[TestScope] { color: blue; } + :root[TestScope] { color: green; } + *[TestScope] { color: white; } + #some-id[TestScope] { color: yellow; } +", result); + } + + [Fact] + public void HandlesComplexSelectors() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + .first div > li, body .second:not(.fancy)[attr~=whatever] { color: red; } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + .first div > li[TestScope], body .second:not(.fancy)[attr~=whatever][TestScope] { color: red; } +", result); + } + + [Fact] + public void HandlesSpacesAndCommentsWithinSelectors() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + .first /* space at end {} */ div , .myclass /* comment at end */ { color: red; } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + .first /* space at end {} */ div[TestScope] , .myclass[TestScope] /* comment at end */ { color: red; } +", result); + } + + [Fact] + public void HandlesPseudoClasses() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + a:fake-pseudo-class { color: red; } + a:focus b:hover { color: green; } + tr:nth-child(4n + 1) { color: blue; } + a:has(b > c) { color: yellow; } + a:last-child > ::deep b { color: pink; } + a:not(#something) { color: purple; } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + a:fake-pseudo-class[TestScope] { color: red; } + a:focus b:hover[TestScope] { color: green; } + tr:nth-child(4n + 1)[TestScope] { color: blue; } + a:has(b > c)[TestScope] { color: yellow; } + a:last-child[TestScope] > b { color: pink; } + a:not(#something)[TestScope] { color: purple; } +", result); + } + + [Fact] + public void HandlesPseudoElements() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + a::before { content: ""✋""; } + a::after::placeholder { content: ""🐯""; } + custom-element::part(foo) { content: ""🤷‍""; } + a::before > ::deep another { content: ""👞""; } + a::fake-PsEuDo-element { content: ""🐔""; } + ::selection { content: ""😾""; } + other, ::selection { content: ""👂""; } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + a[TestScope]::before { content: ""✋""; } + a[TestScope]::after::placeholder { content: ""🐯""; } + custom-element[TestScope]::part(foo) { content: ""🤷‍""; } + a[TestScope]::before > another { content: ""👞""; } + a[TestScope]::fake-PsEuDo-element { content: ""🐔""; } + [TestScope]::selection { content: ""😾""; } + other[TestScope], [TestScope]::selection { content: ""👂""; } +", result); + } + + [Fact] + public void HandlesSingleColonPseudoElements() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + a:after { content: ""x""; } + a:before { content: ""x""; } + a:first-letter { content: ""x""; } + a:first-line { content: ""x""; } + a:AFTER { content: ""x""; } + a:not(something):before { content: ""x""; } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + a[TestScope]:after { content: ""x""; } + a[TestScope]:before { content: ""x""; } + a[TestScope]:first-letter { content: ""x""; } + a[TestScope]:first-line { content: ""x""; } + a[TestScope]:AFTER { content: ""x""; } + a:not(something)[TestScope]:before { content: ""x""; } +", result); + } + + [Fact] + public void RespectsDeepCombinator() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + .first ::deep .second { color: red; } + a ::deep b, c ::deep d { color: blue; } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + .first[TestScope] .second { color: red; } + a[TestScope] b, c[TestScope] d { color: blue; } +", result); + } + + [Fact] + public void RespectsDeepCombinatorWithDirectDescendant() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + a > ::deep b { color: red; } + c ::deep > d { color: blue; } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + a[TestScope] > b { color: red; } + c[TestScope] > d { color: blue; } +", result); + } + + [Fact] + public void RespectsDeepCombinatorWithAdjacentSibling() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + a + ::deep b { color: red; } + c ::deep + d { color: blue; } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + a[TestScope] + b { color: red; } + c[TestScope] + d { color: blue; } +", result); + } + + [Fact] + public void RespectsDeepCombinatorWithGeneralSibling() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + a ~ ::deep b { color: red; } + c ::deep ~ d { color: blue; } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + a[TestScope] ~ b { color: red; } + c[TestScope] ~ d { color: blue; } +", result); + } + + [Fact] + public void IgnoresMultipleDeepCombinators() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + .first ::deep .second ::deep .third { color:red; } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + .first[TestScope] .second ::deep .third { color:red; } +", result); + } + + [Fact] + public void RespectsDeepCombinatorWithSpacesAndComments() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + .a .b /* comment ::deep 1 */ ::deep /* comment ::deep 2 */ .c /* ::deep */ .d { color: red; } + ::deep * { color: blue; } /* Leading deep combinator */ + another ::deep { color: green } /* Trailing deep combinator */ +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + .a .b[TestScope] /* comment ::deep 1 */ /* comment ::deep 2 */ .c /* ::deep */ .d { color: red; } + [TestScope] * { color: blue; } /* Leading deep combinator */ + another[TestScope] { color: green } /* Trailing deep combinator */ +", result); + } + + [Fact] + public void HandlesAtBlocks() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + .myclass { color: red; } + + @media only screen and (max-width: 600px) { + .another .thing { + content: 'This should not be a selector: .fake-selector { color: red }' + } + } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + .myclass[TestScope] { color: red; } + + @media only screen and (max-width: 600px) { + .another .thing[TestScope] { + content: 'This should not be a selector: .fake-selector { color: red }' + } + } +", result); + } + + [Fact] + public void AddsScopeToKeyframeNames() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + @keyframes my-animation { /* whatever */ } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + @keyframes my-animation-TestScope { /* whatever */ } +", result); + } + + [Fact] + public void RewritesAnimationNamesWhenMatchingKnownKeyframes() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + .myclass { + color: red; + animation: /* ignore comment */ my-animation 1s infinite; + } + + .another-thing { animation-name: different-animation; } + + h1 { animation: unknown-animation; } /* Should not be scoped */ + + @keyframes my-animation { /* whatever */ } + @keyframes different-animation { /* whatever */ } + @keyframes unused-animation { /* whatever */ } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + .myclass[TestScope] { + color: red; + animation: /* ignore comment */ my-animation-TestScope 1s infinite; + } + + .another-thing[TestScope] { animation-name: different-animation-TestScope; } + + h1[TestScope] { animation: unknown-animation; } /* Should not be scoped */ + + @keyframes my-animation-TestScope { /* whatever */ } + @keyframes different-animation-TestScope { /* whatever */ } + @keyframes unused-animation-TestScope { /* whatever */ } +", result); + } + + [Fact] + public void RewritesMultipleAnimationNames() + { + // Arrange/act + var result = RewriteCss.AddScopeToSelectors("file.css", @" + .myclass1 { animation-name: my-animation , different-animation } + .myclass2 { animation: 4s linear 0s alternate my-animation infinite, different-animation 0s } + @keyframes my-animation { } + @keyframes different-animation { } +", "TestScope", out var errors); + + // Assert + Assert.Empty(errors); + Assert.Equal(@" + .myclass1[TestScope] { animation-name: my-animation-TestScope , different-animation-TestScope } + .myclass2[TestScope] { animation: 4s linear 0s alternate my-animation-TestScope infinite, different-animation-TestScope 0s } + @keyframes my-animation-TestScope { } + @keyframes different-animation-TestScope { } +", result); + } + + [Fact] + public void RejectsImportStatements() + { + // Arrange/act + RewriteCss.AddScopeToSelectors("file.css", @" + @import ""basic-import.css""; + @import ""import-with-media-type.css"" print; + @import ""import-with-media-query.css"" screen and (orientation:landscape); + @ImPoRt /* comment */ ""scheme://path/to/complex-import"" /* another-comment */ screen; + @otheratrule ""should-not-cause-error.css""; + /* @import ""should-be-ignored-because-it-is-in-a-comment.css""; */ + .myclass { color: red; } +", "TestScope", out var errors); + + // Assert + Assert.Collection(errors, + error => Assert.Equal("file.css(2,5): @import rules are not supported within scoped CSS files because the loading order would be undefined. @import may only be placed in non-scoped CSS files.", error.ToString()), + error => Assert.Equal("file.css(3,5): @import rules are not supported within scoped CSS files because the loading order would be undefined. @import may only be placed in non-scoped CSS files.", error.ToString()), + error => Assert.Equal("file.css(4,5): @import rules are not supported within scoped CSS files because the loading order would be undefined. @import may only be placed in non-scoped CSS files.", error.ToString()), + error => Assert.Equal("file.css(5,5): @import rules are not supported within scoped CSS files because the loading order would be undefined. @import may only be placed in non-scoped CSS files.", error.ToString())); + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/StaticWebAssetPathPatternTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/StaticWebAssetPathPatternTest.cs new file mode 100644 index 000000000000..2f0033ac99b5 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/StaticWebAssetPathPatternTest.cs @@ -0,0 +1,724 @@ +// 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 System.Globalization; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests.StaticWebAssets; + +public class StaticWebAssetPathPatternTest +{ + [Fact] + public void CanParse_PathWithNoExpressions() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site.css", "MyApp"); + var expected = new StaticWebAssetPathPattern("css/site.css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "css/site.css".AsMemory(), IsLiteral = true }] } + ] + }; + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_ComplexFingerprintExpression_Middle() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}].css", "MyApp"); + var expected = new StaticWebAssetPathPattern("css/site#[.{fingerprint}].css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "css/site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, + new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_ComplexFingerprintExpression_Start() + { + var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}].css", "MyApp"); + var expected = new StaticWebAssetPathPattern("#[.{fingerprint}].css") + { + Segments = + [ + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, + new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_ComplexFingerprintExpression_End() + { + var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]", "MyApp"); + var expected = new StaticWebAssetPathPattern("site#[.{fingerprint}]") + { + Segments = + [ + new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_ComplexFingerprintExpression_Only() + { + var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}]", "MyApp"); + var expected = new StaticWebAssetPathPattern("#[.{fingerprint}]") + { + Segments = + [ + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_ComplexFingerprintExpression_Multiple() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}]-#[.{version}].css", "MyApp"); + var expected = new StaticWebAssetPathPattern("css/site#[.{fingerprint}]-#[.{version}].css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "css/site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, + new (){ Parts = [ new() { Name = "-".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "version".AsMemory(), IsLiteral = false }] }, + new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_ComplexFingerprintExpression_ConsecutiveExpressions() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}]#[.{version}].css", "MyApp"); + var expected = new StaticWebAssetPathPattern("css/site#[.{fingerprint}]#[.{version}].css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "css/site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "version".AsMemory(), IsLiteral = false }] }, + new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_SimpleFingerprintExpression_Start() + { + var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint}].css", "MyApp"); + var expected = new StaticWebAssetPathPattern("#[{fingerprint}].css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, + new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_SimpleFingerprintExpression_Middle() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[{fingerprint}].css", "MyApp"); + var expected = new StaticWebAssetPathPattern("css/site#[{fingerprint}].css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "css/site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, + new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_SimpleFingerprintExpression_End() + { + var pattern = StaticWebAssetPathPattern.Parse("site#[{fingerprint}]", "MyApp"); + var expected = new StaticWebAssetPathPattern("site#[{fingerprint}]") + { + Segments = + [ + new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_SimpleFingerprintExpression_Only() + { + var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint}]", "MyApp"); + var expected = new StaticWebAssetPathPattern("#[{fingerprint}]") + { + Segments = + [ + new (){ Parts = [ new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_SimpleFingerprintExpression_WithEmbeddedValues() + { + var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint=value}]", "MyApp"); + var expected = new StaticWebAssetPathPattern("#[{fingerprint=value}]") + { + Segments = + [ + new (){ Parts = [ new() { Name = "fingerprint".AsMemory(), Value = "value".AsMemory(), IsLiteral = false }] } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_ComplexExpression_MultipleVariables() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}-{version}].css", "MyApp"); + var expected = new StaticWebAssetPathPattern("css/site#[.{fingerprint}-{version}].css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "css/site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ + new() { Name = ".".AsMemory(), IsLiteral = true }, + new() { Name = "fingerprint".AsMemory(), IsLiteral = false }, + new() { Name = "-".AsMemory(), IsLiteral = true }, + new() { Name = "version".AsMemory(), IsLiteral = false } + ] }, + new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_ComplexExpression_MultipleConsecutiveVariables() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}{version}].css", "MyApp"); + var expected = new StaticWebAssetPathPattern("css/site#[.{fingerprint}{version}].css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "css/site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ + new() { Name = ".".AsMemory(), IsLiteral = true }, + new() { Name = "fingerprint".AsMemory(), IsLiteral = false }, + new() { Name = "version".AsMemory(), IsLiteral = false } + ] }, + new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_ComplexExpression_StartsWithVariable() + { + var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint}.]css", "MyApp"); + var expected = new StaticWebAssetPathPattern("#[{fingerprint}.]css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "fingerprint".AsMemory(), IsLiteral = false }, new() { Name = ".".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = "css".AsMemory(), IsLiteral = true }] } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_OptionalExpressions_End() + { + var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]?", "MyApp"); + var expected = new StaticWebAssetPathPattern("site#[.{fingerprint}]?") + { + Segments = + [ + new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }], IsOptional = true } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_OptionalPreferredExpressions() + { + var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]!", "MyApp"); + var expected = new StaticWebAssetPathPattern("site#[.{fingerprint}]!") + { + Segments = + [ + new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }], IsOptional = true, IsPreferred = true } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_OptionalExpressions_Start() + { + var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}]?site", "MyApp"); + var expected = new StaticWebAssetPathPattern("#[.{fingerprint}]?site") + { + Segments = + [ + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }], IsOptional = true }, + new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] + }] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_OptionalExpressions_Middle() + { + var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]?site", "MyApp"); + var expected = new StaticWebAssetPathPattern("site#[.{fingerprint}]?site") + { + Segments = + [ + new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }], IsOptional = true }, + new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] + }] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_OptionalExpressions_Only() + { + var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}]?", "MyApp"); + var expected = new StaticWebAssetPathPattern("#[.{fingerprint}]?") + { + Segments = + [ + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }], IsOptional = true } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_MultipleOptionalExpressions() + { + var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}]?site#[.{version}]?", "MyApp"); + var expected = new StaticWebAssetPathPattern("#[.{fingerprint}]?site#[.{version}]?") + { + Segments = + [ + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }], IsOptional = true }, + new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }], IsOptional = false }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "version".AsMemory(), IsLiteral = false }], IsOptional = true } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanParse_ConsecutiveOptionalExpressions() + { + var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}]?#[.{version}]?", "MyApp"); + var expected = new StaticWebAssetPathPattern("#[.{fingerprint}]?#[.{version}]?") + { + Segments = + [ + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }], IsOptional = true }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "version".AsMemory(), IsLiteral = false }], IsOptional = true } + ] + }; + + Assert.Equal(expected, pattern); + } + + [Fact] + public void CanReplaceTokens_PathWithNoExpressions() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site.css", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234" + }; + var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); + + Assert.Equal("css/site.css", path); + } + + [Fact] + public void CanReplaceTokens_ComplexFingerprintExpression_Middle() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}].css", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234" + }; + var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); + + Assert.Equal("css/site.asdf1234.css", path); + } + + [Fact] + public void CanReplaceTokens_ComplexFingerprintExpression_Start() + { + var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}].css", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234" + }; + var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); + + Assert.Equal(".asdf1234.css", path); + } + + [Fact] + public void CanReplaceTokens_ComplexFingerprintExpression_End() + { + var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234" + }; + var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); + + Assert.Equal("site.asdf1234", path); + } + + [Fact] + public void CanReplaceTokens_ComplexFingerprintExpression_Only() + { + var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}]", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234" + }; + var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); + + Assert.Equal(".asdf1234", path); + } + + [Fact] + public void CanReplaceTokens_ComplexFingerprintExpression_Multiple() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}]-#[.{version}].css", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234", + }; + var (path, _) = pattern.ReplaceTokens( + tokens, + CreateTestResolver(new Dictionary(StringComparer.OrdinalIgnoreCase) { ["version"] = "v1" })); + + Assert.Equal("css/site.asdf1234-.v1.css", path); + } + + [Fact] + public void CanReplaceTokens_ComplexFingerprintExpression_ConsecutiveExpressions() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}]#[.{version}].css", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234", + }; + var (path, _) = pattern.ReplaceTokens( + tokens, + CreateTestResolver(new Dictionary(StringComparer.OrdinalIgnoreCase) { ["version"] = "v1" })); + + Assert.Equal("css/site.asdf1234.v1.css", path); + } + + [Fact] + public void CanReplaceTokens_SimpleFingerprintExpression_Start() + { + var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint}].css", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234" + }; + var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); + + Assert.Equal("asdf1234.css", path); + } + + [Fact] + public void CanReplaceTokens_SimpleFingerprintExpression_Middle() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[{fingerprint}].css", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234" + }; + var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); + + Assert.Equal("css/siteasdf1234.css", path); + } + + [Fact] + public void CanReplaceTokens_SimpleFingerprintExpression_End() + { + var pattern = StaticWebAssetPathPattern.Parse("site#[{fingerprint}]", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234" + }; + var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); + + Assert.Equal("siteasdf1234", path); + } + + [Fact] + public void CanReplaceTokens_SimpleFingerprintExpression_Only() + { + var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint}]", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234" + }; + var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); + + Assert.Equal("asdf1234", path); + } + + [Fact] + public void CanReplaceTokens_SimpleFingerprintExpression_WithEmbeddedValues() + { + var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint=embedded}]", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234" + }; + var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); + + Assert.Equal("embedded", path); + } + + [Fact] + public void CanReplaceTokens_ComplexExpression_MultipleVariables() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}-{version}].css", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234", + }; + var (path, _) = pattern.ReplaceTokens( + tokens, + CreateTestResolver(new Dictionary(StringComparer.OrdinalIgnoreCase) { ["version"] = "v1" })); + + Assert.Equal("css/site.asdf1234-v1.css", path); + } + + [Fact] + public void CanReplaceTokens_ComplexExpression_MultipleConsecutiveVariables() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}{version}].css", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234", + }; + var (path, _) = pattern.ReplaceTokens( + tokens, + CreateTestResolver(new Dictionary(StringComparer.OrdinalIgnoreCase) { ["version"] = "v1" })); + + Assert.Equal("css/site.asdf1234v1.css", path); + } + + [Fact] + public void CanReplaceTokens_ComplexExpression_StartsWithVariable() + { + var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint}.]css", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234" + }; + var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); + + Assert.Equal("asdf1234.css", path); + } + + [Fact] + public void CanReplaceTokens_ThrowsException_IfRequiredExpressionIsValue() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}].css", "MyApp"); + var tokens = new StaticWebAsset(); + var exception = Assert.Throws(() => pattern.ReplaceTokens(tokens, CreateTestResolver())); + Assert.Equal("Token 'fingerprint' not provided for 'css/site#[.{fingerprint}].css'.", exception.Message); + } + + [Fact] + public void CanReplaceTokens_ThrowsException_MultipleTokenComplexExpression_MissingAtLeastOneValue() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}-{version}].css", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234" + }; + var exception = Assert.Throws(() => pattern.ReplaceTokens(tokens, CreateTestResolver())); + Assert.Equal("Token 'version' not provided for 'css/site#[.{fingerprint}-{version}].css'.", exception.Message); + } + + [Fact] + public void CanReplaceTokens_OptionalExpression_OmittedWhenValueNotProvided() + { + var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]?", "MyApp"); + var tokens = new StaticWebAsset(); + var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); + + Assert.Equal("site", path); + } + + [Fact] + public void CanReplaceTokens_OptionalMultipleTokenComplexExpression_OmittedWhenMissingAtLeastOneValue() + { + var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}.{version}]?", "MyApp"); + var tokens = new StaticWebAsset + { + Fingerprint = "asdf1234" + }; + var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); + + Assert.Equal("site", path); + } + + [Fact] + public void CanExpandRoutes_LiteralPatterns() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site.css", "MyApp"); + var routePatterns = pattern.ExpandPatternExpression(); + + Assert.Equal([pattern], routePatterns); + } + + [Fact] + public void CanExpandRoutes_SingleRequiredExpression() + { + var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}].css", "MyApp"); + var routePatterns = pattern.ExpandPatternExpression(); + + Assert.Equal([pattern], routePatterns); + } + + [Fact] + public void CanExpandRoutes_SingleOptionalExpression() + { + var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]?.css", "MyApp"); + var routePatterns = pattern.ExpandPatternExpression(); + + var expected = new[] + { + new StaticWebAssetPathPattern("site.css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } + ] + }, + new StaticWebAssetPathPattern("site#[.{fingerprint}].css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, + new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } + ] + } + }; + + Assert.Equal(expected, routePatterns); + } + + [Fact] + public void CanExpandRoutes_MultipleOptionalExpressions() + { + var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]?#[.{version}]?.css", "MyApp"); + var routePatterns = pattern.ExpandPatternExpression(); + + var expected = new[] + { + new StaticWebAssetPathPattern("site.css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } + ] + }, + new StaticWebAssetPathPattern("site#[.{fingerprint}].css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, + new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } + ] + }, + new StaticWebAssetPathPattern("site#[.{version}].css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "version".AsMemory(), IsLiteral = false }] }, + new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } + ] + }, + new StaticWebAssetPathPattern("site#[.{fingerprint}]#[.{version}].css") + { + Segments = + [ + new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, + new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "version".AsMemory(), IsLiteral = false }] }, + new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } + ] + } + }; + + Assert.Equal(expected, routePatterns); + } + + private static StaticWebAssetTokenResolver CreateTestResolver(Dictionary additionalTokens = null) => new(additionalTokens); +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/StaticWebAssetsGeneratePackagePropsFileTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/StaticWebAssetsGeneratePackagePropsFileTest.cs new file mode 100644 index 000000000000..15738d2dac43 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/StaticWebAssetsGeneratePackagePropsFileTest.cs @@ -0,0 +1,49 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Moq; + +namespace Microsoft.AspNetCore.Razor.Tasks +{ + public class StaticWebAssetsGeneratePackagePropsFileTest + { + [Fact] + public void WritesPropsFile_WithProvidedImportPath() + { + // Arrange + var file = Path.GetTempFileName(); + var expectedDocument = @" + +"; + + try + { + var buildEngine = new Mock(); + + var task = new StaticWebAssetsGeneratePackagePropsFile + { + BuildEngine = buildEngine.Object, + PropsFileImport = "Microsoft.AspNetCore.StaticWebAssets.props", + BuildTargetPath = file + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + var document = File.ReadAllText(file); + document.Should().Contain(expectedDocument); + } + finally + { + if (File.Exists(file)) + { + File.Delete(file); + } + } + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/UpdateExternallyDefinedStaticWebAssetsTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/UpdateExternallyDefinedStaticWebAssetsTest.cs new file mode 100644 index 000000000000..9c2e008f4610 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/UpdateExternallyDefinedStaticWebAssetsTest.cs @@ -0,0 +1,257 @@ +// 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; +using Microsoft.Build.Utilities; +using Moq; + +namespace Microsoft.AspNetCore.StaticWebAssets.Tasks; + +public class UpdateExternallyDefinedStaticWebAssetsTest +{ + [Fact] + public void Execute_UpdatesAssetsWithoutFingerprint() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + Directory.CreateDirectory(Path.Combine(AppContext.BaseDirectory, "dist", "assets")); + File.WriteAllText(Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"), "body { color: red; }"); + File.WriteAllText(Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), ""); + var assets = new ITaskItem [] { + new TaskItem( + Path.Combine(AppContext.BaseDirectory, @"dist\assets\index-C5tBAdQX.css"), + new Dictionary + { + ["RelativePath"] = "assets/index-C5tBAdQX.css", + ["BasePath"] = "", + ["AssetMode"] = "All", + ["AssetKind"] = "Publish", + ["SourceId"] = "MyProject", + ["CopyToOutputDirectory"] = "PreserveNewest", + ["RelatedAsset"] = "", + ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "dist"), + ["SourceType"] = "Discovered", + ["AssetRole"] = "Primary", + ["AssetTraitValue"] = "", + ["AssetTraitName"] = "", + ["OriginalItemSpec"] = Path.Combine(AppContext.BaseDirectory, @"dist\assets\index-C5tBAdQX.css"), + ["CopyToPublishDirectory"] = "PreserveNewest" + }), + new TaskItem( + Path.Combine(AppContext.BaseDirectory, @"dist\index.html"), + new Dictionary + { + ["RelativePath"] = "index.html", + ["BasePath"] = "", + ["AssetMode"] = "All", + ["AssetKind"] = "Publish", + ["SourceId"] = "MyProject", + ["CopyToOutputDirectory"] = "PreserveNewest", + ["RelatedAsset"] = "", + ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "dist"), + ["SourceType"] = "Discovered", + ["AssetRole"] = "Primary", + ["AssetTraitValue"] = "", + ["AssetTraitName"] = "", + ["OriginalItemSpec"] = Path.Combine(AppContext.BaseDirectory, @"dist\index.html"), + ["CopyToPublishDirectory"] = "PreserveNewest" + }) + }; + + var task = new UpdateExternallyDefinedStaticWebAssets + { + Assets = assets, + Endpoints = [], + BuildEngine = buildEngine.Object + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeTrue(); + + task.UpdatedAssets.Should().HaveCount(2); + task.AssetsWithoutEndpoints.Should().HaveCount(2); + task.UpdatedAssets[0].GetMetadata("Fingerprint").Should().NotBeNullOrEmpty(); + task.UpdatedAssets[1].GetMetadata("Fingerprint").Should().NotBeNullOrEmpty(); + task.UpdatedAssets[0].GetMetadata("Integrity").Should().NotBeNullOrEmpty(); + task.UpdatedAssets[1].GetMetadata("Integrity").Should().NotBeNullOrEmpty(); + } + + [Fact] + public void Execute_DoesNotAddAssets_WithEndpointsTo_AssetsWithoutEndpoints() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + Directory.CreateDirectory(Path.Combine(AppContext.BaseDirectory, "dist", "assets")); + File.WriteAllText(Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"), "body { color: red; }"); + File.WriteAllText(Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), ""); + var assets = new ITaskItem[] { + new TaskItem( + Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"), + new Dictionary + { + ["RelativePath"] = "assets/index-C5tBAdQX.css", + ["BasePath"] = "", + ["AssetMode"] = "All", + ["AssetKind"] = "Publish", + ["SourceId"] = "MyProject", + ["CopyToOutputDirectory"] = "PreserveNewest", + ["RelatedAsset"] = "", + ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "dist"), + ["SourceType"] = "Discovered", + ["AssetRole"] = "Primary", + ["AssetTraitValue"] = "", + ["AssetTraitName"] = "", + ["OriginalItemSpec"] = Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"), + ["CopyToPublishDirectory"] = "PreserveNewest" + }), + new TaskItem( + Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), + new Dictionary + { + ["RelativePath"] = "index.html", + ["BasePath"] = "", + ["AssetMode"] = "All", + ["AssetKind"] = "Publish", + ["SourceId"] = "MyProject", + ["CopyToOutputDirectory"] = "PreserveNewest", + ["RelatedAsset"] = "", + ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "dist"), + ["SourceType"] = "Discovered", + ["AssetRole"] = "Primary", + ["AssetTraitValue"] = "", + ["AssetTraitName"] = "", + ["OriginalItemSpec"] = Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), + ["CopyToPublishDirectory"] = "PreserveNewest" + }) + }; + + var task = new UpdateExternallyDefinedStaticWebAssets + { + Assets = assets, + Endpoints = [ + new TaskItem( + "index.html", + new Dictionary + { + ["Route"] = "/index.html", + ["AssetFile"] = Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), + ["Selectors"] = "[]", + ["ResponseHeaders"] = "[]", + ["EndpointProperties"] = "[]" + }) + ], + BuildEngine = buildEngine.Object + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeTrue(); + + task.UpdatedAssets.Should().HaveCount(2); + task.AssetsWithoutEndpoints.Should().HaveCount(1); + task.AssetsWithoutEndpoints[0].ItemSpec.Should().Be(Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css")); + task.UpdatedAssets[0].GetMetadata("Fingerprint").Should().NotBeNullOrEmpty(); + task.UpdatedAssets[1].GetMetadata("Fingerprint").Should().NotBeNullOrEmpty(); + task.UpdatedAssets[0].GetMetadata("Integrity").Should().NotBeNullOrEmpty(); + task.UpdatedAssets[1].GetMetadata("Integrity").Should().NotBeNullOrEmpty(); + } + + [Fact] + public void Execute_InfersFingerprint_ForMatchingAssets() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + Directory.CreateDirectory(Path.Combine(AppContext.BaseDirectory, "dist", "assets")); + File.WriteAllText(Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"), "body { color: red; }"); + File.WriteAllText(Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), ""); + var assets = new ITaskItem[] { + new TaskItem( + Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"), + new Dictionary + { + ["RelativePath"] = "assets/index-C5tBAdQX.css", + ["BasePath"] = "", + ["AssetMode"] = "All", + ["AssetKind"] = "Publish", + ["SourceId"] = "MyProject", + ["CopyToOutputDirectory"] = "PreserveNewest", + ["RelatedAsset"] = "", + ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "dist"), + ["SourceType"] = "Discovered", + ["AssetRole"] = "Primary", + ["AssetTraitValue"] = "", + ["AssetTraitName"] = "", + ["OriginalItemSpec"] = Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"), + ["CopyToPublishDirectory"] = "PreserveNewest" + }), + new TaskItem( + Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), + new Dictionary + { + ["RelativePath"] = "index.html", + ["BasePath"] = "", + ["AssetMode"] = "All", + ["AssetKind"] = "Publish", + ["SourceId"] = "MyProject", + ["CopyToOutputDirectory"] = "PreserveNewest", + ["RelatedAsset"] = "", + ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "dist"), + ["SourceType"] = "Discovered", + ["AssetRole"] = "Primary", + ["AssetTraitValue"] = "", + ["AssetTraitName"] = "", + ["OriginalItemSpec"] = Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), + ["CopyToPublishDirectory"] = "PreserveNewest" + }) + }; + + var fingerprintExpressions = new TaskItem[] + { + new TaskItem( + "React", + new Dictionary + { + ["Pattern"] = "assets/.*-(?.+)\\..*", + }) + }; + + var task = new UpdateExternallyDefinedStaticWebAssets + { + FingerprintInferenceExpressions = fingerprintExpressions, + Assets = assets, + Endpoints = [], + BuildEngine = buildEngine.Object + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().BeTrue(); + task.UpdatedAssets.Should().HaveCount(2); + task.UpdatedAssets[0].GetMetadata("Fingerprint").Should().Be("C5tBAdQX"); + task.UpdatedAssets[0].GetMetadata("RelativePath").Should().Be("assets/index-#[{fingerprint}].css"); + task.UpdatedAssets[1].GetMetadata("Fingerprint").Should().NotBeNullOrEmpty(); + task.UpdatedAssets[0].GetMetadata("Integrity").Should().NotBeNullOrEmpty(); + task.UpdatedAssets[1].GetMetadata("Integrity").Should().NotBeNullOrEmpty(); + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/UpdateStaticWebAssetEndpointsTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/UpdateStaticWebAssetEndpointsTest.cs new file mode 100644 index 000000000000..43956cf963c3 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/UpdateStaticWebAssetEndpointsTest.cs @@ -0,0 +1,381 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests.StaticWebAssets; + +public class UpdateStaticWebAssetEndpointsTest +{ + [Fact] + public void CanUpdateEndpoint_AppendResponseHeaders() + { + // Arrrange + var assets = new[] { + CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), + CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), + CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), + CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), + CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), + CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), + }; + Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); + + var endpoints = CreateEndpoints(assets); + var fingerprintedEndpoints = endpoints.Where(e => e.EndpointProperties.Any(p => string.Equals(p.Name, "fingerprint", StringComparison.Ordinal))).ToArray(); + foreach (var endpoint in fingerprintedEndpoints) + { + endpoint.ResponseHeaders = endpoint.ResponseHeaders.Where(h => !string.Equals(h.Name, "Cache-Control", StringComparison.Ordinal)).ToArray(); + } + + var filterStaticWebAssetEndpoints = new UpdateStaticWebAssetEndpoints + { + EndpointsToUpdate = fingerprintedEndpoints.Select(e => e.ToTaskItem()).ToArray(), + AllEndpoints = endpoints.Select(e => e.ToTaskItem()).ToArray(), + Operations = + [ + CreateOperation("Append", "Header", "Cache-Control", "immutable") + ], + BuildEngine = Mock.Of() + }; + + // Act + var result = filterStaticWebAssetEndpoints.Execute(); + result.Should().BeTrue(); + + // Assert + var updatedEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterStaticWebAssetEndpoints.UpdatedEndpoints); + updatedEndpoints.Should().HaveCount(fingerprintedEndpoints.Length); + foreach (var updatedEndpoint in updatedEndpoints) + { + updatedEndpoint.ResponseHeaders.Should().ContainSingle(h => string.Equals(h.Name, "Cache-Control", StringComparison.Ordinal) && string.Equals(h.Value, "immutable")); + } + } + + [Fact] + public void CanUpdateEndpoint_RemoveResponseHeaders() + { + // Arrrange + var assets = new[] { + CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), + CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), + CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), + CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), + CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), + CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), + }; + Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); + + var endpoints = CreateEndpoints(assets); + var fingerprintedEndpoints = endpoints.Where(e => e.EndpointProperties.Any(p => string.Equals(p.Name, "fingerprint", StringComparison.Ordinal))).ToArray(); + + var filterStaticWebAssetEndpoints = new UpdateStaticWebAssetEndpoints + { + EndpointsToUpdate = fingerprintedEndpoints.Select(e => e.ToTaskItem()).ToArray(), + AllEndpoints = endpoints.Select(e => e.ToTaskItem()).ToArray(), + Operations = + [ + CreateOperation("Remove", "Header", "Cache-Control", null) + ], + BuildEngine = Mock.Of() + }; + + // Act + var result = filterStaticWebAssetEndpoints.Execute(); + result.Should().BeTrue(); + + // Assert + var updatedEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterStaticWebAssetEndpoints.UpdatedEndpoints); + updatedEndpoints.Should().HaveCount(fingerprintedEndpoints.Length); + foreach (var updatedEndpoint in updatedEndpoints) + { + updatedEndpoint.ResponseHeaders.Should().NotContain(h => string.Equals(h.Name, "Cache-Control", StringComparison.Ordinal)); + } + } + + [Fact] + public void CanUpdateEndpoint_RemoveAllResponseHeaders() + { + // Arrrange + var assets = new[] { + CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), + CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), + CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), + CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), + CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), + CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), + }; + Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); + + var endpoints = CreateEndpoints(assets); + var fingerprintedEndpoints = endpoints.Where(e => e.EndpointProperties.Any(p => string.Equals(p.Name, "fingerprint", StringComparison.Ordinal))).ToArray(); + foreach (var endpoint in fingerprintedEndpoints) + { + endpoint.ResponseHeaders = [.. endpoint.ResponseHeaders, new StaticWebAssetEndpointResponseHeader { Name = "ETag", Value = "W/\"integrity\"" }]; + } + + var filterStaticWebAssetEndpoints = new UpdateStaticWebAssetEndpoints + { + EndpointsToUpdate = fingerprintedEndpoints.Select(e => e.ToTaskItem()).ToArray(), + AllEndpoints = endpoints.Select(e => e.ToTaskItem()).ToArray(), + Operations = + [ + CreateOperation("RemoveAll", "Header", "ETag", null) + ], + BuildEngine = Mock.Of() + }; + + // Act + var result = filterStaticWebAssetEndpoints.Execute(); + result.Should().BeTrue(); + + // Assert + var updatedEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterStaticWebAssetEndpoints.UpdatedEndpoints); + updatedEndpoints.Should().HaveCount(fingerprintedEndpoints.Length); + foreach (var updatedEndpoint in updatedEndpoints) + { + updatedEndpoint.ResponseHeaders.Should().NotContain(h => string.Equals(h.Name, "ETag", StringComparison.Ordinal)); + } + } + + [Fact] + public void CanUpdateEndpoint_RemoveAllResponseHeadersWithValue() + { + // Arrrange + var assets = new[] { + CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), + CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), + CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), + CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), + CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), + CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), + }; + Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); + + var endpoints = CreateEndpoints(assets); + var fingerprintedEndpoints = endpoints.Where(e => e.EndpointProperties.Any(p => string.Equals(p.Name, "fingerprint", StringComparison.Ordinal))).ToArray(); + foreach (var endpoint in fingerprintedEndpoints) + { + endpoint.ResponseHeaders = [.. endpoint.ResponseHeaders, new StaticWebAssetEndpointResponseHeader { Name = "ETag", Value = "W/\"integrity\"" }]; + } + + var filterStaticWebAssetEndpoints = new UpdateStaticWebAssetEndpoints + { + EndpointsToUpdate = fingerprintedEndpoints.Select(e => e.ToTaskItem()).ToArray(), + AllEndpoints = endpoints.Select(e => e.ToTaskItem()).ToArray(), + Operations = + [ + CreateOperation("RemoveAll", "Header", "ETag", "W/\"integrity\"") + ], + BuildEngine = Mock.Of() + }; + + // Act + var result = filterStaticWebAssetEndpoints.Execute(); + result.Should().BeTrue(); + + // Assert + var updatedEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterStaticWebAssetEndpoints.UpdatedEndpoints); + updatedEndpoints.Should().HaveCount(fingerprintedEndpoints.Length); + foreach (var updatedEndpoint in updatedEndpoints) + { + updatedEndpoint.ResponseHeaders.Should().ContainSingle(h => string.Equals(h.Name, "ETag", StringComparison.Ordinal) && string.Equals(h.Value, "\"integrity\"", StringComparison.Ordinal)); + updatedEndpoint.ResponseHeaders.Should().NotContain(h => string.Equals(h.Name, "ETag", StringComparison.Ordinal) && string.Equals(h.Value, "W/\"integrity\"", StringComparison.Ordinal)); + } + } + + [Fact] + public void CanUpdateEndpoint_ReplaceResponseHeaders() + { + // Arrrange + var assets = new[] { + CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), + CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), + CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), + CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), + CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), + CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), + }; + Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); + + var endpoints = CreateEndpoints(assets); + var fingerprintedEndpoints = endpoints.Where(e => e.EndpointProperties.Any(p => string.Equals(p.Name, "fingerprint", StringComparison.Ordinal))).ToArray(); + + var filterStaticWebAssetEndpoints = new UpdateStaticWebAssetEndpoints + { + EndpointsToUpdate = endpoints.Select(e => e.ToTaskItem()).ToArray(), + AllEndpoints = endpoints.Select(e => e.ToTaskItem()).ToArray(), + Operations = + [ + CreateOperation("Replace", "Header", "Cache-Control", "max-age=31536000, immutable", "immutable") + ], + BuildEngine = Mock.Of() + }; + + // Act + var result = filterStaticWebAssetEndpoints.Execute(); + result.Should().BeTrue(); + + // Assert + var updatedEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterStaticWebAssetEndpoints.UpdatedEndpoints); + updatedEndpoints.Should().HaveCount(fingerprintedEndpoints.Length); + foreach (var updatedEndpoint in updatedEndpoints) + { + updatedEndpoint.ResponseHeaders.Should().ContainSingle(h => string.Equals(h.Name, "Cache-Control", StringComparison.Ordinal) && string.Equals(h.Value, "immutable")); + } + } + + [Fact] + public void CanUpdateEndpoint_RetainsNonModifiedEndpointsWithSameRoute() + { + // Arrrange + var assets = new[] { + CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), + CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), + CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), + CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), + CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), + CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), + }; + Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); + + var endpoints = CreateEndpoints(assets); + var fingerprintedEndpoints = endpoints.Where(e => e.EndpointProperties.Any(p => string.Equals(p.Name, "fingerprint", StringComparison.Ordinal))).ToArray(); + + var unmodifiedEndpoint = new StaticWebAssetEndpoint + { + Route = fingerprintedEndpoints[0].Route, + AssetFile = fingerprintedEndpoints[0].AssetFile + ".gz", + Selectors = [new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip" }], + ResponseHeaders = [.. fingerprintedEndpoints[0].ResponseHeaders], + EndpointProperties = [.. fingerprintedEndpoints[0].EndpointProperties] + }; + + endpoints = [..endpoints, unmodifiedEndpoint]; + + foreach (var endpoint in fingerprintedEndpoints) + { + endpoint.ResponseHeaders = endpoint.ResponseHeaders.Where(h => !string.Equals(h.Name, "Cache-Control", StringComparison.Ordinal)).ToArray(); + } + + var filterStaticWebAssetEndpoints = new UpdateStaticWebAssetEndpoints + { + EndpointsToUpdate = fingerprintedEndpoints.Select(e => e.ToTaskItem()).ToArray(), + AllEndpoints = endpoints.Select(e => e.ToTaskItem()).ToArray(), + Operations = + [ + CreateOperation("Append", "Header", "Cache-Control", "immutable") + ], + BuildEngine = Mock.Of() + }; + + // Act + var result = filterStaticWebAssetEndpoints.Execute(); + result.Should().BeTrue(); + + // Assert + var updatedEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterStaticWebAssetEndpoints.UpdatedEndpoints); + updatedEndpoints.Should().HaveCount(fingerprintedEndpoints.Length + 1); + var updatedUnmodifiedEndpoint = updatedEndpoints.Where(e => e.AssetFile.EndsWith(".gz")); + updatedUnmodifiedEndpoint.Should().HaveCount(1); + + var updatedModifiedEndpoints = updatedEndpoints.Where(e => !e.AssetFile.EndsWith(".gz")); + updatedModifiedEndpoints.Should().HaveCount(fingerprintedEndpoints.Length); + foreach (var updatedEndpoint in updatedModifiedEndpoints) + { + updatedEndpoint.ResponseHeaders.Should().ContainSingle(h => string.Equals(h.Name, "Cache-Control", StringComparison.Ordinal) && string.Equals(h.Value, "immutable")); + } + } + + private static ITaskItem CreateOperation(string type, string target, string name, string value, string newValue = null) + { + return new TaskItem(type, new Dictionary + { + { "UpdateTarget", target }, + { "Name", name }, + { "Value", value }, + { "NewValue", newValue } + }); + } + + private StaticWebAssetEndpoint[] CreateEndpoints(StaticWebAsset[] assets) + { + var defineStaticWebAssetEndpoints = new DefineStaticWebAssetEndpoints + { + CandidateAssets = assets.Select(a => a.ToTaskItem()).ToArray(), + ExistingEndpoints = [], + ContentTypeMappings = + [ + CreateContentMapping("*.html", "text/html"), + CreateContentMapping("*.js", "application/javascript"), + CreateContentMapping("*.css", "text/css"), + ] + }; + defineStaticWebAssetEndpoints.BuildEngine = Mock.Of(); + + defineStaticWebAssetEndpoints.Execute(); + return StaticWebAssetEndpoint.FromItemGroup(defineStaticWebAssetEndpoints.Endpoints); + } + + private static TaskItem CreateContentMapping(string pattern, string contentType) + { + return new TaskItem(contentType, new Dictionary + { + { "Pattern", pattern }, + { "Priority", "0" } + }); + } + + + private static StaticWebAsset CreateAsset( + string itemSpec, + string sourceId = "MyApp", + string sourceType = "Discovered", + string relativePath = null, + string assetKind = "All", + string assetMode = "All", + string basePath = "base", + string assetRole = "Primary", + string relatedAsset = "", + string assetTraitName = "", + string assetTraitValue = "", + string copyToOutputDirectory = "Never", + string copytToPublishDirectory = "PreserveNewest") + { + var result = new StaticWebAsset() + { + Identity = Path.GetFullPath(itemSpec), + SourceId = sourceId, + SourceType = sourceType, + ContentRoot = Directory.GetCurrentDirectory(), + BasePath = basePath, + RelativePath = relativePath ?? itemSpec, + AssetKind = assetKind, + AssetMode = assetMode, + AssetRole = assetRole, + AssetMergeBehavior = StaticWebAsset.MergeBehaviors.PreferTarget, + AssetMergeSource = "", + RelatedAsset = relatedAsset, + AssetTraitName = assetTraitName, + AssetTraitValue = assetTraitValue, + CopyToOutputDirectory = copyToOutputDirectory, + CopyToPublishDirectory = copytToPublishDirectory, + OriginalItemSpec = itemSpec, + // Add these to avoid accessing the disk to compute them + Integrity = "integrity", + Fingerprint = "fingerprint", + FileLength = 10, + LastWriteTime = DateTimeOffset.UtcNow, + }; + + result.ApplyDefaults(); + result.Normalize(); + + return result; + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ValidateStaticWebAssetsUniquePathsTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ValidateStaticWebAssetsUniquePathsTest.cs new file mode 100644 index 000000000000..fe6518ed6bda --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssets/ValidateStaticWebAssetsUniquePathsTest.cs @@ -0,0 +1,216 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using Moq; + +namespace Microsoft.AspNetCore.Razor.Tasks +{ + public class ValidateStaticWebAssetsUniquePathsTest + { + [Fact] + public void ReturnsError_WhenStaticWebAssetsWebRootPathMatchesExistingContentItemPath() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ValidateStaticWebAssetsUniquePaths + { + BuildEngine = buildEngine.Object, + StaticWebAssets = new TaskItem[] + { + CreateItem(Path.Combine("wwroot", "js", "project-transitive-dep.js"), new Dictionary + { + ["BasePath"] = "_content/ClassLibrary", + ["RelativePath"] = "js/project-transitive-dep.js", + ["SourceId"] = "ClassLibrary", + ["SourceType"] = "Project", + }), + }, + WebRootFiles = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot", "_content", "ClassLibrary", "js", "project-transitive-dep.js"), new Dictionary + { + ["CopyToPublishDirectory"] = "PreserveNewest", + ["ExcludeFromSingleFile"] = "true", + ["OriginalItemSpec"] = Path.Combine("wwwroot", "_content", "ClassLibrary", "js", "project-transitive-dep.js"), + ["TargetPath"] = Path.Combine("wwwroot", "_content", "ClassLibrary", "js", "project-transitive-dep.js"), + }) + } + }; + + var expectedMessage = $"The static web asset '{Path.Combine("wwroot", "js", "project-transitive-dep.js")}' " + + "has a conflicting web root path '/wwwroot/_content/ClassLibrary/js/project-transitive-dep.js' with the " + + $"project file '{Path.Combine("wwwroot", "_content", "ClassLibrary", "js", "project-transitive-dep.js")}'."; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(false); + errorMessages.Should().NotBeEmpty().And.HaveCount(1); + errorMessages.Should().Contain(expectedMessage); + } + + [Fact] + public void AllowsAssetsHavingTheSameBasePathAcrossDifferentSources_WhenTheirFinalDestinationPathIsDifferent() + { + // Arrange + var task = new ValidateStaticWebAssetsUniquePaths + { + StaticWebAssets = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","sample.js"), new Dictionary + { + ["BasePath"] = "MyLibrary", + ["ContentRoot"] = Path.Combine("nuget", "MyLibrary"), + ["RelativePath"] = "sample.js", + ["SourceId"] = "MyLibrary" + }), + CreateItem(Path.Combine("wwwroot", "otherLib.js"), new Dictionary + { + ["BasePath"] = "MyLibrary", + ["ContentRoot"] = Path.Combine("nuget", "MyOtherLibrary"), + ["RelativePath"] = "otherLib.js", + ["SourceId"] = "MyOtherLibrary" + }) + }, + WebRootFiles = Array.Empty() + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + } + + [Fact] + public void AllowsAssetsHavingTheSameContentRootAndDifferentBasePathsAcrossDifferentSources_WhenTheirFinalDestinationPathIsDifferent() + { + // Arrange + var task = new ValidateStaticWebAssetsUniquePaths + { + StaticWebAssets = new TaskItem[] + { + CreateItem(Path.Combine("wwwroot","sample.js"), new Dictionary + { + ["BasePath"] = "MyLibrary", + ["SourceId"] = "MyLibrary", + ["RelativePath"] = "sample.js", + ["ContentRoot"] = Path.Combine(".", "MyLibrary") + }), + CreateItem(Path.Combine("wwwroot", "otherLib.js"), new Dictionary + { + ["BasePath"] = "MyOtherLibrary", + ["SourceId"] = "MyOtherLibrary", + ["RelativePath"] = "otherlib.js", + ["ContentRoot"] = Path.Combine(".", "MyLibrary") + }) + }, + WebRootFiles = Array.Empty() + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + } + + [Fact] + public void ReturnsError_WhenMultipleStaticWebAssetsHaveTheSameWebRootPath() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) + .Callback(args => errorMessages.Add(args.Message)); + + var task = new ValidateStaticWebAssetsUniquePaths + { + BuildEngine = buildEngine.Object, + StaticWebAssets = new TaskItem[] + { + CreateItem(Path.Combine(".", "Library", "wwwroot", "sample.js"), new Dictionary + { + ["BasePath"] = "/", + ["RelativePath"] = "/sample.js", + }), + CreateItem(Path.Combine(".", "Library", "bin", "dist", "sample.js"), new Dictionary + { + ["BasePath"] = "/", + ["RelativePath"] = "/sample.js", + }) + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(false); + errorMessages.Should().NotBeEmpty().And.HaveCount(1); + errorMessages.Should().Contain($"Conflicting assets with the same path '/wwwroot/sample.js' for content root paths '{Path.Combine(".", "Library", "bin", "dist", "sample.js")}' and '{Path.Combine(".", "Library", "wwwroot", "sample.js")}'."); + } + + [Fact] + public void ReturnsSuccess_WhenStaticWebAssetsDontConflictWithApplicationContentItems() + { + // Arrange + var errorMessages = new List(); + var buildEngine = new Mock(); + + var task = new ValidateStaticWebAssetsUniquePaths + { + BuildEngine = buildEngine.Object, + StaticWebAssets = new TaskItem[] + { + CreateItem(Path.Combine(".", "Library", "wwwroot", "sample.js"), new Dictionary + { + ["BasePath"] = "/_library", + ["RelativePath"] = "/sample.js", + }), + CreateItem(Path.Combine(".", "Library", "wwwroot", "sample.js"), new Dictionary + { + ["BasePath"] = "/_library", + ["RelativePath"] = "/sample.js", + }) + }, + WebRootFiles = new TaskItem[] + { + CreateItem(Path.Combine(".", "App", "wwwroot", "sample.js"), new Dictionary + { + ["TargetPath"] = "/SAMPLE.js", + }) + } + }; + + // Act + var result = task.Execute(); + + // Assert + result.Should().Be(true); + } + + private static TaskItem CreateItem( + string spec, + IDictionary metadata) + { + var result = new TaskItem(spec); + foreach (var (key, value) in metadata) + { + result.SetMetadata(key, value); + } + + return result; + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineComparer.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineComparer.cs new file mode 100644 index 000000000000..218d12d4d888 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineComparer.cs @@ -0,0 +1,517 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using System.Diagnostics; +using System.Linq; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests; + +public class StaticWebAssetsBaselineComparer +{ + private static readonly string BaselineGenerationInstructions = + @"If the difference in baselines is expected, please re-generate the baselines. +Start by ensuring you're dogfooding the SDK from the current branch (dotnet --version should be '*.0.0-dev'). + If you're not on the dogfood sdk, from the root of the repository run: + 1. dotnet clean + 2. .\restore.cmd or ./restore.sh + 3. .\build.cmd ./build.sh + 4. .\eng\dogfood.cmd or . ./eng/dogfood.sh + +Then, using the dogfood SDK run the .\src\RazorSdk\update-test-baselines.ps1 script."; + + public static StaticWebAssetsBaselineComparer Instance { get; } = new(); + + internal void AssertManifest(StaticWebAssetsManifest expected, StaticWebAssetsManifest actual) + { + //Many of the properties in the manifest contain full paths, to avoid flakiness on the tests, we don't compare the full paths. + actual.Version.Should().Be(expected.Version); + actual.Source.Should().Be(expected.Source); + actual.BasePath.Should().Be(expected.BasePath); + actual.Mode.Should().Be(expected.Mode); + actual.ManifestType.Should().Be(expected.ManifestType); + + actual.ReferencedProjectsConfiguration.Should().HaveSameCount(expected.ReferencedProjectsConfiguration); + + // Relax the check for project reference configuration items see + // https://github.com/dotnet/sdk/pull/27381#issuecomment-1228764471 + // for details. + //manifest.ReferencedProjectsConfiguration.OrderBy(cm => cm.Identity) + // .Should() + // .BeEquivalentTo(expected.ReferencedProjectsConfiguration.OrderBy(cm => cm.Identity)); + + actual.DiscoveryPatterns.OrderBy(dp => dp.Name).Should().BeEquivalentTo(expected.DiscoveryPatterns.OrderBy(dp => dp.Name)); + + var actualAssets = actual.Assets + .OrderBy(a => a.BasePath) + .ThenBy(a => a.RelativePath) + .ThenBy(a => a.AssetKind) + .GroupBy(a => GetAssetGroup(a)) + .ToDictionary(a => a.Key, a => a.Order().ToArray()); + + var duplicateAssets = actual.Assets + .GroupBy(a => a) + .ToDictionary(a => a.Key, a => a.Order().ToArray()); + + var foundDuplicateAssetss = duplicateAssets.Where(a => a.Value.Length > 1).ToArray(); + duplicateAssets.Where(a => a.Value.Length > 1).Should().BeEmpty($@"no duplicate assets should exist. But found: + {string.Join($"{Environment.NewLine} ", foundDuplicateAssetss.Select(a => @$"{a.Key.Identity} - {a.Value.Length}"))}{Environment.NewLine}"); + + var expectedAssets = expected.Assets + .OrderBy(a => a.BasePath) + .ThenBy(a => a.RelativePath) + .ThenBy(a => a.AssetKind) + .GroupBy(a => GetAssetGroup(a)) + .ToDictionary(a => a.Key, a => a.Order().ToArray()); + + var actualAssetsByIdentity = actual.Assets.GroupBy(a => a.Identity).ToDictionary(a => a.Key, a => a.Order().ToArray()); + foreach (var asset in actual.Assets) + { + if (!string.IsNullOrEmpty(asset.RelatedAsset)) + { + actualAssetsByIdentity.Should().ContainKey(asset.RelatedAsset); + } + } + + foreach (var (group, actualAssetsGroup) in actualAssets) + { + var expectedAssetsGroup = expectedAssets[group]; + CompareAssetGroup(group, actualAssetsGroup, expectedAssetsGroup); + } + + var actualEndpoints = actual.Endpoints + .OrderBy(a => a.Route) + .ThenBy(a => a.AssetFile) + .GroupBy(a => GetEndpointGroup(a)) + .ToDictionary(a => a.Key, a => a.Order().ToArray()); + + SortEndpointProperties(actualEndpoints); + + var duplicateEndpoints = actual.Endpoints + .GroupBy(a => a) + .ToDictionary(a => a.Key, a => a.Order().ToArray()); + + var foundDuplicateEndpoints = duplicateEndpoints.Where(a => DuplicatesExist(a)).ToArray(); + + duplicateEndpoints.Where(a => DuplicatesExist(a)).Should().BeEmpty($@"no duplicate endpoints should exist. But found: + {string.Join($"{Environment.NewLine} ", foundDuplicateEndpoints.Select(a => @$"{a.Key.Route} - {a.Key.AssetFile} - {a.Key.Selectors.Length} - {a.Value.Length}"))}{Environment.NewLine}"); + + foreach (var endpoint in actual.Endpoints) + { + actualAssetsByIdentity.Should().ContainKey(endpoint.AssetFile); + } + + var expectedEndpoints = expected.Endpoints + .OrderBy(a => a.Route) + .ThenBy(a => a.AssetFile) + .GroupBy(a => GetEndpointGroup(a)) + .ToDictionary(a => a.Key, a => a.Order().ToArray()); + + SortEndpointProperties(expectedEndpoints); + + foreach (var (group, actualEndpointsGroup) in actualEndpoints) + { + var expectedEndpointsGroup = expectedEndpoints[group]; + CompareEndpointGroup(group, actualEndpointsGroup, expectedEndpointsGroup); + } + + static bool DuplicatesExist(KeyValuePair a) + { + var endpoint = a.Key; + if (endpoint.Route.EndsWith(".gz") || endpoint.Route.EndsWith(".br") || endpoint.Selectors.Length == 1) + { + // This is not exact, but there are situations in which our templatization process is not biyective and Build and Publish assets defined during build for + // the same asset end up having the same endpoint. To avoid issues with this, we relax the check to support finding more than one. + return a.Value.Length > 2; + } + else + { + return a.Value.Length > 1; + } + } + } + + private static void SortEndpointProperties(Dictionary endpoints) + { + foreach (var endpointGroup in endpoints.Values) + { + foreach (var endpoint in endpointGroup) + { + Array.Sort(endpoint.Selectors, (a, b) => (a.Name, a.Value).CompareTo((b.Name, b.Value))); + Array.Sort(endpoint.ResponseHeaders, (a, b) => (a.Name, a.Value).CompareTo((b.Name, b.Value))); + Array.Sort(endpoint.EndpointProperties, (a, b) => (a.Name, a.Value).CompareTo((b.Name, b.Value))); + } + } + } + + protected virtual void CompareAssetGroup(string group, StaticWebAsset[] manifestAssets, StaticWebAsset[] expectedAssets) + { + var comparisonMode = CompareAssetCounts(group, manifestAssets, expectedAssets); + Array.Sort(manifestAssets, (a, b) => a.Identity.CompareTo(b.Identity)); + Array.Sort(expectedAssets, (a, b) => a.Identity.CompareTo(b.Identity)); + + // Otherwise, do a property level comparison of all assets + switch (comparisonMode) + { + case GroupComparisonMode.Exact: + break; + case GroupComparisonMode.AllowAdditionalAssets: + break; + default: + break; + } + + var differences = new List(); + var assetDifferences = new List(); + var groupLength = Math.Min(manifestAssets.Length, expectedAssets.Length); + for (var i = 0; i < groupLength; i++) + { + var manifestAsset = manifestAssets[i]; + var expectedAsset = expectedAssets[i]; + + ComputeAssetDifferences(assetDifferences, manifestAsset, expectedAsset); + + if (assetDifferences.Any()) + { + differences.Add(@$" +================================================== + +For {expectedAsset.Identity}: + +{string.Join(Environment.NewLine, assetDifferences)} + +=================================================="); + } + + assetDifferences.Clear(); + } + + differences.Should().BeEmpty( + @$" the generated manifest should match the expected baseline. + +{BaselineGenerationInstructions} + +"); + } + + private GroupComparisonMode CompareAssetCounts(string group, StaticWebAsset[] manifestAssets, StaticWebAsset[] expectedAssets) + { + var comparisonMode = GetGroupComparisonMode(group); + + // If there's a mismatch in the number of assets, just print the strict difference in the asset `Identity` + switch (comparisonMode) + { + case GroupComparisonMode.Exact: + if (manifestAssets.Length != expectedAssets.Length) + { + ThrowAssetCountMismatchError(manifestAssets, expectedAssets); + } + break; + case GroupComparisonMode.AllowAdditionalAssets: + if (expectedAssets.Except(manifestAssets).Any()) + { + ThrowAssetCountMismatchError(manifestAssets, expectedAssets); + } + break; + default: + break; + } + + return comparisonMode; + + static void ThrowAssetCountMismatchError(StaticWebAsset[] manifestAssets, StaticWebAsset[] expectedAssets) + { + var missingAssets = expectedAssets.Except(manifestAssets); + var unexpectedAssets = manifestAssets.Except(expectedAssets); + + var differences = new List(); + + if (missingAssets.Any()) + { + differences.Add($@"The following expected assets weren't found in the manifest: + {string.Join($"{Environment.NewLine}\t", missingAssets.Select(a => a.Identity))}"); + } + + if (unexpectedAssets.Any()) + { + differences.Add($@"The following additional unexpected assets were found in the manifest: + {string.Join($"{Environment.NewLine}\t", unexpectedAssets.Select(a => a.Identity))}"); + } + + throw new Exception($@"{string.Join(Environment.NewLine, differences)} + +{BaselineGenerationInstructions}"); + } + } + + protected virtual GroupComparisonMode GetGroupComparisonMode(string group) + { + return GroupComparisonMode.Exact; + } + + private static void ComputeAssetDifferences(List assetDifferences, StaticWebAsset manifestAsset, StaticWebAsset expectedAsset) + { + if (manifestAsset.Identity != expectedAsset.Identity) + { + assetDifferences.Add($"Expected manifest Identity of {expectedAsset.Identity} but found {manifestAsset.Identity}."); + } + if (manifestAsset.SourceType != expectedAsset.SourceType) + { + assetDifferences.Add($"Expected manifest SourceType of {expectedAsset.SourceType} but found {manifestAsset.SourceType}."); + } + if (manifestAsset.SourceId != expectedAsset.SourceId) + { + assetDifferences.Add($"Expected manifest SourceId of {expectedAsset.SourceId} but found {manifestAsset.SourceId}."); + } + if (manifestAsset.ContentRoot != expectedAsset.ContentRoot) + { + assetDifferences.Add($"Expected manifest ContentRoot of {expectedAsset.ContentRoot} but found {manifestAsset.ContentRoot}."); + } + if (manifestAsset.BasePath != expectedAsset.BasePath) + { + assetDifferences.Add($"Expected manifest BasePath of {expectedAsset.BasePath} but found {manifestAsset.BasePath}."); + } + if (manifestAsset.RelativePath != expectedAsset.RelativePath) + { + assetDifferences.Add($"Expected manifest RelativePath of {expectedAsset.RelativePath} but found {manifestAsset.RelativePath}."); + } + if (manifestAsset.AssetKind != expectedAsset.AssetKind) + { + assetDifferences.Add($"Expected manifest AssetKind of {expectedAsset.AssetKind} but found {manifestAsset.AssetKind}."); + } + if (manifestAsset.AssetMode != expectedAsset.AssetMode) + { + assetDifferences.Add($"Expected manifest AssetMode of {expectedAsset.AssetMode} but found {manifestAsset.AssetMode}."); + } + if (manifestAsset.AssetRole != expectedAsset.AssetRole) + { + assetDifferences.Add($"Expected manifest AssetRole of {expectedAsset.AssetRole} but found {manifestAsset.AssetRole}."); + } + if (manifestAsset.RelatedAsset != expectedAsset.RelatedAsset) + { + assetDifferences.Add($"Expected manifest RelatedAsset of {expectedAsset.RelatedAsset} but found {manifestAsset.RelatedAsset}."); + } + if (manifestAsset.AssetTraitName != expectedAsset.AssetTraitName) + { + assetDifferences.Add($"Expected manifest AssetTraitName of {expectedAsset.AssetTraitName} but found {manifestAsset.AssetTraitName}."); + } + if (manifestAsset.AssetTraitValue != expectedAsset.AssetTraitValue) + { + assetDifferences.Add($"Expected manifest AssetTraitValue of {expectedAsset.AssetTraitValue} but found {manifestAsset.AssetTraitValue}."); + } + if (manifestAsset.CopyToOutputDirectory != expectedAsset.CopyToOutputDirectory) + { + assetDifferences.Add($"Expected manifest CopyToOutputDirectory of {expectedAsset.CopyToOutputDirectory} but found {manifestAsset.CopyToOutputDirectory}."); + } + if (manifestAsset.CopyToPublishDirectory != expectedAsset.CopyToPublishDirectory) + { + assetDifferences.Add($"Expected manifest CopyToPublishDirectory of {expectedAsset.CopyToPublishDirectory} but found {manifestAsset.CopyToPublishDirectory}."); + } + if (manifestAsset.OriginalItemSpec != expectedAsset.OriginalItemSpec) + { + assetDifferences.Add($"Expected manifest OriginalItemSpec of {expectedAsset.OriginalItemSpec} but found {manifestAsset.OriginalItemSpec}."); + } + } + + protected virtual string GetAssetGroup(StaticWebAsset asset) + { + return Path.GetExtension(asset.Identity.TrimEnd(']')); + } + + protected virtual void CompareEndpointGroup(string group, StaticWebAssetEndpoint[] manifestAssets, StaticWebAssetEndpoint[] expectedAssets) + { + var comparisonMode = CompareEndpointCounts(group, manifestAssets, expectedAssets); + Array.Sort(manifestAssets); + Array.Sort(expectedAssets); + + // Otherwise, do a property level comparison of all assets + switch (comparisonMode) + { + case GroupComparisonMode.Exact: + break; + case GroupComparisonMode.AllowAdditionalAssets: + break; + default: + break; + } + + var differences = new List(); + var assetDifferences = new List(); + var groupLength = Math.Min(manifestAssets.Length, expectedAssets.Length); + for (var i = 0; i < groupLength; i++) + { + var manifestAsset = manifestAssets[i]; + var expectedAsset = expectedAssets[i]; + + ComputeEndpointDifferences(assetDifferences, manifestAsset, expectedAsset); + + if (assetDifferences.Any()) + { + differences.Add(@$" +================================================== + +For {expectedAsset.AssetFile}: + +{string.Join(Environment.NewLine, assetDifferences)} + +=================================================="); + } + + assetDifferences.Clear(); + } + + differences.Should().BeEmpty( + @$" the generated manifest should match the expected baseline. + +{BaselineGenerationInstructions} + +"); + } + + private GroupComparisonMode CompareEndpointCounts(string group, StaticWebAssetEndpoint[] manifestEndpoints, StaticWebAssetEndpoint[] expectedEndpoints) + { + var comparisonMode = GetGroupComparisonMode(group); + + // If there's a mismatch in the number of assets, just print the strict difference in the asset `Identity` + switch (comparisonMode) + { + case GroupComparisonMode.Exact: + if (manifestEndpoints.Length != expectedEndpoints.Length) + { + ThrowEndpointCountMismatchError(group, manifestEndpoints, expectedEndpoints); + } + break; + case GroupComparisonMode.AllowAdditionalAssets: + if (expectedEndpoints.Except(manifestEndpoints).Any()) + { + ThrowEndpointCountMismatchError(group, manifestEndpoints, expectedEndpoints); + } + break; + default: + break; + } + + return comparisonMode; + + static void ThrowEndpointCountMismatchError(string group, StaticWebAssetEndpoint[] manifestEndpoints, StaticWebAssetEndpoint[] expectedEndpoints) + { + var missingEndpoints = expectedEndpoints.Except(manifestEndpoints); + var unexpectedEndpoints = manifestEndpoints.Except(expectedEndpoints); + + var differences = new List + { + $"Expected group '{group}' to have '{expectedEndpoints.Length}' endpoints but found '{manifestEndpoints.Length}'.", + "Expected Endpoints:", + string.Join($"{Environment.NewLine}\t", expectedEndpoints.Select(a => $"{a.Route} - {a.Selectors.Length} - {a.AssetFile}")), + "Actual Endpoints:", + string.Join($"{Environment.NewLine}\t", manifestEndpoints.Select(a => $"{a.Route} - {a.Selectors.Length} - {a.AssetFile}")) + }; + + if (missingEndpoints.Any()) + { + differences.Add($@"The following expected assets weren't found in the manifest: + {string.Join($"{Environment.NewLine}\t", missingEndpoints.Select(a => $"{a.Route} - {a.AssetFile}"))}"); + } + + if (unexpectedEndpoints.Any()) + { + differences.Add($@"The following additional unexpected assets were found in the manifest: + {string.Join($"{Environment.NewLine}\t", unexpectedEndpoints.Select(a => $"{a.Route} - {a.AssetFile}"))}"); + } + + throw new Exception($@"{string.Join(Environment.NewLine, differences)} + +{BaselineGenerationInstructions}"); + } + } + + protected virtual GroupComparisonMode GetAssetGroupComparisonMode(string group) + { + return GroupComparisonMode.Exact; + } + + private static void ComputeEndpointDifferences(List assetDifferences, StaticWebAssetEndpoint manifestAsset, StaticWebAssetEndpoint expectedAsset) + { + if (manifestAsset.Route != expectedAsset.Route) + { + assetDifferences.Add($"Expected manifest Identity of {expectedAsset.Route} but found {manifestAsset.Route}."); + } + if (manifestAsset.AssetFile != expectedAsset.AssetFile) + { + assetDifferences.Add($"Expected manifest SourceType of {expectedAsset.AssetFile} but found {manifestAsset.AssetFile}."); + } + + ComputeSelectorDifferences(assetDifferences, manifestAsset.Selectors, expectedAsset.Selectors); + ComputeResponseHeaderDifferences(assetDifferences, manifestAsset.ResponseHeaders, expectedAsset.ResponseHeaders); + } + + private static void ComputeResponseHeaderDifferences( + List assetDifferences, + StaticWebAssetEndpointResponseHeader[] manifestResponseHeaders, + StaticWebAssetEndpointResponseHeader[] expectedResponseHeaders) + { + if (manifestResponseHeaders.Length != expectedResponseHeaders.Length) + { + assetDifferences.Add($"Expected manifest to have {expectedResponseHeaders.Length} response headers but found {manifestResponseHeaders.Length}."); + } + + var manifest = new HashSet(manifestResponseHeaders); + var differences = new HashSet(manifestResponseHeaders); + var expected = new HashSet(expectedResponseHeaders); + differences.SymmetricExceptWith(expected); + + foreach (var difference in differences) + { + if (!manifest.Contains(difference)) + { + assetDifferences.Add($"Expected manifest to have response header '{difference.Name}={difference.Value}' but it was not found."); + } + else + { + assetDifferences.Add($"Found unexpected response header '{difference.Name}={difference.Value}'."); + } + } + } + + private static void ComputeSelectorDifferences( + List assetDifferences, + StaticWebAssetEndpointSelector[] manifestSelectors, + StaticWebAssetEndpointSelector[] expectedSelectors) + { + if (manifestSelectors.Length != expectedSelectors.Length) + { + assetDifferences.Add($"Expected manifest to have {expectedSelectors.Length} selectors but found {manifestSelectors.Length}."); + } + + var manifest = new HashSet(manifestSelectors); + var differences = new HashSet(manifestSelectors); + var expected = new HashSet(expectedSelectors); + differences.SymmetricExceptWith(expected); + + foreach (var difference in differences) + { + if (!manifest.Contains(difference)) + { + assetDifferences.Add($"Expected manifest to have selector '{difference.Name}={difference.Value};q={difference.Quality}' but it was not found."); + } + else + { + assetDifferences.Add($"Found unexpected selector '{difference.Name}={difference.Value};q={difference.Quality}'."); + } + } + } + + protected virtual string GetEndpointGroup(StaticWebAssetEndpoint asset) + { + return Path.GetExtension(asset.AssetFile.TrimEnd(']')); + } +} + +public enum GroupComparisonMode +{ + // We require the same number of assets in a group for the baseline and the template. + Exact, + + // We won't fail when we check against the baseline if additional assets are present for a group. + AllowAdditionalAssets +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineFactory.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineFactory.cs new file mode 100644 index 000000000000..5fab307f1473 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineFactory.cs @@ -0,0 +1,452 @@ +// 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 System.Runtime.Versioning; +using System.Text.RegularExpressions; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using NuGet.Frameworks; +using NuGet.ProjectModel; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests; +public partial class StaticWebAssetsBaselineFactory +{ + [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.bundle\.scp\.css)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] + private static partial Regex ScopedProjectBundleRegex(); + + [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.styles\.css)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] + private static partial Regex ScopedAppBundleRegex(); + + [GeneratedRegex("""fingerprint-site(\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.css)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] + private static partial Regex FingerprintedSiteCssRegex(); + + [GeneratedRegex("""(?:#\[\.{fingerprint=[0123456789abcdefghijklmnopqrstuvwxyz]{10}\}](\?|\!)?)""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] + private static partial Regex EmbeddedFingerprintExpression(); + + [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.lib\.module\.js)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] + private static partial Regex JSInitializerRegex(); + + [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.modules\.json)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] + private static partial Regex JSModuleManifestRegex(); + + private static readonly IList<(Regex expression, string replacement)> WellKnownFileNamePatternsAndReplacements = + [ + (ScopedProjectBundleRegex(),"$1__fingerprint__$3$4"), + (ScopedAppBundleRegex(),"$1__fingerprint__$3$4"), + (JSInitializerRegex(), "$1__fingerprint__$3$4"), + (JSModuleManifestRegex(), "$1__fingerprint__$3$4"), + (EmbeddedFingerprintExpression(), "#[.{fingerprint=__fingerprint__}]$1"), + (FingerprintedSiteCssRegex(), "fingerprint-site$1__fingerprint__$3$4"), + ]; + + public static StaticWebAssetsBaselineFactory Instance { get; } = new(); + + public IList KnownExtensions { get; } = + [ + // Keep this list of most specific to less specific + ".dll.gz", + ".dll.br", + ".dll", + ".wasm.gz", + ".wasm.br", + ".wasm", + ".js.gz", + ".js.br", + ".js", + ".html", + ".pdb", + ]; + + public IList KnownFilePrefixesWithHashOrVersion { get; } = + [ + "blazor.web.", + "blazor.server", + "dotnet.runtime", + "dotnet.native", + "dotnet.boot", + "dotnet" + ]; + + public void ToTemplate( + StaticWebAssetsManifest manifest, + string projectRoot, + string restorePath, + string runtimeIdentifier) + { + manifest.Hash = "__hash__"; + var assetsByIdentity = manifest.Assets.ToDictionary(a => a.Identity); + var endpointsByAssetFile = manifest.Endpoints.GroupBy(e => e.AssetFile).ToDictionary(g => g.Key, g => g.ToArray()); + foreach (var asset in manifest.Assets) + { + var relatedEndpoints = endpointsByAssetFile.GetValueOrDefault(asset.Identity); + TemplatizeAsset(projectRoot, restorePath, runtimeIdentifier, asset); + foreach (var endpoint in relatedEndpoints ?? []) + { + endpoint.AssetFile = asset.Identity; + } + if (asset.AssetTraitName == "Content-Encoding") + { + var basePath = asset.BasePath.Replace('/', Path.DirectorySeparatorChar).TrimStart(Path.DirectorySeparatorChar); + var relativePath = asset.RelativePath.Replace('/', Path.DirectorySeparatorChar); + var identity = asset.Identity.Replace('\\', Path.DirectorySeparatorChar); + var originalItemSpec = asset.OriginalItemSpec.Replace('\\', Path.DirectorySeparatorChar); + + asset.Identity = Path.Combine(Path.GetDirectoryName(identity), basePath, relativePath); + asset.Identity = asset.Identity.Replace(Path.DirectorySeparatorChar, '\\'); + foreach (var endpoint in relatedEndpoints ?? []) + { + endpoint.AssetFile = asset.Identity; + } + asset.OriginalItemSpec = Path.Combine(Path.GetDirectoryName(originalItemSpec), basePath, relativePath); + asset.OriginalItemSpec = asset.OriginalItemSpec.Replace(Path.DirectorySeparatorChar, '\\'); + } + else if ((asset.Identity.EndsWith(".gz", StringComparison.OrdinalIgnoreCase) || asset.Identity.EndsWith(".br", StringComparison.OrdinalIgnoreCase)) + && asset.AssetTraitName == "" && asset.RelatedAsset == "") + { + // Old .NET 5.0 implementation + var identity = asset.Identity.Replace('\\', Path.DirectorySeparatorChar); + var originalItemSpec = asset.OriginalItemSpec.Replace('\\', Path.DirectorySeparatorChar); + + asset.Identity = Path.Combine(Path.GetDirectoryName(identity), Path.GetFileName(originalItemSpec) + Path.GetExtension(identity)) + .Replace(Path.DirectorySeparatorChar, '\\'); + } + } + + foreach (var endpoint in manifest.Endpoints) + { + for (var i = 0; i < endpoint.ResponseHeaders.Length; i++) + { + ref var header = ref endpoint.ResponseHeaders[i]; + switch (header.Name) + { + case "Content-Length": + header.Value = "__content-length__"; + break; + case "ETag": + header.Value = "__etag__"; + break; + case "Last-Modified": + header.Value = "__last-modified__"; + break; + case "Link": + var cleaned = new List(); + var values = header.Value.Split(',').Select(v => v.Trim()); + foreach (var value in values) + { + var segments = value.Split(';').Select(v => v.Trim()).ToArray(); + var file = segments[0][1..^1]; + segments[0] = $"<{ReplaceFileName(file).Replace('\\', '/')}>"; + cleaned.Add(string.Join("; ", segments)); + } + header.Value = string.Join(", ", cleaned); + + break; + default: + break; + } + } + + for (var i = 0; i < endpoint.EndpointProperties.Length; i++) + { + ref var property = ref endpoint.EndpointProperties[i]; + switch (property.Name) + { + case "fingerprint": + property.Value = "__fingerprint__"; + endpoint.Route = endpoint.Route.Replace(property.Value, $"__{property.Name}__"); + break; + case "integrity": + property.Value = "__integrity__"; + break; + default: + break; + } + + ReplaceFileName(endpoint.Route); + } + + for (var i = 0; i < endpoint.Selectors.Length; i++) + { + ref var selector = ref endpoint.Selectors[i]; + selector.Quality = "__quality__"; + } + + endpoint.Route = TemplatizeFilePath(endpoint.Route, null, null, null, null, null).Replace("\\", "/"); + + endpoint.AssetFile = TemplatizeFilePath( + endpoint.AssetFile, + restorePath, + projectRoot, + null, + null, + runtimeIdentifier); + } + + foreach (var discovery in manifest.DiscoveryPatterns) + { + discovery.ContentRoot = discovery.ContentRoot.Replace(projectRoot, "${ProjectPath}", StringComparison.OrdinalIgnoreCase); + discovery.ContentRoot = discovery.ContentRoot.Replace(Path.DirectorySeparatorChar, '\\'); + + discovery.Name = discovery.Name.Replace(Path.DirectorySeparatorChar, '\\'); + discovery.Pattern = discovery.Pattern.Replace(Path.DirectorySeparatorChar, '\\'); + } + + foreach (var relatedManifest in manifest.ReferencedProjectsConfiguration) + { + relatedManifest.Identity = relatedManifest.Identity.Replace(projectRoot, "${ProjectPath}").Replace(Path.DirectorySeparatorChar, '\\'); + } + + // Sor everything now to ensure we produce stable baselines independent of the machine they were generated on. + Array.Sort(manifest.DiscoveryPatterns, (l, r) => StringComparer.Ordinal.Compare(l.Name, r.Name)); + Array.Sort(manifest.Assets); + foreach (var endpoint in manifest.Endpoints) + { + Array.Sort(endpoint.Selectors); + Array.Sort(endpoint.EndpointProperties); + Array.Sort(endpoint.ResponseHeaders); + } + Array.Sort(manifest.Endpoints); + + Array.Sort(manifest.ReferencedProjectsConfiguration, (l, r) => StringComparer.Ordinal.Compare(l.Identity, r.Identity)); + } + + private void TemplatizeAsset(string projectRoot, string restorePath, string runtimeIdentifier, StaticWebAsset asset) + { + asset.Identity = TemplatizeFilePath( + asset.Identity, + restorePath, + projectRoot, + null, + null, + runtimeIdentifier); + + asset.RelativePath = TemplatizeFilePath( + asset.RelativePath, + null, + null, + null, + null, + runtimeIdentifier).Replace('\\', '/'); + + asset.ContentRoot = TemplatizeFilePath( + asset.ContentRoot, + restorePath, + projectRoot, + null, + null, + runtimeIdentifier); + + asset.RelatedAsset = TemplatizeFilePath( + asset.RelatedAsset, + restorePath, + projectRoot, + null, + null, + runtimeIdentifier); + + asset.OriginalItemSpec = TemplatizeFilePath( + asset.OriginalItemSpec, + restorePath, + projectRoot, + null, + null, + runtimeIdentifier); + + asset.Fingerprint = string.IsNullOrEmpty(asset.Fingerprint) ? asset.Fingerprint : "__fingerprint__"; + asset.Integrity = string.IsNullOrEmpty(asset.Integrity) ? asset.Integrity : "__integrity__"; + asset.FileLength = -1; + asset.LastWriteTime = DateTimeOffset.MinValue; + } + + internal IEnumerable TemplatizeExpectedFiles( + IEnumerable files, + string restorePath, + string projectPath, + string intermediateOutputPath, + string buildOrPublishFolder) + { + foreach (var file in files) + { + var updated = TemplatizeFilePath( + file, + restorePath, + projectPath, + intermediateOutputPath, + buildOrPublishFolder, + null); + + yield return updated; + } + } + + public string TemplatizeFilePath( + string file, + string restorePath, + string projectPath, + string intermediateOutputPath, + string buildOrPublishFolder, + string runtimeIdentifier) + { + var updated = file switch + { + var processed when file.StartsWith('$') => processed, + var fromBuildOrPublishPath when buildOrPublishFolder is not null && file.StartsWith(buildOrPublishFolder, StringComparison.OrdinalIgnoreCase) => + TemplatizeBuildOrPublishPath(buildOrPublishFolder, fromBuildOrPublishPath), + var fromIntermediateOutputPath when intermediateOutputPath is not null && file.StartsWith(intermediateOutputPath, StringComparison.OrdinalIgnoreCase) => + TemplatizeIntermediatePath(intermediateOutputPath, fromIntermediateOutputPath), + var fromPackage when restorePath is not null && file.StartsWith(restorePath, StringComparison.OrdinalIgnoreCase) => + TemplatizeNugetPath(restorePath, fromPackage), + var fromProject when projectPath is not null && file.StartsWith(projectPath, StringComparison.OrdinalIgnoreCase) => + TemplatizeProjectPath(projectPath, fromProject, runtimeIdentifier), + _ => + ReplaceSegments(file, (i, segments) => i switch + { + 2 when segments[0] is "obj" or "bin" => "${Tfm}", + var last when i == segments.Length - 1 => RemovePossibleHash(segments[last]), + _ => segments[i] + }) + }; + + return ReplaceFileName(updated).Replace('/', '\\'); + } + + private static string ReplaceFileName(string path) + { + var directory = Path.GetDirectoryName(path); + var fileName = Path.GetFileName(path); + foreach (var (expression, replacement) in WellKnownFileNamePatternsAndReplacements) + { + if (expression.IsMatch(fileName)) + { + fileName = expression.Replace(fileName, replacement); + return Path.Combine(directory, fileName); + } + } + + return path; + } + + private string TemplatizeBuildOrPublishPath(string outputPath, string file) + { + file = file.Replace(outputPath, "${OutputPath}") + .Replace('\\', '/'); + + file = ReplaceSegments(file, (i, segments) => i switch + { + _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), + _ => segments[i], + }); + + return file; + } + + private string TemplatizeIntermediatePath(string intermediatePath, string file) + { + file = file.Replace(intermediatePath, "${IntermediateOutputPath}") + .Replace('\\', '/'); + + file = ReplaceSegments(file, (i, segments) => i switch + { + 3 when segments[1] is "obj" or "bin" => "${Tfm}", + _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), + _ => segments[i] + }); + + return file; + } + + private string TemplatizeProjectPath(string projectPath, string file, string runtimeIdentifier) + { + file = file.Replace(projectPath, "${ProjectPath}") + .Replace('\\', '/'); + + file = ReplaceSegments(file, (i, segments) => i switch + { + 3 when segments[1] is "obj" or "bin" => "${Tfm}", + 4 when segments[2] is "obj" or "bin" => "${Tfm}", + 4 when segments[1] is "obj" or "bin" && segments[4] == runtimeIdentifier => "${Rid}", + 5 when segments[2] is "obj" or "bin" && segments[5] == runtimeIdentifier => "${Rid}", + _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), + _ => segments[i] + }); + + return file; + } + + private string TemplatizeNugetPath(string restorePath, string file) + { + file = file.Replace(restorePath, "${RestorePath}", StringComparison.OrdinalIgnoreCase) + .Replace('\\', '/'); + if (file.Contains("runtimes")) + { + file = ReplaceSegments(file, (i, segments) => i switch + { + 2 => "${RuntimeVersion}", + 6 when !file.Contains("native") => "${Tfm}", + _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), + _ => segments[i], + }); + } + else + { + file = ReplaceSegments(file, (i, segments) => i switch + { + 2 => "${PackageVersion}", + 4 when IsFramework(segments[4]) => "${Tfm}", + _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), + _ => segments[i], + }); + } + + return file; + + static bool IsFramework(string segment) + { + try + { + var tfm = NuGetFramework.ParseFolder(segment); + + return tfm.Framework is FrameworkConstants.FrameworkIdentifiers.NetCoreApp or + FrameworkConstants.FrameworkIdentifiers.NetStandard or + FrameworkConstants.FrameworkIdentifiers.NetCore or + FrameworkConstants.FrameworkIdentifiers.Net; + } + catch + { + return false; + } + } + } + + private static string ReplaceSegments(string file, Func selector) + { + var segments = file.Split('\\', '/'); + var newSegments = new List(); + + // Segments have the following shape `${RestorePath}/PackageName/PackageVersion/lib/Tfm/dll`. + // We want to replace PackageVersion and Tfm with tokens so that they do not cause issues. + for (var i = 0; i < segments.Length; i++) + { + newSegments.Add(selector(i, segments)); + } + + return string.Join(Path.DirectorySeparatorChar, newSegments); + } + + private string RemovePossibleHash(string fileNameAndExtension) + { + var filename = KnownFilePrefixesWithHashOrVersion.FirstOrDefault(p => fileNameAndExtension.StartsWith(p)); + if (filename != null && filename.EndsWith(".")) + { + filename = filename[..^1]; + } + var extension = KnownExtensions.FirstOrDefault(f => fileNameAndExtension.EndsWith(f, StringComparison.OrdinalIgnoreCase)); + if (filename != null && extension != null) + { + fileNameAndExtension = filename + extension; + } + + return fileNameAndExtension; + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineFactory2.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineFactory2.cs new file mode 100644 index 000000000000..5fab307f1473 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineFactory2.cs @@ -0,0 +1,452 @@ +// 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 System.Runtime.Versioning; +using System.Text.RegularExpressions; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; +using NuGet.Frameworks; +using NuGet.ProjectModel; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests; +public partial class StaticWebAssetsBaselineFactory +{ + [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.bundle\.scp\.css)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] + private static partial Regex ScopedProjectBundleRegex(); + + [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.styles\.css)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] + private static partial Regex ScopedAppBundleRegex(); + + [GeneratedRegex("""fingerprint-site(\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.css)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] + private static partial Regex FingerprintedSiteCssRegex(); + + [GeneratedRegex("""(?:#\[\.{fingerprint=[0123456789abcdefghijklmnopqrstuvwxyz]{10}\}](\?|\!)?)""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] + private static partial Regex EmbeddedFingerprintExpression(); + + [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.lib\.module\.js)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] + private static partial Regex JSInitializerRegex(); + + [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.modules\.json)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] + private static partial Regex JSModuleManifestRegex(); + + private static readonly IList<(Regex expression, string replacement)> WellKnownFileNamePatternsAndReplacements = + [ + (ScopedProjectBundleRegex(),"$1__fingerprint__$3$4"), + (ScopedAppBundleRegex(),"$1__fingerprint__$3$4"), + (JSInitializerRegex(), "$1__fingerprint__$3$4"), + (JSModuleManifestRegex(), "$1__fingerprint__$3$4"), + (EmbeddedFingerprintExpression(), "#[.{fingerprint=__fingerprint__}]$1"), + (FingerprintedSiteCssRegex(), "fingerprint-site$1__fingerprint__$3$4"), + ]; + + public static StaticWebAssetsBaselineFactory Instance { get; } = new(); + + public IList KnownExtensions { get; } = + [ + // Keep this list of most specific to less specific + ".dll.gz", + ".dll.br", + ".dll", + ".wasm.gz", + ".wasm.br", + ".wasm", + ".js.gz", + ".js.br", + ".js", + ".html", + ".pdb", + ]; + + public IList KnownFilePrefixesWithHashOrVersion { get; } = + [ + "blazor.web.", + "blazor.server", + "dotnet.runtime", + "dotnet.native", + "dotnet.boot", + "dotnet" + ]; + + public void ToTemplate( + StaticWebAssetsManifest manifest, + string projectRoot, + string restorePath, + string runtimeIdentifier) + { + manifest.Hash = "__hash__"; + var assetsByIdentity = manifest.Assets.ToDictionary(a => a.Identity); + var endpointsByAssetFile = manifest.Endpoints.GroupBy(e => e.AssetFile).ToDictionary(g => g.Key, g => g.ToArray()); + foreach (var asset in manifest.Assets) + { + var relatedEndpoints = endpointsByAssetFile.GetValueOrDefault(asset.Identity); + TemplatizeAsset(projectRoot, restorePath, runtimeIdentifier, asset); + foreach (var endpoint in relatedEndpoints ?? []) + { + endpoint.AssetFile = asset.Identity; + } + if (asset.AssetTraitName == "Content-Encoding") + { + var basePath = asset.BasePath.Replace('/', Path.DirectorySeparatorChar).TrimStart(Path.DirectorySeparatorChar); + var relativePath = asset.RelativePath.Replace('/', Path.DirectorySeparatorChar); + var identity = asset.Identity.Replace('\\', Path.DirectorySeparatorChar); + var originalItemSpec = asset.OriginalItemSpec.Replace('\\', Path.DirectorySeparatorChar); + + asset.Identity = Path.Combine(Path.GetDirectoryName(identity), basePath, relativePath); + asset.Identity = asset.Identity.Replace(Path.DirectorySeparatorChar, '\\'); + foreach (var endpoint in relatedEndpoints ?? []) + { + endpoint.AssetFile = asset.Identity; + } + asset.OriginalItemSpec = Path.Combine(Path.GetDirectoryName(originalItemSpec), basePath, relativePath); + asset.OriginalItemSpec = asset.OriginalItemSpec.Replace(Path.DirectorySeparatorChar, '\\'); + } + else if ((asset.Identity.EndsWith(".gz", StringComparison.OrdinalIgnoreCase) || asset.Identity.EndsWith(".br", StringComparison.OrdinalIgnoreCase)) + && asset.AssetTraitName == "" && asset.RelatedAsset == "") + { + // Old .NET 5.0 implementation + var identity = asset.Identity.Replace('\\', Path.DirectorySeparatorChar); + var originalItemSpec = asset.OriginalItemSpec.Replace('\\', Path.DirectorySeparatorChar); + + asset.Identity = Path.Combine(Path.GetDirectoryName(identity), Path.GetFileName(originalItemSpec) + Path.GetExtension(identity)) + .Replace(Path.DirectorySeparatorChar, '\\'); + } + } + + foreach (var endpoint in manifest.Endpoints) + { + for (var i = 0; i < endpoint.ResponseHeaders.Length; i++) + { + ref var header = ref endpoint.ResponseHeaders[i]; + switch (header.Name) + { + case "Content-Length": + header.Value = "__content-length__"; + break; + case "ETag": + header.Value = "__etag__"; + break; + case "Last-Modified": + header.Value = "__last-modified__"; + break; + case "Link": + var cleaned = new List(); + var values = header.Value.Split(',').Select(v => v.Trim()); + foreach (var value in values) + { + var segments = value.Split(';').Select(v => v.Trim()).ToArray(); + var file = segments[0][1..^1]; + segments[0] = $"<{ReplaceFileName(file).Replace('\\', '/')}>"; + cleaned.Add(string.Join("; ", segments)); + } + header.Value = string.Join(", ", cleaned); + + break; + default: + break; + } + } + + for (var i = 0; i < endpoint.EndpointProperties.Length; i++) + { + ref var property = ref endpoint.EndpointProperties[i]; + switch (property.Name) + { + case "fingerprint": + property.Value = "__fingerprint__"; + endpoint.Route = endpoint.Route.Replace(property.Value, $"__{property.Name}__"); + break; + case "integrity": + property.Value = "__integrity__"; + break; + default: + break; + } + + ReplaceFileName(endpoint.Route); + } + + for (var i = 0; i < endpoint.Selectors.Length; i++) + { + ref var selector = ref endpoint.Selectors[i]; + selector.Quality = "__quality__"; + } + + endpoint.Route = TemplatizeFilePath(endpoint.Route, null, null, null, null, null).Replace("\\", "/"); + + endpoint.AssetFile = TemplatizeFilePath( + endpoint.AssetFile, + restorePath, + projectRoot, + null, + null, + runtimeIdentifier); + } + + foreach (var discovery in manifest.DiscoveryPatterns) + { + discovery.ContentRoot = discovery.ContentRoot.Replace(projectRoot, "${ProjectPath}", StringComparison.OrdinalIgnoreCase); + discovery.ContentRoot = discovery.ContentRoot.Replace(Path.DirectorySeparatorChar, '\\'); + + discovery.Name = discovery.Name.Replace(Path.DirectorySeparatorChar, '\\'); + discovery.Pattern = discovery.Pattern.Replace(Path.DirectorySeparatorChar, '\\'); + } + + foreach (var relatedManifest in manifest.ReferencedProjectsConfiguration) + { + relatedManifest.Identity = relatedManifest.Identity.Replace(projectRoot, "${ProjectPath}").Replace(Path.DirectorySeparatorChar, '\\'); + } + + // Sor everything now to ensure we produce stable baselines independent of the machine they were generated on. + Array.Sort(manifest.DiscoveryPatterns, (l, r) => StringComparer.Ordinal.Compare(l.Name, r.Name)); + Array.Sort(manifest.Assets); + foreach (var endpoint in manifest.Endpoints) + { + Array.Sort(endpoint.Selectors); + Array.Sort(endpoint.EndpointProperties); + Array.Sort(endpoint.ResponseHeaders); + } + Array.Sort(manifest.Endpoints); + + Array.Sort(manifest.ReferencedProjectsConfiguration, (l, r) => StringComparer.Ordinal.Compare(l.Identity, r.Identity)); + } + + private void TemplatizeAsset(string projectRoot, string restorePath, string runtimeIdentifier, StaticWebAsset asset) + { + asset.Identity = TemplatizeFilePath( + asset.Identity, + restorePath, + projectRoot, + null, + null, + runtimeIdentifier); + + asset.RelativePath = TemplatizeFilePath( + asset.RelativePath, + null, + null, + null, + null, + runtimeIdentifier).Replace('\\', '/'); + + asset.ContentRoot = TemplatizeFilePath( + asset.ContentRoot, + restorePath, + projectRoot, + null, + null, + runtimeIdentifier); + + asset.RelatedAsset = TemplatizeFilePath( + asset.RelatedAsset, + restorePath, + projectRoot, + null, + null, + runtimeIdentifier); + + asset.OriginalItemSpec = TemplatizeFilePath( + asset.OriginalItemSpec, + restorePath, + projectRoot, + null, + null, + runtimeIdentifier); + + asset.Fingerprint = string.IsNullOrEmpty(asset.Fingerprint) ? asset.Fingerprint : "__fingerprint__"; + asset.Integrity = string.IsNullOrEmpty(asset.Integrity) ? asset.Integrity : "__integrity__"; + asset.FileLength = -1; + asset.LastWriteTime = DateTimeOffset.MinValue; + } + + internal IEnumerable TemplatizeExpectedFiles( + IEnumerable files, + string restorePath, + string projectPath, + string intermediateOutputPath, + string buildOrPublishFolder) + { + foreach (var file in files) + { + var updated = TemplatizeFilePath( + file, + restorePath, + projectPath, + intermediateOutputPath, + buildOrPublishFolder, + null); + + yield return updated; + } + } + + public string TemplatizeFilePath( + string file, + string restorePath, + string projectPath, + string intermediateOutputPath, + string buildOrPublishFolder, + string runtimeIdentifier) + { + var updated = file switch + { + var processed when file.StartsWith('$') => processed, + var fromBuildOrPublishPath when buildOrPublishFolder is not null && file.StartsWith(buildOrPublishFolder, StringComparison.OrdinalIgnoreCase) => + TemplatizeBuildOrPublishPath(buildOrPublishFolder, fromBuildOrPublishPath), + var fromIntermediateOutputPath when intermediateOutputPath is not null && file.StartsWith(intermediateOutputPath, StringComparison.OrdinalIgnoreCase) => + TemplatizeIntermediatePath(intermediateOutputPath, fromIntermediateOutputPath), + var fromPackage when restorePath is not null && file.StartsWith(restorePath, StringComparison.OrdinalIgnoreCase) => + TemplatizeNugetPath(restorePath, fromPackage), + var fromProject when projectPath is not null && file.StartsWith(projectPath, StringComparison.OrdinalIgnoreCase) => + TemplatizeProjectPath(projectPath, fromProject, runtimeIdentifier), + _ => + ReplaceSegments(file, (i, segments) => i switch + { + 2 when segments[0] is "obj" or "bin" => "${Tfm}", + var last when i == segments.Length - 1 => RemovePossibleHash(segments[last]), + _ => segments[i] + }) + }; + + return ReplaceFileName(updated).Replace('/', '\\'); + } + + private static string ReplaceFileName(string path) + { + var directory = Path.GetDirectoryName(path); + var fileName = Path.GetFileName(path); + foreach (var (expression, replacement) in WellKnownFileNamePatternsAndReplacements) + { + if (expression.IsMatch(fileName)) + { + fileName = expression.Replace(fileName, replacement); + return Path.Combine(directory, fileName); + } + } + + return path; + } + + private string TemplatizeBuildOrPublishPath(string outputPath, string file) + { + file = file.Replace(outputPath, "${OutputPath}") + .Replace('\\', '/'); + + file = ReplaceSegments(file, (i, segments) => i switch + { + _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), + _ => segments[i], + }); + + return file; + } + + private string TemplatizeIntermediatePath(string intermediatePath, string file) + { + file = file.Replace(intermediatePath, "${IntermediateOutputPath}") + .Replace('\\', '/'); + + file = ReplaceSegments(file, (i, segments) => i switch + { + 3 when segments[1] is "obj" or "bin" => "${Tfm}", + _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), + _ => segments[i] + }); + + return file; + } + + private string TemplatizeProjectPath(string projectPath, string file, string runtimeIdentifier) + { + file = file.Replace(projectPath, "${ProjectPath}") + .Replace('\\', '/'); + + file = ReplaceSegments(file, (i, segments) => i switch + { + 3 when segments[1] is "obj" or "bin" => "${Tfm}", + 4 when segments[2] is "obj" or "bin" => "${Tfm}", + 4 when segments[1] is "obj" or "bin" && segments[4] == runtimeIdentifier => "${Rid}", + 5 when segments[2] is "obj" or "bin" && segments[5] == runtimeIdentifier => "${Rid}", + _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), + _ => segments[i] + }); + + return file; + } + + private string TemplatizeNugetPath(string restorePath, string file) + { + file = file.Replace(restorePath, "${RestorePath}", StringComparison.OrdinalIgnoreCase) + .Replace('\\', '/'); + if (file.Contains("runtimes")) + { + file = ReplaceSegments(file, (i, segments) => i switch + { + 2 => "${RuntimeVersion}", + 6 when !file.Contains("native") => "${Tfm}", + _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), + _ => segments[i], + }); + } + else + { + file = ReplaceSegments(file, (i, segments) => i switch + { + 2 => "${PackageVersion}", + 4 when IsFramework(segments[4]) => "${Tfm}", + _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), + _ => segments[i], + }); + } + + return file; + + static bool IsFramework(string segment) + { + try + { + var tfm = NuGetFramework.ParseFolder(segment); + + return tfm.Framework is FrameworkConstants.FrameworkIdentifiers.NetCoreApp or + FrameworkConstants.FrameworkIdentifiers.NetStandard or + FrameworkConstants.FrameworkIdentifiers.NetCore or + FrameworkConstants.FrameworkIdentifiers.Net; + } + catch + { + return false; + } + } + } + + private static string ReplaceSegments(string file, Func selector) + { + var segments = file.Split('\\', '/'); + var newSegments = new List(); + + // Segments have the following shape `${RestorePath}/PackageName/PackageVersion/lib/Tfm/dll`. + // We want to replace PackageVersion and Tfm with tokens so that they do not cause issues. + for (var i = 0; i < segments.Length; i++) + { + newSegments.Add(selector(i, segments)); + } + + return string.Join(Path.DirectorySeparatorChar, newSegments); + } + + private string RemovePossibleHash(string fileNameAndExtension) + { + var filename = KnownFilePrefixesWithHashOrVersion.FirstOrDefault(p => fileNameAndExtension.StartsWith(p)); + if (filename != null && filename.EndsWith(".")) + { + filename = filename[..^1]; + } + var extension = KnownExtensions.FirstOrDefault(f => fileNameAndExtension.EndsWith(f, StringComparison.OrdinalIgnoreCase)); + if (filename != null && extension != null) + { + fileNameAndExtension = filename + extension; + } + + return fileNameAndExtension; + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.files.json new file mode 100644 index 000000000000..b800715727ea --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.files.json @@ -0,0 +1,4 @@ +[ + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.staticwebassets.json new file mode 100644 index 000000000000..fd866dc607c5 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.staticwebassets.json @@ -0,0 +1,2265 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..fd866dc607c5 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json @@ -0,0 +1,2265 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json new file mode 100644 index 000000000000..cd0e497b7792 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json @@ -0,0 +1,65 @@ +[ + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json new file mode 100644 index 000000000000..bfc567176e5c --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json @@ -0,0 +1,3735 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.br" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json new file mode 100644 index 000000000000..b800715727ea --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json @@ -0,0 +1,4 @@ +[ + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json new file mode 100644 index 000000000000..fd866dc607c5 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json @@ -0,0 +1,2265 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.files.json new file mode 100644 index 000000000000..9b6099578e17 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.files.json @@ -0,0 +1,6 @@ +[ + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.staticwebassets.json new file mode 100644 index 000000000000..264c93b8a815 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.staticwebassets.json @@ -0,0 +1,2846 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "AnotherClassLib.lib.module.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "AnotherClassLib.lib.module.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "JSModule", + "AssetTraitValue": "JSLibraryModule", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\AnotherClassLib.lib.module.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference.modules.json.gz", + "AssetKind": "Build", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\AppWithPackageAndP2PReference.modules.json.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference.modules.json", + "AssetKind": "Build", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "JSModule", + "AssetTraitValue": "JSModuleManifest", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.lib.module.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary.lib.module.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\ClassLibrary.lib.module.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.lib.module.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\ClassLibrary.lib.module.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary.lib.module.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "JSModule", + "AssetTraitValue": "JSLibraryModule", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\ClassLibrary.lib.module.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.lib.module.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.lib.module.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.lib.module.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.lib.module.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.lib.module.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\ClassLibrary.lib.module.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json new file mode 100644 index 000000000000..fd866dc607c5 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json @@ -0,0 +1,2265 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.files.json new file mode 100644 index 000000000000..b800715727ea --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.files.json @@ -0,0 +1,4 @@ +[ + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.staticwebassets.json new file mode 100644 index 000000000000..fd866dc607c5 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.staticwebassets.json @@ -0,0 +1,2265 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.files.json new file mode 100644 index 000000000000..b800715727ea --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.files.json @@ -0,0 +1,4 @@ +[ + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json new file mode 100644 index 000000000000..b1776f7adb3f --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json @@ -0,0 +1,1921 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 1, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 1, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.files.json new file mode 100644 index 000000000000..ff5e94bf0263 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.files.json @@ -0,0 +1,6 @@ +[ + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.staticwebassets.json new file mode 100644 index 000000000000..ab40209e2da7 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.staticwebassets.json @@ -0,0 +1,1390 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_CreatesEndpointsForAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_CreatesEndpointsForAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..02b56c375c77 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_CreatesEndpointsForAssets.Build.staticwebassets.json @@ -0,0 +1,1581 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [ + { + "Name": "ComponentApp\\wwwroot", + "Source": "ComponentApp", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "app.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\wwwroot\\app.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\wwwroot\\app.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\wwwroot\\app.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "RelativePath": "app.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\app.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "app.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "app.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "app.js", + "AssetFile": "${ProjectPath}\\wwwroot\\app.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.files.json new file mode 100644 index 000000000000..0637a088a01e --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.files.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..37b03732b57e --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.staticwebassets.json @@ -0,0 +1,205 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "RazorComponentAppMultitarget", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [ + { + "Name": "RazorComponentAppMultitarget\\wwwroot", + "Source": "RazorComponentAppMultitarget", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\test.js.gz", + "SourceId": "RazorComponentAppMultitarget", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "test.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "Server", + "RelatedAsset": "${ProjectPath}\\wwwroot\\test.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\wwwroot\\test.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\wwwroot\\test.js", + "SourceId": "RazorComponentAppMultitarget", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "RelativePath": "test.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "Server", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\test.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "test.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\test.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "test.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\test.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "test.js", + "AssetFile": "${ProjectPath}\\wwwroot\\test.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..ab40209e2da7 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json @@ -0,0 +1,1390 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json new file mode 100644 index 000000000000..3e796c825b34 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json @@ -0,0 +1,26 @@ +[ + "${OutputPath}\\wwwroot\\ComponentApp.styles.css", + "${OutputPath}\\wwwroot\\ComponentApp.styles.css.br", + "${OutputPath}\\wwwroot\\ComponentApp.styles.css.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.web.js", + "${OutputPath}\\wwwroot\\_framework\\blazor.web.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.web.js.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint}]?.styles.css", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint}]?.js" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json new file mode 100644 index 000000000000..ae1b710a0fc1 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json @@ -0,0 +1,2346 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.br" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.br" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.br" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.br" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.files.json new file mode 100644 index 000000000000..e4cd7bc7e746 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.files.json @@ -0,0 +1,4 @@ +[ + "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..9135a74bf3db --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.staticwebassets.json @@ -0,0 +1,1227 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "SourceId": "AppWithP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "AppWithP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithP2PReference.styles.css" + } + ] + }, + { + "Route": "AppWithP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.files.json new file mode 100644 index 000000000000..ff5e94bf0263 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.files.json @@ -0,0 +1,6 @@ +[ + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.staticwebassets.json new file mode 100644 index 000000000000..beaef7e3ebb2 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.staticwebassets.json @@ -0,0 +1,1772 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\Components\\Pages\\Counter.razor.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\", + "BasePath": "/", + "RelativePath": "Components/Pages/Counter.razor.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "Components\\Pages\\Counter.razor.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\Pages\\Index.cshtml.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\", + "BasePath": "/", + "RelativePath": "Pages/Index.cshtml.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "Pages\\Index.cshtml.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\Components\\Pages\\Counter.razor.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "Components/Pages/Counter.razor.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\Components\\Pages\\Counter.razor.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\Components\\Pages\\Components\\Pages\\Counter.razor.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\Pages\\Index.cshtml.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "Pages/Index.cshtml.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\Pages\\Index.cshtml.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\Pages\\Pages\\Index.cshtml.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "Components/Pages/Counter.razor.js", + "AssetFile": "${ProjectPath}\\Components\\Pages\\Counter.razor.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "Pages/Index.cshtml.js", + "AssetFile": "${ProjectPath}\\Pages\\Index.cshtml.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "Components/Pages/Counter.razor.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\Components\\Pages\\Counter.razor.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "Components/Pages/Counter.razor.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\Components\\Pages\\Counter.razor.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "Pages/Index.cshtml.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\Pages\\Index.cshtml.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "Pages/Index.cshtml.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\Pages\\Index.cshtml.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.files.json new file mode 100644 index 000000000000..ff5e94bf0263 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.files.json @@ -0,0 +1,6 @@ +[ + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.staticwebassets.json new file mode 100644 index 000000000000..ede0e7382a0b --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.staticwebassets.json @@ -0,0 +1,1764 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [ + { + "Name": "ComponentApp\\wwwroot", + "Source": "ComponentApp", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\file.txt.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "file.txt.gz", + "AssetKind": "Build", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\wwwroot\\file.build.txt", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "Never", + "OriginalItemSpec": "${ProjectPath}\\wwwroot\\file.txt.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\file.txt.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "file.txt.gz", + "AssetKind": "Publish", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\wwwroot\\file.publish.txt", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\wwwroot\\file.txt.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\wwwroot\\file.build.txt", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "RelativePath": "file.txt", + "AssetKind": "Build", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "Never", + "OriginalItemSpec": "wwwroot\\file.build.txt", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\wwwroot\\file.publish.txt", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "RelativePath": "file.txt", + "AssetKind": "Publish", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\file.publish.txt", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "file.txt.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\file.txt.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/plain" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "file.txt.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\file.txt.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/plain" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "file.txt", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\file.txt.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/plain" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "file.txt", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\file.txt.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/plain" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "file.txt", + "AssetFile": "${ProjectPath}\\wwwroot\\file.build.txt", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/plain" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "file.txt", + "AssetFile": "${ProjectPath}\\wwwroot\\file.publish.txt", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/plain" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DoesNotUpdateManifest_WhenHasNotChanged.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DoesNotUpdateManifest_WhenHasNotChanged.Build.staticwebassets.json new file mode 100644 index 000000000000..ab40209e2da7 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_DoesNotUpdateManifest_WhenHasNotChanged.Build.staticwebassets.json @@ -0,0 +1,1390 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.files.json new file mode 100644 index 000000000000..ff5e94bf0263 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.files.json @@ -0,0 +1,6 @@ +[ + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.staticwebassets.json new file mode 100644 index 000000000000..71d1d994219d --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.staticwebassets.json @@ -0,0 +1,1742 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [ + { + "Name": "ComponentApp\\wwwroot", + "Source": "ComponentApp", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\css\\fingerprint-site#[.{fingerprint=__fingerprint__}]?.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "css/fingerprint-site#[.{fingerprint=__fingerprint__}]?.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\wwwroot\\css\\fingerprint-site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\wwwroot\\css\\css\\fingerprint-site#[.{fingerprint=__fingerprint__}]?.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\wwwroot\\css\\fingerprint-site.css", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "RelativePath": "css/fingerprint-site#[.{fingerprint}]?.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\fingerprint-site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "css/fingerprint-site.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\css\\fingerprint-site#[.{fingerprint=__fingerprint__}]?.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "css/fingerprint-site.__fingerprint__.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\css\\fingerprint-site#[.{fingerprint=__fingerprint__}]?.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "css/fingerprint-site.css.gz" + } + ] + }, + { + "Route": "css/fingerprint-site.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\css\\fingerprint-site#[.{fingerprint=__fingerprint__}]?.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "css/fingerprint-site.__fingerprint__.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\css\\fingerprint-site#[.{fingerprint=__fingerprint__}]?.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "css/fingerprint-site.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "css/fingerprint-site.css", + "AssetFile": "${ProjectPath}\\wwwroot\\css\\fingerprint-site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "css/fingerprint-site.__fingerprint__.css", + "AssetFile": "${ProjectPath}\\wwwroot\\css\\fingerprint-site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "css/fingerprint-site.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json new file mode 100644 index 000000000000..ff5e94bf0263 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json @@ -0,0 +1,6 @@ +[ + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json new file mode 100644 index 000000000000..ab40209e2da7 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json @@ -0,0 +1,1390 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.files.json new file mode 100644 index 000000000000..ff5e94bf0263 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.files.json @@ -0,0 +1,6 @@ +[ + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.staticwebassets.json new file mode 100644 index 000000000000..ab40209e2da7 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.staticwebassets.json @@ -0,0 +1,1390 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.files.json new file mode 100644 index 000000000000..ff5e94bf0263 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.files.json @@ -0,0 +1,6 @@ +[ + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.staticwebassets.json new file mode 100644 index 000000000000..e3df085be66e --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.staticwebassets.json @@ -0,0 +1,1581 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [ + { + "Name": "ComponentApp\\wwwroot", + "Source": "ComponentApp", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\index.html.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "index.html.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\wwwroot\\index.html", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\wwwroot\\index.html.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\wwwroot\\index.html", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "RelativePath": "index.html", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\index.html", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "index.html.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\index.html.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/html" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "index.html", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\index.html.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/html" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "index.html", + "AssetFile": "${ProjectPath}\\wwwroot\\index.html", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/html" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.files.json new file mode 100644 index 000000000000..0637a088a01e --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.files.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..72ff3fdc2242 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json @@ -0,0 +1,416 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "", + "GetPublishAssetsTargets": "GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.#[{fingerprint=v4}].js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.#[{fingerprint=v4}].js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.#[{fingerprint=v4}].js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.#[{fingerprint}].js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.#[{fingerprint=v4}].js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "js/project-transitive-dep..js.gz" + } + ] + }, + { + "Route": "js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.#[{fingerprint=v4}].js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "js/project-transitive-dep..js" + } + ] + }, + { + "Route": "js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "js/project-transitive-dep..js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/CanEnable_CompressionOnAllAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/CanEnable_CompressionOnAllAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..0751baa3633b --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/CanEnable_CompressionOnAllAssets.Build.staticwebassets.json @@ -0,0 +1,1104 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "SourceId": "AppWithP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "AppWithP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithP2PReference.styles.css" + } + ] + }, + { + "Route": "AppWithP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Clean_RemovesManifestFrom_BuildAndIntermediateOutput.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Clean_RemovesManifestFrom_BuildAndIntermediateOutput.Build.staticwebassets.json new file mode 100644 index 000000000000..ab40209e2da7 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Clean_RemovesManifestFrom_BuildAndIntermediateOutput.Build.staticwebassets.json @@ -0,0 +1,1390 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..f8528ca0503b --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json @@ -0,0 +1,2265 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json new file mode 100644 index 000000000000..579d21c42b1d --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json @@ -0,0 +1,65 @@ +[ + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json new file mode 100644 index 000000000000..d064a76eab26 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json @@ -0,0 +1,3735 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.br" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Build.staticwebassets.json new file mode 100644 index 000000000000..f864403dbfae --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Build.staticwebassets.json @@ -0,0 +1,2647 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "AnotherClassLib.lib.module.js.gz", + "AssetKind": "Build", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.build.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "Never", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.build.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "AnotherClassLib.lib.module.js", + "AssetKind": "Build", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "JSModule", + "AssetTraitValue": "JSLibraryModule", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "Never", + "OriginalItemSpec": "wwwroot\\AnotherClassLib.lib.module.build.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference.modules.json.gz", + "AssetKind": "Build", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\AppWithPackageAndP2PReference.modules.json.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference.modules.json", + "AssetKind": "Build", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "JSModule", + "AssetTraitValue": "JSModuleManifest", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.build.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.files.json new file mode 100644 index 000000000000..da6299295ac8 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.files.json @@ -0,0 +1,41 @@ +[ + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json.gz", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.staticwebassets.json new file mode 100644 index 000000000000..242de842fcbb --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.staticwebassets.json @@ -0,0 +1,4371 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "AnotherClassLib.lib.module.js.gz", + "AssetKind": "Publish", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "AnotherClassLib.lib.module.js.br", + "AssetKind": "Publish", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "AnotherClassLib.lib.module.js", + "AssetKind": "Publish", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "JSModule", + "AssetTraitValue": "JSLibraryModule", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\AnotherClassLib.lib.module.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.br", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference.modules.json.br", + "AssetKind": "Publish", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\AppWithPackageAndP2PReference.modules.json.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference.modules.json.gz", + "AssetKind": "Publish", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\AppWithPackageAndP2PReference.modules.json.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference.modules.json", + "AssetKind": "Publish", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "JSModule", + "AssetTraitValue": "JSModuleManifest", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.br" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..fd866dc607c5 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json @@ -0,0 +1,2265 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json new file mode 100644 index 000000000000..cd0e497b7792 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json @@ -0,0 +1,65 @@ +[ + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json new file mode 100644 index 000000000000..bfc567176e5c --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json @@ -0,0 +1,3735 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.br" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Build.staticwebassets.json new file mode 100644 index 000000000000..1dc00d8ee849 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Build.staticwebassets.json @@ -0,0 +1,2830 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "AnotherClassLib.lib.module.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "AnotherClassLib.lib.module.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "JSModule", + "AssetTraitValue": "JSLibraryModule", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\AnotherClassLib.lib.module.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference.modules.json.gz", + "AssetKind": "Build", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\AppWithPackageAndP2PReference.modules.json.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference.modules.json", + "AssetKind": "Build", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "JSModule", + "AssetTraitValue": "JSModuleManifest", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "AnotherClassLib.lib.module.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\AnotherClassLib.lib.module.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\AnotherClassLib.lib.module.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "AnotherClassLib.lib.module.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\AnotherClassLib.lib.module.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\AnotherClassLib.lib.module.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.files.json new file mode 100644 index 000000000000..45fd654ea97e --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.files.json @@ -0,0 +1,86 @@ +[ + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json.gz", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.br", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.staticwebassets.json new file mode 100644 index 000000000000..275a8caf202e --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.staticwebassets.json @@ -0,0 +1,4677 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "AnotherClassLib.lib.module.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "AnotherClassLib.lib.module.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "AnotherClassLib.lib.module.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "JSModule", + "AssetTraitValue": "JSLibraryModule", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\AnotherClassLib.lib.module.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.br", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference.modules.json.br", + "AssetKind": "Publish", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\AppWithPackageAndP2PReference.modules.json.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference.modules.json.gz", + "AssetKind": "Publish", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\AppWithPackageAndP2PReference.modules.json.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference.modules.json", + "AssetKind": "Publish", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "JSModule", + "AssetTraitValue": "JSModuleManifest", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "AnotherClassLib.lib.module.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\AnotherClassLib.lib.module.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "AnotherClassLib.lib.module.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\AnotherClassLib.lib.module.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\AnotherClassLib.lib.module.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "AnotherClassLib.lib.module.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\AnotherClassLib.lib.module.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.br" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.modules.json", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\AnotherClassLib.lib.module.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..fd866dc607c5 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json @@ -0,0 +1,2265 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json new file mode 100644 index 000000000000..64a2b2273f42 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json @@ -0,0 +1,35 @@ +[ + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json new file mode 100644 index 000000000000..bfc567176e5c --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json @@ -0,0 +1,3735 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.br" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..f78eea5b6067 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json @@ -0,0 +1,2265 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json new file mode 100644 index 000000000000..0b77179d4e63 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json @@ -0,0 +1,35 @@ +[ + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json new file mode 100644 index 000000000000..29c266ca5461 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json @@ -0,0 +1,3735 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 2, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.br" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json new file mode 100644 index 000000000000..b1776f7adb3f --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json @@ -0,0 +1,1921 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 1, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 1, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.files.json new file mode 100644 index 000000000000..2742db812e43 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.files.json @@ -0,0 +1,63 @@ +[ + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\css\\site.css", + "${OutputPath}\\wwwroot\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.staticwebassets.json new file mode 100644 index 000000000000..20005ea9697f --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.staticwebassets.json @@ -0,0 +1,3152 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 1, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 1, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.br" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.files.json new file mode 100644 index 000000000000..8040bcb9de07 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.files.json @@ -0,0 +1,18 @@ +[ + "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithP2PReference.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithP2PReference.styles.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js.gz" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..9135a74bf3db --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.staticwebassets.json @@ -0,0 +1,1227 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "SourceId": "AppWithP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "AppWithP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithP2PReference.styles.css" + } + ] + }, + { + "Route": "AppWithP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets.Publish.staticwebassets.json new file mode 100644 index 000000000000..7ea44f42aee8 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets.Publish.staticwebassets.json @@ -0,0 +1,2660 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [ + { + "Name": "ComponentApp\\wwwroot", + "Source": "ComponentApp", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "app.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\wwwroot\\app.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\wwwroot\\app.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\app.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "app.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\wwwroot\\app.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\wwwroot\\app.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\wwwroot\\app.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "RelativePath": "app.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\app.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "app.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "app.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.br" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.br" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.br" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.br" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "app.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\app.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "app.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\app.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "app.js", + "AssetFile": "${ProjectPath}\\wwwroot\\app.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets_BuildAndPublish_Assets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets_BuildAndPublish_Assets.Publish.staticwebassets.json new file mode 100644 index 000000000000..0007d427537c --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets_BuildAndPublish_Assets.Publish.staticwebassets.json @@ -0,0 +1,2660 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [ + { + "Name": "ComponentApp\\wwwroot", + "Source": "ComponentApp", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "app.js.gz", + "AssetKind": "Publish", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\wwwroot\\app.publish.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\wwwroot\\app.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\app.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "app.js.br", + "AssetKind": "Publish", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\wwwroot\\app.publish.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\wwwroot\\app.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\wwwroot\\app.publish.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "RelativePath": "app.js", + "AssetKind": "Publish", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\app.publish.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "app.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "app.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.br" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.br" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.br" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.br" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "app.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\app.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "app.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\app.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "app.js", + "AssetFile": "${ProjectPath}\\wwwroot\\app.publish.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.files.json new file mode 100644 index 000000000000..5e5415c86278 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.files.json @@ -0,0 +1,8 @@ +[ + "${OutputPath}\\wwwroot\\test.js", + "${OutputPath}\\wwwroot\\test.js.br", + "${OutputPath}\\wwwroot\\test.js.gz", + "${OutputPath}\\wwwroot\\test.js", + "${OutputPath}\\wwwroot\\test.js.br", + "${OutputPath}\\wwwroot\\test.js.gz" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.staticwebassets.json new file mode 100644 index 000000000000..eed9fd21da58 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.staticwebassets.json @@ -0,0 +1,328 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "RazorComponentAppMultitarget", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [ + { + "Name": "RazorComponentAppMultitarget\\wwwroot", + "Source": "RazorComponentAppMultitarget", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\test.js.br", + "SourceId": "RazorComponentAppMultitarget", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "test.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "Server", + "RelatedAsset": "${ProjectPath}\\wwwroot\\test.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\wwwroot\\test.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\test.js.gz", + "SourceId": "RazorComponentAppMultitarget", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "test.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "Server", + "RelatedAsset": "${ProjectPath}\\wwwroot\\test.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\wwwroot\\test.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\wwwroot\\test.js", + "SourceId": "RazorComponentAppMultitarget", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "RelativePath": "test.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "Server", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\test.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "test.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\test.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "test.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\test.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "test.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\test.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "test.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\test.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "test.js", + "AssetFile": "${ProjectPath}\\wwwroot\\test.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..ab40209e2da7 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json @@ -0,0 +1,1390 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json new file mode 100644 index 000000000000..3e796c825b34 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json @@ -0,0 +1,26 @@ +[ + "${OutputPath}\\wwwroot\\ComponentApp.styles.css", + "${OutputPath}\\wwwroot\\ComponentApp.styles.css.br", + "${OutputPath}\\wwwroot\\ComponentApp.styles.css.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.web.js", + "${OutputPath}\\wwwroot\\_framework\\blazor.web.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.web.js.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint}]?.styles.css", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint}]?.js" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json new file mode 100644 index 000000000000..ae1b710a0fc1 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json @@ -0,0 +1,2346 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.br" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.br" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.br" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.br" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..ab40209e2da7 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json @@ -0,0 +1,1390 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json new file mode 100644 index 000000000000..577f4a28f303 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json @@ -0,0 +1,17 @@ +[ + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint}]?.styles.css", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint}]?.js" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json new file mode 100644 index 000000000000..ae1b710a0fc1 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json @@ -0,0 +1,2346 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.br" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.br" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.br" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.br" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..cbd329b4f4ad --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json @@ -0,0 +1,1390 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json new file mode 100644 index 000000000000..6cfe493a3f50 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json @@ -0,0 +1,17 @@ +[ + "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint}]?.styles.css", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint}]?.js" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json new file mode 100644 index 000000000000..ec64a6222e0d --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json @@ -0,0 +1,2346 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.server.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.br" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.br" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.br" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.br" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.files.json new file mode 100644 index 000000000000..cde2de387263 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.files.json @@ -0,0 +1,41 @@ +[ + "${OutputPath}\\wwwroot\\ComponentApp.__fingerprint__.lib.module.js", + "${OutputPath}\\wwwroot\\ComponentApp.__fingerprint__.lib.module.js.br", + "${OutputPath}\\wwwroot\\ComponentApp.__fingerprint__.lib.module.js.gz", + "${OutputPath}\\wwwroot\\ComponentApp.modules.json", + "${OutputPath}\\wwwroot\\ComponentApp.modules.json.br", + "${OutputPath}\\wwwroot\\ComponentApp.modules.json.gz", + "${OutputPath}\\wwwroot\\ComponentApp.styles.css", + "${OutputPath}\\wwwroot\\ComponentApp.styles.css.br", + "${OutputPath}\\wwwroot\\ComponentApp.styles.css.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.web.js", + "${OutputPath}\\wwwroot\\_framework\\blazor.web.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.web.js.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint}]!.lib.module.js", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint}]?.modules.json", + "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint}]?.styles.css", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint}]?.js" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.staticwebassets.json new file mode 100644 index 000000000000..7d219d08beef --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.staticwebassets.json @@ -0,0 +1,3568 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [ + { + "Name": "ComponentApp\\wwwroot", + "Source": "ComponentApp", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\wwwroot\\ComponentApp.lib.module.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\wwwroot\\ComponentApp.lib.module.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", + "AssetKind": "Publish", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", + "AssetKind": "Publish", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.modules.json", + "AssetKind": "Publish", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "JSModule", + "AssetTraitValue": "JSModuleManifest", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\wwwroot\\ComponentApp.lib.module.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\wwwroot\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.lib.module.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "JSModule", + "AssetTraitValue": "JSLibraryModule", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\ComponentApp.lib.module.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.lib.module.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.lib.module.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.lib.module.js.gz" + } + ] + }, + { + "Route": "ComponentApp.lib.module.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.lib.module.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.lib.module.js" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.br" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.lib.module.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.lib.module.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.lib.module.js.br" + } + ] + }, + { + "Route": "ComponentApp.lib.module.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.lib.module.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.lib.module.js" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "ComponentApp.modules.json.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.modules.json.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.modules.json.br" + } + ] + }, + { + "Route": "ComponentApp.modules.json", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.modules.json", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.modules.json" + } + ] + }, + { + "Route": "ComponentApp.modules.json.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.modules.json.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.modules.json.gz" + } + ] + }, + { + "Route": "ComponentApp.modules.json", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.modules.json", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.modules.json" + } + ] + }, + { + "Route": "ComponentApp.styles.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.br" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.br" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.br", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.br" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.modules.json", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.modules.json", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "application/json" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.modules.json" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.lib.module.js", + "AssetFile": "${ProjectPath}\\wwwroot\\ComponentApp.lib.module.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.lib.module.js", + "AssetFile": "${ProjectPath}\\wwwroot\\ComponentApp.lib.module.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "dependency-group", + "Value": "js-initializer" + }, + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.lib.module.js" + }, + { + "Name": "script-type", + "Value": "module" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json new file mode 100644 index 000000000000..83e2c08cf9d4 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json @@ -0,0 +1,392 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "", + "GetPublishAssetsTargets": "GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.files.json new file mode 100644 index 000000000000..4c44b3531007 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.files.json @@ -0,0 +1,14 @@ +[ + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js.gz" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.staticwebassets.json new file mode 100644 index 000000000000..89ddc0d9d3d2 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.staticwebassets.json @@ -0,0 +1,638 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 2, + "Source": "", + "GetPublishAssetsTargets": "GetCurrentProjectPublishStaticWebAssetItems", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.br", + "AssetKind": "Publish", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "PreserveNewest", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.br", + "AssetKind": "Publish", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "PreserveNewest", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "Publish", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "PreserveNewest", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "Publish", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "PreserveNewest", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.v4.js.br", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json new file mode 100644 index 000000000000..ab40209e2da7 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json @@ -0,0 +1,1390 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.files.json new file mode 100644 index 000000000000..ff5e94bf0263 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.files.json @@ -0,0 +1,6 @@ +[ + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.staticwebassets.json new file mode 100644 index 000000000000..ab40209e2da7 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.staticwebassets.json @@ -0,0 +1,1390 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "ComponentApp", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [ + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "SourceId": "ComponentApp", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "/", + "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.server.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "SourceId": "ComponentApp", + "SourceType": "Discovered", + "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", + "BasePath": "/", + "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "ComponentApp.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css.gz" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "ComponentApp.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css.gz" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js.gz", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js.gz" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + }, + { + "Route": "ComponentApp.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.styles.css" + } + ] + }, + { + "Route": "ComponentApp.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "ComponentApp.__fingerprint__.bundle.scp.css", + "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "ComponentApp.bundle.scp.css" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.server.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.server.js" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_framework/blazor.web.js", + "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_framework/blazor.web.js" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.files.json new file mode 100644 index 000000000000..b800715727ea --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.files.json @@ -0,0 +1,4 @@ +[ + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.staticwebassets.json new file mode 100644 index 000000000000..48cde49acf3b --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.staticwebassets.json @@ -0,0 +1,2104 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 1, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 1, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.files.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.files.json new file mode 100644 index 000000000000..d7cf3c435b7b --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.files.json @@ -0,0 +1,69 @@ +[ + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\css\\site.css", + "${OutputPath}\\wwwroot\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" +] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.staticwebassets.json new file mode 100644 index 000000000000..ea780cdd6a17 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.staticwebassets.json @@ -0,0 +1,3458 @@ +{ + "Version": 1, + "Hash": "__hash__", + "Source": "AppWithPackageAndP2PReference", + "BasePath": "/", + "Mode": "Root", + "ManifestType": "Publish", + "ReferencedProjectsConfiguration": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", + "Version": 1, + "Source": "AnotherClassLib", + "GetPublishAssetsTargets": "", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", + "Version": 1, + "Source": "ClassLibrary", + "GetPublishAssetsTargets": "", + "AdditionalPublishProperties": "", + "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", + "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", + "AdditionalBuildProperties": "", + "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" + } + ], + "DiscoveryPatterns": [ + { + "Name": "AnotherClassLib\\wwwroot", + "Source": "AnotherClassLib", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "Pattern": "**" + }, + { + "Name": "ClassLibrary\\wwwroot", + "Source": "ClassLibrary", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "Pattern": "**" + } + ], + "Assets": [ + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.gz", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "gzip", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "SourceId": "AnotherClassLib", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/AnotherClassLib", + "RelativePath": "js/project-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js.br", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Alternative", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "AssetTraitName": "Content-Encoding", + "AssetTraitValue": "br", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "SourceId": "AppWithPackageAndP2PReference", + "SourceType": "Computed", + "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", + "BasePath": "/", + "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", + "AssetKind": "All", + "AssetMode": "CurrentProject", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ApplicationBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "ClassLibrary.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "SourceId": "ClassLibrary", + "SourceType": "Project", + "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", + "BasePath": "_content/ClassLibrary", + "RelativePath": "js/project-transitive-dep.v4.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetKind": "All", + "AssetMode": "Reference", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "ScopedCss", + "AssetTraitValue": "ProjectBundle", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "css/site.css", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "SourceId": "RazorPackageLibraryDirectDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryDirectDependency", + "RelativePath": "js/pkg-direct-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + }, + { + "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "SourceId": "RazorPackageLibraryTransitiveDependency", + "SourceType": "Package", + "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", + "BasePath": "_content/RazorPackageLibraryTransitiveDependency", + "RelativePath": "js/pkg-transitive-dep.js", + "AssetKind": "All", + "AssetMode": "All", + "AssetRole": "Primary", + "AssetMergeBehavior": "", + "AssetMergeSource": "", + "RelatedAsset": "", + "AssetTraitName": "", + "AssetTraitValue": "", + "Fingerprint": "__fingerprint__", + "Integrity": "__integrity__", + "CopyToOutputDirectory": "Never", + "CopyToPublishDirectory": "PreserveNewest", + "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "FileLength": -1, + "LastWriteTime": "0001-01-01T00:00:00+00:00" + } + ], + "Endpoints": [ + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.gz" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "gzip", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "gzip" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css.br" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/AnotherClassLib/js/project-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", + "Selectors": [ + { + "Name": "Content-Encoding", + "Value": "br", + "Quality": "__quality__" + } + ], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Encoding", + "Value": "br" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Vary", + "Value": "Content-Encoding" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", + "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + }, + { + "Name": "Link", + "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "AppWithPackageAndP2PReference.styles.css" + } + ] + }, + { + "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", + "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", + "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "max-age=31536000, immutable" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "fingerprint", + "Value": "__fingerprint__" + }, + { + "Name": "integrity", + "Value": "__integrity__" + }, + { + "Name": "label", + "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/css" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + }, + { + "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", + "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", + "Selectors": [], + "ResponseHeaders": [ + { + "Name": "Accept-Ranges", + "Value": "bytes" + }, + { + "Name": "Cache-Control", + "Value": "no-cache" + }, + { + "Name": "Content-Length", + "Value": "__content-length__" + }, + { + "Name": "Content-Type", + "Value": "text/javascript" + }, + { + "Name": "ETag", + "Value": "__etag__" + }, + { + "Name": "Last-Modified", + "Value": "__last-modified__" + } + ], + "EndpointProperties": [ + { + "Name": "integrity", + "Value": "__integrity__" + } + ] + } + ] +} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsCompressionIntegrationTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsCompressionIntegrationTest.cs new file mode 100644 index 000000000000..0ff89c2cb6d5 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsCompressionIntegrationTest.cs @@ -0,0 +1,219 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using System.IO.Compression; +using System.Net.Http.Headers; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + public class StaticWebAssetsCompressionIntegrationTest : AspNetSdkBaselineTest + { + public StaticWebAssetsCompressionIntegrationTest(ITestOutputHelper log) : base(log, GenerateBaselines) { } + + [Fact] + public void Build_Detects_PrecompressedAssets() + { + var expectedManifest = LoadBuildManifest(); + var testAsset = "RazorAppWithP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + var file = Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js"); + var gzipFile = Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js.gz"); + var brotliFile = Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js.br"); + + // Compress file into gzip and brotli + using (var gzipStream = new GZipStream(File.Create(gzipFile), CompressionLevel.NoCompression)) + { + using var stream = File.OpenRead(file); + stream.CopyTo(gzipStream); + } + + using (var brotliStream = new BrotliStream(File.Create(brotliFile), CompressionLevel.NoCompression)) + { + using var stream = File.OpenRead(file); + stream.CopyTo(brotliStream); + } + + var build = CreateBuildCommand(ProjectDirectory, "AppWithP2PReference"); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, expectedManifest); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "AppWithP2PReference.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().Exist(); + + var manifest1 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); + AssertManifest(manifest1, expectedManifest); + AssertBuildAssets(manifest1, outputPath, intermediateOutputPath); + + var manifest2 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); + + var standardEndpoints = manifest2.Endpoints.Where(e => string.Equals(e.AssetFile, file, StringComparison.Ordinal)).ToArray(); + var gzipEndpoints = manifest2.Endpoints.Where(e => string.Equals(e.AssetFile, gzipFile, StringComparison.Ordinal)).ToArray(); + var brotliEndpoints = manifest2.Endpoints.Where(e => string.Equals(e.AssetFile, brotliFile, StringComparison.Ordinal)).ToArray(); + + var gzipAsset = manifest2.Assets.Single(a => string.Equals(a.Identity, gzipFile, StringComparison.Ordinal)); + var brotliAsset = manifest2.Assets.Single(a => string.Equals(a.Identity, brotliFile, StringComparison.Ordinal)); + + standardEndpoints.Should().HaveCount(1); + gzipEndpoints.Should().HaveCount(2); + brotliEndpoints.Should().HaveCount(2); + + var expectedWeakEndpointEtag = new EntityTagHeaderValue( + EntityTagHeaderValue.Parse(standardEndpoints.First().ResponseHeaders.Single(h => h.Name == "ETag").Value).Tag, + isWeak: true); + + foreach (var endpoint in gzipEndpoints) + { + endpoint.ResponseHeaders.Where(e => e.Name == "Content-Encoding").Select(e => e.Value).Single().Should().Be("gzip"); + + var etags = endpoint.ResponseHeaders.Where(e => e.Name == "ETag").Select(e => EntityTagHeaderValue.Parse(e.Value)); + etags.Where(e=> !e.IsWeak).Select(e => e.Tag).Single().Should().BeEquivalentTo($"\"{gzipAsset.Integrity}\""); + if (endpoint.Route.EndsWith(".gz")) + { + continue; + } + etags.Should().Contain(expectedWeakEndpointEtag); + } + + foreach (var endpoint in brotliEndpoints) + { + endpoint.ResponseHeaders.Where(e => e.Name == "Content-Encoding").Select(e => e.Value).Single().Should().Be("br"); + + var etags = endpoint.ResponseHeaders.Where(e => e.Name == "ETag").Select(e => EntityTagHeaderValue.Parse(e.Value)); + etags.Where(e => !e.IsWeak).Select(e => e.Tag).Single().Should().BeEquivalentTo($"\"{brotliAsset.Integrity}\""); + if (endpoint.Route.EndsWith(".br")) + { + continue; + } + etags.Should().Contain(expectedWeakEndpointEtag); + } + } + + [Fact] + public void CanEnable_CompressionOnAllAssets() + { + var expectedManifest = LoadBuildManifest(); + var testAsset = "RazorAppWithP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset) + .WithProjectChanges((project, xml) => + { + if (project.Contains("ClassLibrary")) + { + xml.Descendants("PropertyGroup") + .First().Add(new XElement("StaticWebAssetBuildCompressAllAssets", "true")); + } + }); + + var build = CreateBuildCommand(ProjectDirectory, "AppWithP2PReference"); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, expectedManifest); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "AppWithP2PReference.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().Exist(); + } + + [Fact] + public void PublishWorks_With_PrecompressedAssets() + { + var expectedManifest = LoadBuildManifest(); + var testAsset = "RazorAppWithP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + var file = Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js"); + var gzipFile = Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js.gz"); + var brotliFile = Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js.br"); + + // Compress file into gzip and brotli + using (var gzipStream = new GZipStream(File.Create(gzipFile), CompressionLevel.NoCompression)) + { + using var stream = File.OpenRead(file); + stream.CopyTo(gzipStream); + } + + using (var brotliStream = new BrotliStream(File.Create(brotliFile), CompressionLevel.NoCompression)) + { + using var stream = File.OpenRead(file); + stream.CopyTo(brotliStream); + } + + var build = CreatePublishCommand(ProjectDirectory, "AppWithP2PReference"); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, expectedManifest); + + + var manifest1 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); + AssertManifest(manifest1, expectedManifest); + AssertBuildAssets(manifest1, outputPath, intermediateOutputPath); + + var manifest2 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"))); + + var standardEndpoints = manifest2.Endpoints.Where(e => string.Equals(e.AssetFile, file, StringComparison.Ordinal)).ToArray(); + var gzipEndpoints = manifest2.Endpoints.Where(e => string.Equals(e.AssetFile, gzipFile, StringComparison.Ordinal)).ToArray(); + var brotliEndpoints = manifest2.Endpoints.Where(e => string.Equals(e.AssetFile, brotliFile, StringComparison.Ordinal)).ToArray(); + + var gzipAsset = manifest2.Assets.Single(a => string.Equals(a.Identity, gzipFile, StringComparison.Ordinal)); + var brotliAsset = manifest2.Assets.Single(a => string.Equals(a.Identity, brotliFile, StringComparison.Ordinal)); + + standardEndpoints.Should().HaveCount(1); + gzipEndpoints.Should().HaveCount(2); + brotliEndpoints.Should().HaveCount(2); + + var expectedWeakEndpointEtag = new EntityTagHeaderValue( + EntityTagHeaderValue.Parse(standardEndpoints.First().ResponseHeaders.Single(h => h.Name == "ETag").Value).Tag, + isWeak: true); + + foreach (var endpoint in gzipEndpoints) + { + endpoint.ResponseHeaders.Where(e => e.Name == "Content-Encoding").Select(e => e.Value).Single().Should().Be("gzip"); + + var etags = endpoint.ResponseHeaders.Where(e => e.Name == "ETag").Select(e => EntityTagHeaderValue.Parse(e.Value)); + etags.Where(e => !e.IsWeak).Select(e => e.Tag).Single().Should().BeEquivalentTo($"\"{gzipAsset.Integrity}\""); + if (endpoint.Route.EndsWith(".gz")) + { + continue; + } + etags.Should().Contain(expectedWeakEndpointEtag); + } + + foreach (var endpoint in brotliEndpoints) + { + endpoint.ResponseHeaders.Where(e => e.Name == "Content-Encoding").Select(e => e.Value).Single().Should().Be("br"); + + var etags = endpoint.ResponseHeaders.Where(e => e.Name == "ETag").Select(e => EntityTagHeaderValue.Parse(e.Value)); + etags.Where(e => !e.IsWeak).Select(e => e.Tag).Single().Should().BeEquivalentTo($"\"{brotliAsset.Integrity}\""); + if (endpoint.Route.EndsWith(".br")) + { + continue; + } + etags.Should().Contain(expectedWeakEndpointEtag); + } + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsCrossTargetingTests.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsCrossTargetingTests.cs new file mode 100644 index 000000000000..83c26581d2a0 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsCrossTargetingTests.cs @@ -0,0 +1,109 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +// 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.AspNetCore.StaticWebAssets.Tasks; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + public class StaticWebAssetsCrossTargetingTests(ITestOutputHelper log) + : IsolatedNuGetPackageFolderAspNetSdkBaselineTest(log, nameof(StaticWebAssetsCrossTargetingTests)) + { + // Build Standalone project + [RequiresMSBuildVersionFact("17.12", Reason = "Needs System.Text.Json 8.0.5")] + public void Build_CrosstargetingTests_CanIncludeBrowserAssets() + { + var expectedManifest = LoadBuildManifest(); + var testAsset = "RazorComponentAppMultitarget"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + ProjectDirectory.WithProjectChanges(d => + { + d.Root.Element("PropertyGroup").Add( + XElement.Parse("""/""")); + + d.Root.LastNode.AddBeforeSelf( + XElement.Parse(""" + + + browser + + + """)); + }); + + var wwwroot = Directory.CreateDirectory(Path.Combine(ProjectDirectory.TestRoot, "wwwroot")); + File.WriteAllText(Path.Combine(wwwroot.FullName, "test.js"), "console.log('hello')"); + + var build = CreateBuildCommand(ProjectDirectory); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, expectedManifest); + AssertBuildAssets(manifest, outputPath, intermediateOutputPath); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "RazorComponentAppMultitarget.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().Exist(); + } + + [Fact] + public void Publish_CrosstargetingTests_CanIncludeBrowserAssets() + { + var testAsset = "RazorComponentAppMultitarget"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + ProjectDirectory.WithProjectChanges(d => + { + d.Root.Element("PropertyGroup").Add( + XElement.Parse("""/""")); + + d.Root.LastNode.AddBeforeSelf( + XElement.Parse(""" + + + browser + + + """)); + }); + + var wwwroot = Directory.CreateDirectory(Path.Combine(ProjectDirectory.TestRoot, "wwwroot")); + File.WriteAllText(Path.Combine(wwwroot.FullName, "test.js"), "console.log('hello')"); + + var restore = CreateRestoreCommand(ProjectDirectory); + ExecuteCommand(restore).Should().Pass(); + + var publish = CreatePublishCommand(ProjectDirectory); + ExecuteCommandWithoutRestore(publish, "/bl", "/p:TargetFramework=net10.0").Should().Pass(); + + var publishPath = publish.GetOutputDirectory(DefaultTfm).ToString(); + var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, LoadPublishManifest()); + + AssertPublishAssets( + manifest, + publishPath, + intermediateOutputPath); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsDesignTimeTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsDesignTimeTest.cs new file mode 100644 index 000000000000..5b57ef2b2c53 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsDesignTimeTest.cs @@ -0,0 +1,163 @@ +// 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 System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests; + +public class StaticWebAssetsDesignTimeTest(ITestOutputHelper log) : AspNetSdkBaselineTest(log) +{ +#if DEBUG + public const string Configuration = "Debug"; +#else + public const string Configuration = "Release"; +#endif + + [Fact] + public void CollectUpToDateCheckInputOutputsDesignTime_ReportsAddedFiles() + { + // Arrange + var testAsset = "RazorAppWithP2PReference"; + ProjectDirectory = AddIntrospection(CreateAspNetSdkTestAsset(testAsset)); + + var build = CreateBuildCommand(ProjectDirectory, "ClassLibrary"); + + build.Execute("/p:DesignTimeBuild=true", "/p:BuildingInsideVisualStudio=true", "/bl:build.binlog").Should().Pass(); + + File.WriteAllText(Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "file.js"), "New File"); + + var msbuild = CreateMSBuildCommand( + ProjectDirectory, + "ClassLibrary", + "ResolveStaticWebAssetsConfiguration;ResolveProjectStaticWebAssets;CollectStaticWebAssetInputsDesignTime;CollectStaticWebAssetOutputsDesignTime"); + + msbuild.ExecuteWithoutRestore("/p:DesignTimeBuild=true", "/p:BuildingInsideVisualStudio=true", "/bl:design.binlog").Should().Pass(); + + // Check the contents of the input and output files + var inputFilePath = Path.Combine(build.GetIntermediateDirectory().FullName, "StaticWebAssetsUTDCInput.txt"); + new FileInfo(inputFilePath).Should().Exist(); + var inputFiles = File.ReadAllLines(inputFilePath); + inputFiles.Should().HaveCount(3); + inputFiles.Should().Contain(Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "file.js")); + inputFiles.Should().Contain(Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js")); + inputFiles.Should().Contain(Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.v4.js")); + + var outputFilePath = Path.Combine(build.GetIntermediateDirectory().FullName, "StaticWebAssetsUTDCOutput.txt"); + new FileInfo(outputFilePath).Should().Exist(); + var outputFiles = File.ReadAllLines(outputFilePath); + outputFiles.Should().ContainSingle(); + Path.GetFileName(outputFiles[0]).Should().Be("staticwebassets.build.json"); + } + + [Fact] + public void CollectUpToDateCheckInputOutputsDesignTime_ReportsRemovedFiles_Once() + { + // Arrange + var testAsset = "RazorAppWithP2PReference"; + ProjectDirectory = AddIntrospection(CreateAspNetSdkTestAsset(testAsset)); + + var build = CreateBuildCommand(ProjectDirectory, "ClassLibrary"); + + build.Execute("/p:DesignTimeBuild=true", "/p:BuildingInsideVisualStudio=true", "/bl:build.binlog").Should().Pass(); + + File.Delete(Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js")); + + var msbuild = CreateMSBuildCommand( + ProjectDirectory, + "ClassLibrary", + "ResolveStaticWebAssetsConfiguration;ResolveProjectStaticWebAssets;CollectStaticWebAssetInputsDesignTime;CollectStaticWebAssetOutputsDesignTime"); + + msbuild.ExecuteWithoutRestore("/p:DesignTimeBuild=true", "/p:BuildingInsideVisualStudio=true", "/bl:design.binlog").Should().Pass(); + + // Check the contents of the input and output files + var inputFilePath = Path.Combine(build.GetIntermediateDirectory().FullName, "StaticWebAssetsUTDCInput.txt"); + new FileInfo(inputFilePath).Should().Exist(); + var inputFiles = File.ReadAllLines(inputFilePath); + inputFiles.Should().HaveCount(2); + inputFiles.Should().Contain(Path.Combine(build.GetIntermediateDirectory().FullName, "staticwebassets.removed.txt")); + inputFiles.Should().Contain(Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.v4.js")); + + var outputFilePath = Path.Combine(build.GetIntermediateDirectory().FullName, "StaticWebAssetsUTDCOutput.txt"); + new FileInfo(outputFilePath).Should().Exist(); + var outputFiles = File.ReadAllLines(outputFilePath); + outputFiles.Should().ContainSingle(); + Path.GetFileName(outputFiles[0]).Should().Be("staticwebassets.build.json"); + } + + [Fact] + public void CollectUpToDateCheckInputOutputsDesignTime_IncludesReferencedProjectsManifests() + { + // Arrange + var testAsset = "RazorAppWithP2PReference"; + ProjectDirectory = AddIntrospection(CreateAspNetSdkTestAsset(testAsset)); + + var build = CreateBuildCommand(ProjectDirectory, "AppWithP2PReference"); + + build.Execute("/bl:build.binlog").Should().Pass(); + build.Execute("/p:DesignTimeBuild=true", "/p:BuildingInsideVisualStudio=true", "/bl:build.binlog").Should().Pass(); + + var msbuild = CreateMSBuildCommand( + ProjectDirectory, + "AppWithP2PReference", + "ResolveStaticWebAssetsConfiguration;ResolveProjectStaticWebAssets;CollectStaticWebAssetInputsDesignTime;CollectStaticWebAssetOutputsDesignTime"); + + msbuild.ExecuteWithoutRestore("/p:DesignTimeBuild=true", "/p:BuildingInsideVisualStudio=true", "/bl:design.binlog").Should().Pass(); + + // Check the contents of the input and output files + var inputFilePath = Path.Combine(build.GetIntermediateDirectory().FullName, "StaticWebAssetsUTDCInput.txt"); + new FileInfo(inputFilePath).Should().Exist(); + var inputFiles = File.ReadAllLines(inputFilePath); + inputFiles.Should().HaveCount(1); + inputFiles.Should().Contain(Path.Combine(ProjectDirectory.Path, "ClassLibrary", "obj", "Debug", DefaultTfm, "staticwebassets.build.json")); + + var outputFilePath = Path.Combine(build.GetIntermediateDirectory().FullName, "StaticWebAssetsUTDCOutput.txt"); + new FileInfo(outputFilePath).Should().Exist(); + var outputFiles = File.ReadAllLines(outputFilePath); + outputFiles.Should().ContainSingle(); + Path.GetFileName(outputFiles[0]).Should().Be("staticwebassets.build.json"); + } + + private static MSBuildCommand CreateMSBuildCommand(TestAsset testAsset, string relativeProjectPath, string targets) + { + return (MSBuildCommand)new MSBuildCommand(testAsset.Log, targets, testAsset.TestRoot, relativeProjectPath) + .WithWorkingDirectory(testAsset.TestRoot); + } + + private static TestAsset AddIntrospection(TestAsset testAsset) + { + return testAsset + .WithProjectChanges((name, project) => + { + project.Document.Root.LastNode.AddAfterSelf( + XElement.Parse(""" + + + <_StaticWebAssetsUTDCInput Include="@(UpToDateCheckInput)" Condition="'%(UpToDateCheckInput.Set)' == 'StaticWebAssets'" /> + <_StaticWebAssetsUTDCOutput Include="@(UpToDateCheckOutput)" Condition="'%(UpToDateCheckOutput.Set)' == 'StaticWebAssets'" /> + + + + + + + """ + )); + }); + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsFingerprintingTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsFingerprintingTest.cs new file mode 100644 index 000000000000..e9af1e2755ad --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsFingerprintingTest.cs @@ -0,0 +1,206 @@ +// 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.AspNetCore.StaticWebAssets.Tasks; +using System.Text.Json; +using System.IO.Compression; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests; + +public class StaticWebAssetsContentFingerprintingIntegrationTest(ITestOutputHelper log) : AspNetSdkBaselineTest(log) +{ + [Fact] + public void Build_FingerprintsContent_WhenEnabled() + { + var expectedManifest = LoadBuildManifest(); + var testAsset = "RazorComponentApp"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset) + .WithProjectChanges(p => { + var fingerprintContent = p.Descendants() + .SingleOrDefault(e => e.Name.LocalName == "StaticWebAssetsFingerprintContent"); + fingerprintContent.Value = "true"; + }); + + Directory.CreateDirectory(Path.Combine(ProjectDirectory.Path, "wwwroot", "css")); + File.WriteAllText(Path.Combine(ProjectDirectory.Path, "wwwroot", "css", "fingerprint-site.css"), "body { color: red; }"); + + var build = CreateBuildCommand(ProjectDirectory); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, expectedManifest); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().Exist(); + + var manifest1 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); + AssertManifest(manifest1, expectedManifest); + AssertBuildAssets(manifest1, outputPath, intermediateOutputPath); + } + + public static TheoryData OverrideHtmlAssetPlaceholdersData => new TheoryData + { + { "VanillaWasm", "main.js", "main#[.{fingerprint}].js", true, true }, + { "VanillaWasm", "main.js", null, false, false }, + { "BlazorWasmMinimal", "_framework/blazor.webassembly.js", "_framework/blazor.webassembly#[.{fingerprint}].js", false, true } + }; + + [Theory] + [MemberData(nameof(OverrideHtmlAssetPlaceholdersData))] + public void Build_OverrideHtmlAssetPlaceholders(string testAsset, string scriptPath, string scriptPathWithFingerprintPattern, bool fingerprintUserJavascriptAssets, bool expectFingerprintOnScript) + { + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset, identifier: $"{testAsset}_{fingerprintUserJavascriptAssets}_{expectFingerprintOnScript}"); + ReplaceStringInIndexHtml(ProjectDirectory, scriptPath, scriptPathWithFingerprintPattern); + FingerprintUserJavascriptAssets(fingerprintUserJavascriptAssets); + + var build = CreateBuildCommand(ProjectDirectory); + ExecuteCommand(build, "-p:OverrideHtmlAssetPlaceholders=true", $"-p:FingerprintUserJavascriptAssets={fingerprintUserJavascriptAssets.ToString().ToLower()}").Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var indexHtmlPath = Directory.EnumerateFiles(Path.Combine(intermediateOutputPath, "staticwebassets", "htmlassetplaceholders", "build"), "*.html").Single(); + var endpointsManifestPath = Path.Combine(intermediateOutputPath, $"staticwebassets.build.endpoints.json"); + + AssertImportMapInHtml(indexHtmlPath, endpointsManifestPath, scriptPath, expectFingerprintOnScript: expectFingerprintOnScript, expectPreloadElement: testAsset == "VanillaWasm"); + } + + [Theory] + [MemberData(nameof(OverrideHtmlAssetPlaceholdersData))] + public void Publish_OverrideHtmlAssetPlaceholders(string testAsset, string scriptPath, string scriptPathWithFingerprintPattern, bool fingerprintUserJavascriptAssets, bool expectFingerprintOnScript) + { + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset, identifier: $"{testAsset}_{fingerprintUserJavascriptAssets}_{expectFingerprintOnScript}"); + ReplaceStringInIndexHtml(ProjectDirectory, scriptPath, scriptPathWithFingerprintPattern); + FingerprintUserJavascriptAssets(fingerprintUserJavascriptAssets); + + var projectName = Path.GetFileNameWithoutExtension(Directory.EnumerateFiles(ProjectDirectory.TestRoot, "*.csproj").Single()); + + var publish = CreatePublishCommand(ProjectDirectory); + ExecuteCommand(publish, "-p:OverrideHtmlAssetPlaceholders=true", $"-p:FingerprintUserJavascriptAssets={fingerprintUserJavascriptAssets.ToString().ToLower()}").Should().Pass(); + + var outputPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + var indexHtmlOutputPath = Path.Combine(outputPath, "wwwroot", "index.html"); + var endpointsManifestPath = Path.Combine(outputPath, $"{projectName}.staticwebassets.endpoints.json"); + + AssertImportMapInHtml(indexHtmlOutputPath, endpointsManifestPath, scriptPath, expectFingerprintOnScript: expectFingerprintOnScript, expectPreloadElement: testAsset == "VanillaWasm", assertHtmlCompressed: true); + } + + private void FingerprintUserJavascriptAssets(bool fingerprintUserJavascriptAssets) + { + if (fingerprintUserJavascriptAssets) + { + ProjectDirectory.WithProjectChanges(p => + { + if (p.Root != null) + { + var itemGroup = new XElement("ItemGroup"); + var pattern = new XElement("StaticWebAssetFingerprintPattern"); + pattern.SetAttributeValue("Include", "Js"); + pattern.SetAttributeValue("Pattern", "*.js"); + pattern.SetAttributeValue("Expression", "#[.{fingerprint}]!"); + itemGroup.Add(pattern); + p.Root.Add(itemGroup); + } + }); + } + } + + private void ReplaceStringInIndexHtml(TestAsset testAsset, string sourceValue, string targetValue) + { + if (targetValue != null) + { + var indexHtmlPath = Path.Combine(testAsset.TestRoot, "wwwroot", "index.html"); + var indexHtmlContent = File.ReadAllText(indexHtmlPath); + var newIndexHtmlContent = indexHtmlContent.Replace(sourceValue, targetValue); + if (indexHtmlContent == newIndexHtmlContent) + throw new Exception($"String replacement '{sourceValue}' for '{targetValue}' didn't produce any change in '{indexHtmlPath}'"); + + File.WriteAllText(indexHtmlPath, newIndexHtmlContent); + } + } + + private void AssertImportMapInHtml(string indexHtmlPath, string endpointsManifestPath, string scriptPath, bool expectFingerprintOnScript = true, bool expectPreloadElement = false, bool assertHtmlCompressed = false) + { + + var endpoints = JsonSerializer.Deserialize(File.ReadAllText(endpointsManifestPath)); + var fingerprintedScriptPath = GetFingerprintedPath(scriptPath); + + var indexHtmlContent = File.ReadAllText(indexHtmlPath); + AssertHtmlContent(indexHtmlContent); + + if (assertHtmlCompressed) + { + var indexHtmlGzipContent = DecompressGzipFile(indexHtmlPath + ".gz"); + AssertHtmlContent(indexHtmlGzipContent); + + var indexHtmlBrotliContent = DecompressBrotliFile(indexHtmlPath + ".br"); + AssertHtmlContent(indexHtmlBrotliContent); + } + + void AssertHtmlContent(string content) + { + if (expectFingerprintOnScript) + { + Assert.DoesNotContain($"src=\"{scriptPath}\"", content); + Assert.Contains($"src=\"{fingerprintedScriptPath}\"", content); + } + else + { + Assert.Contains(scriptPath, content); + + if (scriptPath != fingerprintedScriptPath) + { + Assert.DoesNotContain(fingerprintedScriptPath, content); + } + } + + Assert.Contains(GetFingerprintedPath("_framework/dotnet.js"), content); + Assert.Contains(GetFingerprintedPath("_framework/dotnet.native.js"), content); + Assert.Contains(GetFingerprintedPath("_framework/dotnet.runtime.js"), content); + + if (expectPreloadElement) + { + Assert.DoesNotContain(" endpoints.Endpoints.FirstOrDefault(e => e.Route == route && e.Selectors.Length == 0)?.AssetFile ?? throw new Exception($"Missing endpoint for file '{route}' in '{endpointsManifestPath}'"); + + string DecompressGzipFile(string path) + { + if (File.Exists(path)) + { + using var fileStream = File.OpenRead(path); + using var compressedStream = new GZipStream(fileStream, CompressionMode.Decompress); + using var reader = new StreamReader(compressedStream); + return reader.ReadToEnd(); + } + + Assert.Fail($"File '{path}' does not exist."); + return null; + } + + string DecompressBrotliFile(string path) + { + if (File.Exists(path)) + { + using var fileStream = File.OpenRead(path); + using var compressedStream = new BrotliStream(fileStream, CompressionMode.Decompress); + using var reader = new StreamReader(compressedStream); + return reader.ReadToEnd(); + } + + Assert.Fail($"File '{path}' does not exist."); + return null; + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsIntegrationTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsIntegrationTest.cs new file mode 100644 index 000000000000..f18d611cf66c --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsIntegrationTest.cs @@ -0,0 +1,958 @@ +// 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 System.Reflection; +using Microsoft.AspNetCore.StaticWebAssets.Tasks; + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + public class StaticWebAssetsIntegrationTest : AspNetSdkBaselineTest + { + public StaticWebAssetsIntegrationTest(ITestOutputHelper log) : base(log, GenerateBaselines) { } + + // Build Standalone project + [Fact] + public void Build_GeneratesJsonManifestAndCopiesItToOutputFolder() + { + var expectedManifest = LoadBuildManifest(); + var testAsset = "RazorComponentApp"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + var build = CreateBuildCommand(ProjectDirectory); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, expectedManifest); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().Exist(); + + var manifest1 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); + AssertManifest(manifest1, expectedManifest); + AssertBuildAssets(manifest1, outputPath, intermediateOutputPath); + } + + [Fact] + public void Build_Can_DisableAssetCaching() + { + var expectedManifest = LoadBuildManifest(); + var testAsset = "RazorComponentApp"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + var build = CreateBuildCommand(ProjectDirectory); + ExecuteCommand(build, "/p:StaticWebAssetsCacheDefineStaticWebAssetsEnabled=false").Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, expectedManifest); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().Exist(); + + // The caches shouldn't exist. + // Manifest + new FileInfo(Path.Combine(intermediateOutputPath, "rpswa.dswa.cache.json")).Should().NotExist(); + // Compressed assets + new FileInfo(Path.Combine(intermediateOutputPath, "rbcswa.dswa.cache.json")).Should().NotExist(); + // Initializers + new FileInfo(Path.Combine(intermediateOutputPath, "rjimswa.dswa.cache.json")).Should().NotExist(); + // JS Modules + new FileInfo(Path.Combine(intermediateOutputPath, "rjsmcshtml.dswa.cache.json")).Should().NotExist(); + new FileInfo(Path.Combine(intermediateOutputPath, "rjsmrazor.dswa.cache.json")).Should().NotExist(); + + var manifest1 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); + AssertManifest(manifest1, expectedManifest); + AssertBuildAssets(manifest1, outputPath, intermediateOutputPath); + } + + [Fact] + public void Build_DoesNotUpdateManifest_WhenHasNotChanged() + { + var testAsset = "RazorComponentApp"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + var build = CreateBuildCommand(ProjectDirectory); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + var originalObjFile = new FileInfo(path); + originalObjFile.Should().Exist(); + var objManifestContents = File.ReadAllText(Path.Combine(intermediateOutputPath, "staticwebassets.build.json")); + AssertManifest( + StaticWebAssetsManifest.FromJsonString(objManifestContents), + LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); + var originalFile = new FileInfo(finalPath); + originalFile.Should().Exist(); + var binManifestContents = File.ReadAllText(finalPath); + + var secondBuild = CreateBuildCommand(ProjectDirectory); + secondBuild.Execute().Should().Pass(); + + var secondPath = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + var secondObjFile = new FileInfo(secondPath); + secondObjFile.Should().Exist(); + var secondObjManifest = File.ReadAllText(secondPath); + secondObjManifest.Should().Be(objManifestContents); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var secondFinalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); + var secondFinalFile = new FileInfo(secondFinalPath); + secondFinalFile.Should().Exist(); + var secondBinManifest = File.ReadAllText(secondFinalPath); + secondBinManifest.Should().Be(binManifestContents); + + secondFinalFile.LastWriteTimeUtc.Should().Be(originalFile.LastWriteTimeUtc); + } + + [Fact] + public void Build_UpdatesManifest_WhenFilesChange() + { + var testAsset = "RazorComponentApp"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + var build = CreateBuildCommand(ProjectDirectory); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + var originalObjFile = new FileInfo(path); + originalObjFile.Should().Exist(); + var objManifestContents = File.ReadAllText(Path.Combine(intermediateOutputPath, "staticwebassets.build.json")); + var firstManifest = StaticWebAssetsManifest.FromJsonString(objManifestContents); + AssertManifest(firstManifest, LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); + var originalFile = new FileInfo(finalPath); + originalFile.Should().Exist(); + var binManifestContents = File.ReadAllText(finalPath); + + AssertBuildAssets( + firstManifest, + outputPath, + intermediateOutputPath); + + // Second build + Directory.CreateDirectory(Path.Combine(ProjectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(ProjectDirectory.Path, "wwwroot", "index.html"), "some html"); + + var secondBuild = CreateBuildCommand(ProjectDirectory); + secondBuild.Execute().Should().Pass(); + + var secondPath = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + var secondObjFile = new FileInfo(secondPath); + secondObjFile.Should().Exist(); + var secondObjManifest = File.ReadAllText(secondPath); + var secondManifest = StaticWebAssetsManifest.FromJsonString(secondObjManifest); + AssertManifest( + secondManifest, + LoadBuildManifest("Updated"), + "Updated"); + + secondObjManifest.Should().NotBe(objManifestContents); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var secondFinalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); + var secondFinalFile = new FileInfo(secondFinalPath); + secondFinalFile.Should().Exist(); + var secondBinManifest = File.ReadAllText(secondFinalPath); + secondBinManifest.Should().NotBe(binManifestContents); + + secondObjFile.LastWriteTimeUtc.Should().NotBe(originalObjFile.LastWriteTimeUtc); + secondFinalFile.LastWriteTimeUtc.Should().NotBe(originalFile.LastWriteTimeUtc); + + AssertBuildAssets( + secondManifest, + outputPath, + intermediateOutputPath, + "Updated"); + } + + // Rebuild + [Fact] + public void Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder() + { + var testAsset = "RazorComponentApp"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + var build = CreateBuildCommand(ProjectDirectory); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + var originalObjFile = new FileInfo(path); + originalObjFile.Should().Exist(); + var objManifestContents = File.ReadAllText(Path.Combine(intermediateOutputPath, "staticwebassets.build.json")); + AssertManifest(StaticWebAssetsManifest.FromJsonString(objManifestContents), LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); + var originalFile = new FileInfo(finalPath); + originalFile.Should().Exist(); + var binManifestContents = File.ReadAllText(finalPath); + + // rebuild build + var rebuild = CreateRebuildCommand(ProjectDirectory); + ExecuteCommand(rebuild).Should().Pass(); + + var secondPath = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + var secondObjFile = new FileInfo(secondPath); + secondObjFile.Should().Exist(); + var secondObjManifestContents = File.ReadAllText(secondPath); + var secondManifest = StaticWebAssetsManifest.FromJsonString(secondObjManifestContents); + AssertManifest( + secondManifest, + LoadBuildManifest("Rebuild"), + "Rebuild"); + + // This is no longer true because the manifests include the timestamp for the last modified + // time of the file, etc. + //secondObjManifestContents.Should().Be(objManifestContents); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var secondFinalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); + var secondFinalFile = new FileInfo(secondFinalPath); + secondFinalFile.Should().Exist(); + var secondBinManifest = File.ReadAllText(secondFinalPath); + secondBinManifest.Should().Be(binManifestContents); + + secondObjFile.LastWriteTimeUtc.Should().NotBe(originalObjFile.LastWriteTimeUtc); + secondFinalFile.LastWriteTimeUtc.Should().NotBe(originalFile.LastWriteTimeUtc); + + AssertBuildAssets( + secondManifest, + outputPath, + intermediateOutputPath, + "Rebuild"); + } + + // Publish + [Fact] + public void Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets() + { + var testAsset = "RazorComponentApp"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + var publish = CreatePublishCommand(ProjectDirectory); + ExecuteCommand(publish).Should().Pass(); + + var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var publishPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the build manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(publishPath, "ComponentApp.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().NotExist(); + + // GenerateStaticWebAssetsManifest should generate the publish manifest file. + var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); + new FileInfo(path).Should().Exist(); + var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); + AssertManifest(publishManifest, LoadPublishManifest()); + + AssertPublishAssets( + publishManifest, + publishPath, + intermediateOutputPath); + } + + [Fact] + public void Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets() + { + var expectedManifest = LoadBuildManifest(); + var testAsset = "RazorComponentApp"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + var publish = CreatePublishCommand(ProjectDirectory); + ExecuteCommand(publish, "/p:PublishSingleFile=true", $"/p:RuntimeIdentifier={RuntimeInformation.RuntimeIdentifier}").Should().Pass(); + + var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug", RuntimeInformation.RuntimeIdentifier).ToString(); + var publishPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the build manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, expectedManifest, runtimeIdentifier: RuntimeInformation.RuntimeIdentifier); + + // GenerateStaticWebAssetsManifest should not copy the file to the output folder. + var finalPath = Path.Combine(publishPath, "ComponentApp.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().NotExist(); + + // GenerateStaticWebAssetsManifest should generate the publish manifest file. + var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); + new FileInfo(path).Should().Exist(); + var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); + AssertManifest( + publishManifest, + LoadPublishManifest(), + runtimeIdentifier: RuntimeInformation.RuntimeIdentifier); + + AssertPublishAssets( + publishManifest, + publishPath, + intermediateOutputPath); + } + + [Fact] + public void Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets() + { + var expectedManifest = LoadBuildManifest(); + var testAsset = "RazorComponentApp"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + var build = CreateBuildCommand(ProjectDirectory); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var publishPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + var objManifestFile = new FileInfo(path); + objManifestFile.Should().Exist(); + var objManifestFileTimeStamp = objManifestFile.LastWriteTimeUtc; + + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, expectedManifest); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(publishPath, "ComponentApp.staticwebassets.runtime.json"); + var binManifestFile = new FileInfo(finalPath); + binManifestFile.Should().Exist(); + var binManifestTimeStamp = binManifestFile.LastWriteTimeUtc; + + var finalManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); + AssertManifest(finalManifest, expectedManifest); + + // Publish no build + + var publish = CreatePublishCommand(ProjectDirectory); + ExecuteCommand(publish, "/p:NoBuild=true").Should().Pass(); + + var secondObjTimeStamp = new FileInfo(path).LastWriteTimeUtc; + + secondObjTimeStamp.Should().Be(objManifestFileTimeStamp); + + var seconbObjManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(seconbObjManifest, expectedManifest); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var seconBinManifestPath = Path.Combine(publishPath, "ComponentApp.staticwebassets.runtime.json"); + var secondBinManifestFile = new FileInfo(seconBinManifestPath); + secondBinManifestFile.Should().Exist(); + + secondBinManifestFile.LastWriteTimeUtc.Should().Be(binManifestTimeStamp); + + var secondBinManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); + AssertManifest(secondBinManifest, expectedManifest); + + // GenerateStaticWebAssetsManifest should generate the publish manifest file. + var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); + new FileInfo(path).Should().Exist(); + var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); + AssertManifest( + publishManifest, + LoadPublishManifest()); + + AssertPublishAssets( + publishManifest, + publishPath, + intermediateOutputPath); + } + + [Fact] + public void Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets() + { + var expectedManifest = LoadBuildManifest(); + var testAsset = "RazorComponentApp"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + var build = CreateBuildCommand(ProjectDirectory); + build.Execute("/p:DeployOnBuild=true").Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the build manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().Exist(); + + // GenerateStaticWebAssetsManifest should generate the publish manifest file. + var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); + new FileInfo(path).Should().Exist(); + var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); + AssertManifest(publishManifest, LoadPublishManifest()); + + AssertPublishAssets( + publishManifest, + Path.Combine(outputPath, "publish"), + intermediateOutputPath); + } + + // Clean + [Fact] + public void Clean_RemovesManifestFrom_BuildAndIntermediateOutput() + { + var expectedManifest = LoadBuildManifest(); + var testAsset = "RazorComponentApp"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + var build = CreateBuildCommand(ProjectDirectory); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, expectedManifest); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().Exist(); + var finalManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); + AssertManifest(finalManifest, expectedManifest); + + var clean = new CleanCommand(Log, ProjectDirectory.Path); + clean.Execute().Should().Pass(); + + // Obj folder manifest does not exist + new FileInfo(path).Should().NotExist(); + + // Bin folder manifest does not exist + new FileInfo(finalPath).Should().NotExist(); + } + + [Fact] + public void Publish_WithExternalProjectReference_UpdatesAssets() + { + var testAsset = "RazorAppWithP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset) + .WithProjectChanges((name, project) => + { + if (Path.GetFileName(name).Equals("ClassLibrary.csproj", StringComparison.Ordinal)) + { + project.Root.Attribute("Sdk").Value = "Microsoft.NET.Sdk"; + project.Root.AddFirst(new XElement("Import", new XAttribute("Project", "ExternalStaticAssets.targets"))); + + using var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("Microsoft.NET.Sdk.Razor.Tests.content.ExternalStaticAssets.targets"); + using var destination = File.OpenWrite(Path.Combine(Path.GetDirectoryName(name), "ExternalStaticAssets.targets")); + stream.CopyTo(destination); + } + }); + + var publish = CreatePublishCommand(ProjectDirectory, "AppWithP2PReference"); + ExecuteCommand(publish).Should().Pass(); + + var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var publishPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the build manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(publishPath, "ComponentApp.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().NotExist(); + + // GenerateStaticWebAssetsManifest should generate the publish manifest file. + var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); + new FileInfo(path).Should().Exist(); + var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); + AssertManifest(publishManifest, LoadPublishManifest()); + + AssertPublishAssets( + publishManifest, + publishPath, + intermediateOutputPath); + } + + [Fact] + public void Build_WithExternalProjectReference_UpdatesAssets() + { + var testAsset = "RazorAppWithP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset) + .WithProjectChanges((name, project) => + { + if (Path.GetFileName(name).Equals("ClassLibrary.csproj", StringComparison.Ordinal)) + { + project.Root.Attribute("Sdk").Value = "Microsoft.NET.Sdk"; + project.Root.AddFirst(new XElement("Import", new XAttribute("Project", "ExternalStaticAssets.targets"))); + + using var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("Microsoft.NET.Sdk.Razor.Tests.content.ExternalStaticAssets.targets"); + using var destination = File.OpenWrite(Path.Combine(Path.GetDirectoryName(name), "ExternalStaticAssets.targets")); + stream.CopyTo(destination); + } + + if (Path.GetFileName(name).Equals("AppWithP2PReference.csproj", StringComparison.Ordinal)) + { + project.Root.AddFirst(new XElement("ItemGroup", + new XElement( + "StaticWebAssetFingerprintInferenceExpression", + new XAttribute("Include", "Version"), + new XAttribute("Pattern", ".*(?v\\d{1})\\.js$")))); + } + }); + + var build = CreateBuildCommand(ProjectDirectory, "AppWithP2PReference"); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var buildPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the build manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, LoadBuildManifest()); + + AssertBuildAssets( + manifest, + buildPath, + intermediateOutputPath); + } + + [Fact] + public void Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent() + { + var expectedManifest = LoadBuildManifest(); + var testAsset = "RazorComponentApp"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset) + .WithProjectChanges(document => + { + document.Root.AddFirst(new XElement("ItemGroup", + new XElement("Content", + new XAttribute("Update", "wwwroot\\file.build.txt"), + new XAttribute("TargetPath", "wwwroot\\file.txt"), + new XAttribute("CopyToPublishDirectory", "Never")), + new XElement("Content", + new XAttribute("Update", "wwwroot\\file.publish.txt"), + new XAttribute("TargetPath", "wwwroot\\file.txt"), + new XAttribute("CopyToOutputDirectory", "Never")))); + }); + + Directory.CreateDirectory(Path.Combine(ProjectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(ProjectDirectory.Path, "wwwroot", "file.build.txt"), "file1"); + File.WriteAllText(Path.Combine(ProjectDirectory.Path, "wwwroot", "file.publish.txt"), "file1"); + + var build = CreateBuildCommand(ProjectDirectory); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(manifest, expectedManifest); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().Exist(); + + var manifest1 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); + AssertManifest(manifest1, expectedManifest); + AssertBuildAssets(manifest1, outputPath, intermediateOutputPath); + } + } + + public class StaticWebAssetsAppWithPackagesIntegrationTest(ITestOutputHelper log) + : IsolatedNuGetPackageFolderAspNetSdkBaselineTest(log, nameof(StaticWebAssetsAppWithPackagesIntegrationTest)) + { + [Fact] + public void Build_Fails_WhenConflictingAssetsFoundBetweenAStaticWebAssetAndAFileInTheWebRootFolder() + { + var testAsset = "RazorAppWithPackageAndP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + Directory.CreateDirectory(Path.Combine(ProjectDirectory.Path, "AppWithPackageAndP2PReference", "wwwroot", "_content", "ClassLibrary", "js")); + File.WriteAllText(Path.Combine(ProjectDirectory.Path, "AppWithPackageAndP2PReference", "wwwroot", "_content", "ClassLibrary", "js", "project-transitive-dep.js"), "console.log('transitive-dep');"); + + EnsureLocalPackagesExists(); + + var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(restore).Should().Pass(); + + var build = CreateBuildCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(build).Should().Fail(); + } + + [Fact] + public void BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets() + { + var testAsset = "RazorAppWithPackageAndP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + EnsureLocalPackagesExists(); + + var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(restore).Should().Pass(); + + var build = CreateBuildCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + build.Execute("/p:DeployOnBuild=true").Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + + AssertManifest( + StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)), + LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().Exist(); + + // GenerateStaticWebAssetsManifest should generate the publish manifest file. + var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); + new FileInfo(path).Should().Exist(); + var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); + AssertManifest(publishManifest, LoadPublishManifest()); + + AssertPublishAssets( + publishManifest, + Path.Combine(outputPath, "publish"), + intermediateOutputPath); + } + + [Fact] + public void BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder() + { + var testAsset = "RazorAppWithPackageAndP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + EnsureLocalPackagesExists(); + + var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(restore).Should().Pass(); + + var build = CreateBuildCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest( + manifest, + LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().Exist(); + + AssertBuildAssets( + manifest, + outputPath, + intermediateOutputPath); + } + + [Fact] + public void BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder() + { + var testAsset = "RazorAppWithPackageAndP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + EnsureLocalPackagesExists(); + + var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(restore).Should().Pass(); + + var build = CreateBuildCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + AssertManifest( + StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)), + LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().Exist(); + var manifestContents = File.ReadAllText(finalPath); + var initialManifest = StaticWebAssetsManifest.FromJsonString(File.ReadAllText(path)); + AssertManifest( + initialManifest, + LoadBuildManifest()); + + // Second build + var secondBuild = CreateBuildCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(secondBuild,"/p:BuildProjectReferences=false").Should().Pass(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + new FileInfo(path).Should().Exist(); + var manifestNoDeps = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest( + manifestNoDeps, + LoadBuildManifest("NoDependencies"), + "NoDependencies"); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + new FileInfo(finalPath).Should().Exist(); + var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); + AssertManifest( + manifest, + LoadBuildManifest("NoDependencies"), + "NoDependencies"); + + AssertBuildAssets( + manifest, + outputPath, + intermediateOutputPath, + "NoDependencies"); + + // Check that the two manifests are the same + manifestContents.Should().Be(File.ReadAllText(finalPath)); + } + + [Fact] + public void PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets() + { + var testAsset = "RazorAppWithPackageAndP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + EnsureLocalPackagesExists(); + + var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(restore).Should().Pass(); + + var publish = CreatePublishCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(publish).Should().Pass(); + + var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var publishPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + AssertManifest( + StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)), + LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(publishPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().NotExist(); + + // GenerateStaticWebAssetsPublishManifest should generate the publish manifest file. + var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); + new FileInfo(path).Should().Exist(); + var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); + AssertManifest( + publishManifest, + LoadPublishManifest()); + + AssertPublishAssets( + publishManifest, + publishPath, + intermediateOutputPath); + } + + [Fact] + public void PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets() + { + var testAsset = "RazorAppWithPackageAndP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + EnsureLocalPackagesExists(); + + var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(restore).Should().Pass(); + + var publish = CreatePublishCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(publish, "/p:PublishSingleFile=true", $"/p:RuntimeIdentifier={RuntimeInformation.RuntimeIdentifier}").Should().Pass(); + + var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug", RuntimeInformation.RuntimeIdentifier).ToString(); + var publishPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + AssertManifest( + StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)), + LoadBuildManifest(), + runtimeIdentifier: RuntimeInformation.RuntimeIdentifier); + + // GenerateStaticWebAssetsManifest should not copy the file to the output folder. + var finalPath = Path.Combine(publishPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().NotExist(); + + // GenerateStaticWebAssetsPublishManifest should generate the publish manifest file. + var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); + new FileInfo(path).Should().Exist(); + var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); + AssertManifest(publishManifest, LoadPublishManifest(), runtimeIdentifier: RuntimeInformation.RuntimeIdentifier); + + AssertPublishAssets( + publishManifest, + publishPath, + intermediateOutputPath); + } + + [Fact] + public void PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets() + { + var testAsset = "RazorAppWithPackageAndP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + EnsureLocalPackagesExists(); + + var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(restore).Should().Pass(); + + var build = CreateBuildCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(build).Should().Pass(); + + var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + var objManifestFile = new FileInfo(path); + objManifestFile.Should().Exist(); + var objManifestFileTimeStamp = objManifestFile.LastWriteTimeUtc; + + AssertManifest( + StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)), + LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(outputPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); + var binManifestFile = new FileInfo(finalPath); + binManifestFile.Should().Exist(); + var binManifestTimeStamp = binManifestFile.LastWriteTimeUtc; + + AssertManifest( + StaticWebAssetsManifest.FromJsonString(File.ReadAllText(path)), + LoadBuildManifest()); + + // Publish no build + var publish = CreatePublishCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + var publishResult = ExecuteCommand(publish, "/p:NoBuild=true", "/p:ErrorOnDuplicatePublishOutputFiles=false"); + var publishPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + publishResult.Should().Pass(); + + new FileInfo(path).LastWriteTimeUtc.Should().Be(objManifestFileTimeStamp); + + var seconbObjManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); + AssertManifest(seconbObjManifest, LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var seconBinManifestPath = Path.Combine(outputPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); + var secondBinManifestFile = new FileInfo(seconBinManifestPath); + secondBinManifestFile.Should().Exist(); + + secondBinManifestFile.LastWriteTimeUtc.Should().Be(binManifestTimeStamp); + + // GenerateStaticWebAssetsManifest should generate the publish manifest file. + var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); + new FileInfo(path).Should().Exist(); + var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); + AssertManifest(publishManifest, LoadPublishManifest()); + + AssertPublishAssets( + publishManifest, + publishPath, + intermediateOutputPath); + } + + [Fact] + public void PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets() + { + var testAsset = "RazorAppWithPackageAndP2PReference"; + ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); + + EnsureLocalPackagesExists(); + + var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(restore).Should().Pass(); + + var publish = CreatePublishCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); + ExecuteCommand(publish, "/p:AppendTargetFrameworkToOutputPath=false").Should().Pass(); + + // Hard code output paths here to account for AppendTargetFrameworkToOutputPath=false + var intermediateOutputPath = Path.Combine(ProjectDirectory.Path, "AppWithPackageAndP2PReference", "obj", "Debug"); + var publishPath = Path.Combine(ProjectDirectory.Path, "AppWithPackageAndP2PReference", "bin", "Debug", "publish"); + + // GenerateStaticWebAssetsManifest should generate the manifest file. + var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); + new FileInfo(path).Should().Exist(); + AssertManifest( + StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)), + LoadBuildManifest()); + + // GenerateStaticWebAssetsManifest should copy the file to the output folder. + var finalPath = Path.Combine(publishPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); + new FileInfo(finalPath).Should().NotExist(); + + // GenerateStaticWebAssetsPublishManifest should generate the publish manifest file. + var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); + new FileInfo(path).Should().Exist(); + var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); + AssertManifest( + publishManifest, + LoadPublishManifest()); + + AssertPublishAssets( + publishManifest, + publishPath, + intermediateOutputPath); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsPackIntegrationTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsPackIntegrationTest.cs new file mode 100644 index 000000000000..cf2329392766 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsPackIntegrationTest.cs @@ -0,0 +1,1730 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +#nullable disable + +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests +{ + public class StaticWebAssetsPackIntegrationTest(ITestOutputHelper log) + : IsolatedNuGetPackageFolderAspNetSdkBaselineTest(log, nameof(StaticWebAssetsPackIntegrationTest)) + { + [Fact] + public void Pack_FailsWhenStaticWebAssetsHaveConflictingPaths() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages") + .WithProjectChanges(project => + { + var ns = project.Root.Name.Namespace; + var itemGroup = new XElement(ns + "ItemGroup"); + var element = new XElement("StaticWebAsset", new XAttribute("Include", @"bundle\js\pkg-direct-dep.js")); + element.Add(new XElement("SourceType")); + element.Add(new XElement("SourceId", "PackageLibraryDirectDependency")); + element.Add(new XElement("ContentRoot", "$([MSBuild]::NormalizeDirectory('$(MSBuildProjectDirectory)\\bundle\\'))")); + element.Add(new XElement("BasePath", "_content/PackageLibraryDirectDependency")); + element.Add(new XElement("RelativePath", "js/pkg-direct-dep.js")); + itemGroup.Add(element); + project.Root.Add(itemGroup); + }); + + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "bundle", "js")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "bundle", "js", "pkg-direct-dep.js"), "console.log('bundle');"); + + var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); + ExecuteCommand(pack).Should().Fail(); + } + + // If you modify this test, make sure you also modify the test below this one to assert that things are not included as content. + [Fact] + public void Pack_IncludesStaticWebAssets() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result.Should().NuPkgContainsPatterns( + Path.Combine(pack.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePatterns: new[] + { + Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), + Path.Combine("staticwebassets", "css", "site.css"), + Path.Combine("staticwebassets", "PackageLibraryDirectDependency.*.bundle.scp.css"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryDirectDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") + }); + } + + [Fact] + public void Pack_NoAssets_DoesNothing() + { + var testAsset = "PackageLibraryNoStaticAssets"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + var pack = CreatePackCommand(projectDirectory); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryNoStaticAssets.dll")).Should().Exist(); + + result.Should().NuPkgDoesNotContain( + Path.Combine(pack.GetPackageDirectory().FullName, "PackageLibraryNoStaticAssets.1.0.0.nupkg"), + filePaths: new[] + { + Path.Combine("staticwebassets"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryNoStaticAssets.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryNoStaticAssets.props"), + Path.Combine("buildTransitive", "PackageLibraryNoStaticAssets.props") + }); + } + + [Fact] + public void Pack_NoAssets_Multitargeting_DoesNothing() + { + var testAsset = "PackageLibraryNoStaticAssets"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(project => + { + var tfm = project.Root.Descendants("TargetFramework").Single(); + tfm.Name = "TargetFrameworks"; + tfm.Value = "net6.0;" + DefaultTfm; + }); + + var pack = CreatePackCommand(projectDirectory); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryNoStaticAssets.dll")).Should().Exist(); + + result.Should().NuPkgDoesNotContain( + Path.Combine(projectDirectory.Path, "bin", "Debug", "PackageLibraryNoStaticAssets.1.0.0.nupkg"), + filePaths: new[] + { + Path.Combine("staticwebassets"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryNoStaticAssets.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryNoStaticAssets.props"), + Path.Combine("buildTransitive", "PackageLibraryNoStaticAssets.props") + }); + } + + [Fact] + public void Pack_Incremental_IncludesStaticWebAssets() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var pack2 = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result2 = ExecuteCommand(pack2); + + result2.Should().Pass(); + + var outputPath = pack2.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result2.Should().NuPkgContainsPatterns( + Path.Combine(pack2.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePatterns: new[] + { + Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), + Path.Combine("staticwebassets", "css", "site.css"), + Path.Combine("staticwebassets", "PackageLibraryDirectDependency.*.bundle.scp.css"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryDirectDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") + }); + } + + [Fact] + public void Pack_StaticWebAssets_WithoutFileExtension_AreCorrectlyPacked() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + File.WriteAllText(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "wwwroot", "LICENSE"), "license file contents"); + + var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result.Should().NuPkgContainsPatterns( + Path.Combine(pack.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePatterns: new[] + { + Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), + Path.Combine("staticwebassets", "css", "site.css"), + Path.Combine("staticwebassets", "LICENSE"), + Path.Combine("staticwebassets", "PackageLibraryDirectDependency.*.bundle.scp.css"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryDirectDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") + }); + } + + [Fact] + public void Pack_MultipleTargetFrameworks_Works() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges((project, document) => + { + var tfm = document.Descendants("TargetFramework").Single(); + tfm.Name = "TargetFrameworks"; + tfm.FirstNode.ReplaceWith(tfm.FirstNode.ToString() + ";netstandard2.1"); + + document.Descendants("AddRazorSupportForMvc").SingleOrDefault()?.Remove(); + document.Descendants("FrameworkReference").SingleOrDefault()?.Remove(); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "Components"), recursive: true); + + var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result.Should().NuPkgContain( + Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "bin", "Debug", "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePaths: new[] + { + Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), + Path.Combine("staticwebassets", "css", "site.css"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryDirectDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") + }); + } + + [Fact] + public void Pack_MultipleTargetFrameworks_NoBuild_IncludesStaticWebAssets() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges((project, document) => + { + var tfm = document.Descendants("TargetFramework").Single(); + tfm.Name = "TargetFrameworks"; + tfm.FirstNode.ReplaceWith(tfm.FirstNode.ToString() + ";netstandard2.1"); + + document.Descendants("AddRazorSupportForMvc").SingleOrDefault()?.Remove(); + document.Descendants("FrameworkReference").SingleOrDefault()?.Remove(); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "Components"), recursive: true); + + var build = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); + var buildResult = build.Execute(); + + var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = pack.Execute("/p:NoBuild=true"); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result.Should().NuPkgContain( + Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "bin", "Debug", "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePaths: new[] + { + Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), + Path.Combine("staticwebassets", "css", "site.css"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryDirectDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") + }); + } + + [Fact] + public void Pack_MultipleTargetFrameworks_NoBuild_DoesNotIncludeAssetsAsContent() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges((project, document) => + { + var tfm = document.Descendants("TargetFramework").Single(); + tfm.Name = "TargetFrameworks"; + tfm.FirstNode.ReplaceWith(tfm.FirstNode.ToString() + ";netstandard2.1"); + + document.Descendants("AddRazorSupportForMvc").SingleOrDefault()?.Remove(); + document.Descendants("FrameworkReference").SingleOrDefault()?.Remove(); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "Components"), recursive: true); + + var build = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); + var buildResult = build.Execute(); + + var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = pack.Execute("/p:NoBuild=true"); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result.Should().NuPkgDoesNotContain( + Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "bin", "Debug", "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePaths: new[] + { + Path.Combine("content", "wwwroot", "js", "pkg-direct-dep.js"), + Path.Combine("content", "wwwroot", "css", "site.css"), + Path.Combine("contentFiles", "wwwroot", "js", "pkg-direct-dep.js"), + Path.Combine("contentFiles", "wwwroot", "css", "site.css"), + }); + } + + [Fact] + public void Pack_MultipleTargetFrameworks_GeneratePackageOnBuild_IncludesStaticWebAssets() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges((project, document) => + { + var tfm = document.Descendants("TargetFramework").Single(); + tfm.Name = "TargetFrameworks"; + tfm.FirstNode.ReplaceWith(tfm.FirstNode.ToString() + ";netstandard2.1"); + + document.Descendants("AddRazorSupportForMvc").SingleOrDefault()?.Remove(); + document.Descendants("FrameworkReference").SingleOrDefault()?.Remove(); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "Components"), recursive: true); + + var build = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = build.Execute("/p:GeneratePackageOnBuild=true"); + + result.Should().Pass(); + + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result.Should().NuPkgContain( + Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "bin", "Debug", "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePaths: new[] + { + Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), + Path.Combine("staticwebassets", "css", "site.css"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryDirectDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") + }); + } + + [Fact] + public void Pack_MultipleTargetFrameworks_GeneratePackageOnBuild_DoesNotIncludeAssetsAsContent() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges((project, document) => + { + var tfm = document.Descendants("TargetFramework").Single(); + tfm.Name = "TargetFrameworks"; + tfm.FirstNode.ReplaceWith(tfm.FirstNode.ToString() + ";netstandard2.1"); + + document.Descendants("AddRazorSupportForMvc").SingleOrDefault()?.Remove(); + document.Descendants("FrameworkReference").SingleOrDefault()?.Remove(); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "Components"), recursive: true); + + var build = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = build.Execute("/p:GeneratePackageOnBuild=true"); + + result.Should().Pass(); + + var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result.Should().NuPkgDoesNotContain( + Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "bin", "Debug", "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePaths: new[] + { + Path.Combine("content", "wwwroot", "js", "pkg-direct-dep.js"), + Path.Combine("content", "wwwroot", "css", "site.css"), + Path.Combine("contentFiles", "wwwroot", "js", "pkg-direct-dep.js"), + Path.Combine("contentFiles", "wwwroot", "css", "site.css"), + }); + } + + [Fact] + public void Pack_BeforeNet60_MultipleTargetFrameworks_WithScopedCss_IncludesAssetsAndProjectBundle() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + netstandard2.0;net5.0 + 3.0 + + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var pack = CreatePackCommand(projectDirectory); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result.Should().NuPkgContainsPatterns( + packagePath, + filePatterns: new[] + { + Path.Combine("staticwebassets", "exampleJsInterop.js"), + Path.Combine("staticwebassets", "background.png"), + Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.bundle.scp.css"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") + }); + } + + [Fact] + public void Pack_BeforeNet60_MultipleTargetFrameworks_WithScopedCss_DoesNotIncludeAssetsAsContent() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + netstandard2.0;net5.0 + 3.0 + + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var pack = CreatePackCommand(projectDirectory); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result.Should().NuPkgDoesNotContain( + packagePath, + filePaths: new[] + { + Path.Combine("content", "exampleJsInterop.js"), + Path.Combine("content", "background.png"), + Path.Combine("content", "PackageLibraryTransitiveDependency.bundle.scp.css"), + Path.Combine("contentFiles", "exampleJsInterop.js"), + Path.Combine("contentFiles", "background.png"), + Path.Combine("contentFiles", "PackageLibraryTransitiveDependency.bundle.scp.css"), + }); + } + + [Fact] + public void Pack_BeforeNet60_MultipleTargetFrameworks_NoBuild_WithScopedCss_IncludesAssetsAndProjectBundle() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + netstandard2.0;net5.0 + 3.0 + + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var build = CreateBuildCommand(projectDirectory); + var buildResult = build.Execute(); + + buildResult.Should().Pass(); + + var pack = CreatePackCommand(projectDirectory); + var result = pack.Execute("/p:NoBuild=true"); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result.Should().NuPkgContain( + packagePath, + filePaths: new[] + { + Path.Combine("staticwebassets", "exampleJsInterop.js"), + Path.Combine("staticwebassets", "background.png"), + Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.bundle.scp.css"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") + }); + } + + [Fact] + public void Pack_BeforeNet60_MultipleTargetFrameworks_NoBuild_WithScopedCss_DoesNotIncludeAssetsAsContent() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + netstandard2.0;net5.0 + 3.0 + + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var build = CreateBuildCommand(projectDirectory); + var buildResult = build.Execute(); + + buildResult.Should().Pass(); + + var pack = CreatePackCommand(projectDirectory); + var result = pack.Execute("/p:NoBuild=true"); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result.Should().NuPkgDoesNotContain( + packagePath, + filePaths: new[] + { + Path.Combine("content", "exampleJsInterop.js"), + Path.Combine("content", "background.png"), + Path.Combine("content", "PackageLibraryTransitiveDependency.bundle.scp.css"), + Path.Combine("contentFiles", "exampleJsInterop.js"), + Path.Combine("contentFiles", "background.png"), + Path.Combine("contentFiles", "PackageLibraryTransitiveDependency.bundle.scp.css"), + }); + } + + [Fact] + public void Pack_BeforeNet60_MultipleTargetFrameworks_GeneratePackageOnBuild_WithScopedCss_IncludesAssetsAndProjectBundle() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + netstandard2.0;net5.0 + 3.0 + + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var build = CreateBuildCommand(projectDirectory); + var result = build.Execute("/p:GeneratePackageOnBuild=true"); + + result.Should().Pass(); + + var outputPath = build.GetOutputDirectory("net5.0", "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result.Should().NuPkgContain( + packagePath, + filePaths: new[] + { + Path.Combine("staticwebassets", "exampleJsInterop.js"), + Path.Combine("staticwebassets", "background.png"), + Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.bundle.scp.css"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") + }); + } + + [Fact] + public void Pack_BeforeNet60_MultipleTargetFrameworks_GeneratePackageOnBuild_WithScopedCss_DoesNotIncludeAssetsAsContent() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + netstandard2.0;net5.0 + 3.0 + + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var build = CreateBuildCommand(projectDirectory); + var result = build.Execute("/p:GeneratePackageOnBuild=true"); + + result.Should().Pass(); + + var outputPath = build.GetOutputDirectory("net5.0", "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result.Should().NuPkgDoesNotContain( + packagePath, + filePaths: new[] + { + Path.Combine("content", "exampleJsInterop.js"), + Path.Combine("content", "background.png"), + Path.Combine("content", "PackageLibraryTransitiveDependency.bundle.scp.css"), + Path.Combine("contentFiles", "exampleJsInterop.js"), + Path.Combine("contentFiles", "background.png"), + Path.Combine("contentFiles", "PackageLibraryTransitiveDependency.bundle.scp.css"), + }); + } + + [Fact] + public void Pack_Net50_WithScopedCss_IncludesAssetsAndProjectBundle() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + net5.0 + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var pack = CreatePackCommand(projectDirectory); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result.Should().NuPkgContain( + packagePath, + filePaths: new[] + { + Path.Combine("staticwebassets", "exampleJsInterop.js"), + Path.Combine("staticwebassets", "background.png"), + Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.bundle.scp.css"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") + }); + } + + [Fact] + public void Pack_Net50_WithScopedCss_DoesNotIncludeAssetsAsContent() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + net5.0 + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var pack = CreatePackCommand(projectDirectory); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result.Should().NuPkgDoesNotContain( + packagePath, + filePaths: new[] + { + Path.Combine("content", "exampleJsInterop.js"), + Path.Combine("content", "background.png"), + Path.Combine("content", "PackageLibraryTransitiveDependency.bundle.scp.css"), + Path.Combine("contentFiles", "exampleJsInterop.js"), + Path.Combine("contentFiles", "background.png"), + Path.Combine("contentFiles", "PackageLibraryTransitiveDependency.bundle.scp.css"), + }); + } + + [Fact] + public void Pack_Net50_NoBuild_WithScopedCss_IncludesAssetsAndProjectBundle() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + net5.0 + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var build = CreateBuildCommand(projectDirectory); + var buildResult = build.Execute(); + + buildResult.Should().Pass(); + + var pack = CreatePackCommand(projectDirectory); + var result = pack.Execute("/p:NoBuild=true"); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result.Should().NuPkgContain( + packagePath, + filePaths: new[] + { + Path.Combine("staticwebassets", "exampleJsInterop.js"), + Path.Combine("staticwebassets", "background.png"), + Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.bundle.scp.css"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") + }); + } + + [Fact] + public void Pack_Net50_NoBuild_WithScopedCss_DoesNotIncludeAssetsAsContent() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + net5.0 + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var build = CreateBuildCommand(projectDirectory); + var buildResult = build.Execute(); + + buildResult.Should().Pass(); + + var pack = CreatePackCommand(projectDirectory); + var result = pack.Execute("/p:NoBuild=true"); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result.Should().NuPkgDoesNotContain( + packagePath, + filePaths: new[] + { + Path.Combine("content", "exampleJsInterop.js"), + Path.Combine("content", "background.png"), + Path.Combine("content", "PackageLibraryTransitiveDependency.bundle.scp.css"), + Path.Combine("contentFiles", "exampleJsInterop.js"), + Path.Combine("contentFiles", "background.png"), + Path.Combine("contentFiles", "PackageLibraryTransitiveDependency.bundle.scp.css"), + }); + } + + [Fact] + public void Pack_Net50_GeneratePackageOnBuild_WithScopedCss_IncludesAssetsAndProjectBundle() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + net5.0 + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var build = CreateBuildCommand(projectDirectory); + var result = build.Execute("/p:GeneratePackageOnBuild=true"); + + result.Should().Pass(); + + var outputPath = build.GetOutputDirectory("net5.0", "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result.Should().NuPkgContain( + packagePath, + filePaths: new[] + { + Path.Combine("staticwebassets", "exampleJsInterop.js"), + Path.Combine("staticwebassets", "background.png"), + Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.bundle.scp.css"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") + }); + } + + [Fact] + public void Pack_Net50_GeneratePackageOnBuild_WithScopedCss_DoesNotIncludeAssetsAsContent() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + net5.0 + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var build = CreateBuildCommand(projectDirectory); + var result = build.Execute("/p:GeneratePackageOnBuild=true"); + + result.Should().Pass(); + + var outputPath = build.GetOutputDirectory("net5.0", "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result.Should().NuPkgDoesNotContain( + packagePath, + filePaths: new[] + { + Path.Combine("content", "exampleJsInterop.js"), + Path.Combine("content", "background.png"), + Path.Combine("content", "PackageLibraryTransitiveDependency.bundle.scp.css"), + Path.Combine("contentFiles", "exampleJsInterop.js"), + Path.Combine("contentFiles", "background.png"), + Path.Combine("contentFiles", "PackageLibraryTransitiveDependency.bundle.scp.css"), + }); + } + + [Fact] + public void Pack_MultipleTargetFrameworks_WithScopedCssAndJsModules_IncludesAssetsAndProjectBundle() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + {ToolsetInfo.CurrentTargetFramework};net8.0;net7.0;net6.0;net5.0 + + + + + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.js"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "PackageLibraryTransitiveDependency.lib.module.js"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var pack = CreatePackCommand(projectDirectory); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result.Should().NuPkgContainsPatterns( + packagePath, + filePatterns: new[] + { + Path.Combine("staticwebassets", "exampleJsInterop.js"), + Path.Combine("staticwebassets", "background.png"), + Path.Combine("staticwebassets", "Component1.razor.js"), + Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.*.bundle.scp.css"), + Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.*.lib.module.js"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") + }); + } + + [Fact] + public void Pack_Incremental_MultipleTargetFrameworks_WithScopedCssAndJsModules_IncludesAssetsAndProjectBundle() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + {ToolsetInfo.CurrentTargetFramework};net8.0;net7.0;net6.0;net5.0 + + + + + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.js"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "PackageLibraryTransitiveDependency.lib.module.js"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var pack = CreatePackCommand(projectDirectory); + + var pack2 = CreatePackCommand(projectDirectory); + var result2 = pack2.Execute(); + + result2.Should().Pass(); + + var outputPath = pack2.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result2.Should().NuPkgContainsPatterns( + packagePath, + filePatterns: new[] + { + Path.Combine("staticwebassets", "exampleJsInterop.js"), + Path.Combine("staticwebassets", "background.png"), + Path.Combine("staticwebassets", "Component1.razor.js"), + Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.*.bundle.scp.css"), + Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.*.lib.module.js"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") + }); + } + + [Fact] + public void Pack_MultipleTargetFrameworks_WithScopedCssAndJsModules_DoesNotIncludeApplicationBundleNorModulesManifest() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges(document => + { + var parse = XDocument.Parse($@" + + + {ToolsetInfo.CurrentTargetFramework};net8.0;net7.0;net6.0;net5.0 + + + + + + + + + + + +"); + document.Root.ReplaceWith(parse.Root); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); + + var componentText = @"
+ This component is defined in the razorclasslibrarypack library. +
"; + + // This mimics the structure of our default template project + Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); + File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); + File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); + File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); + + var pack = CreatePackCommand(projectDirectory); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + var packagePath = Path.Combine( + projectDirectory.Path, + "bin", + "Debug", + "PackageLibraryTransitiveDependency.1.0.0.nupkg"); + + result.Should().NuPkgDoesNotContain( + packagePath, + filePaths: new[] + { + Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.styles.css"), + Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.modules.json"), + }); + } + + [Fact] + public void Pack_MultipleTargetFrameworks_DoesNotIncludeAssetsAsContent() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + projectDirectory.WithProjectChanges((project, document) => + { + var tfm = document.Descendants("TargetFramework").Single(); + tfm.Name = "TargetFrameworks"; + tfm.FirstNode.ReplaceWith(tfm.FirstNode.ToString() + ";netstandard2.1"); + + document.Descendants("AddRazorSupportForMvc").SingleOrDefault()?.Remove(); + document.Descendants("FrameworkReference").SingleOrDefault()?.Remove(); + }); + + Directory.Delete(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "Components"), recursive: true); + + var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result.Should().NuPkgDoesNotContain( + Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "bin", "Debug", "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePaths: new[] + { + Path.Combine("content", "wwwroot", "js", "pkg-direct-dep.js"), + Path.Combine("content", "wwwroot", "css", "site.css"), + Path.Combine("contentFiles", "wwwroot", "js", "pkg-direct-dep.js"), + Path.Combine("contentFiles", "wwwroot", "css", "site.css"), + }); + } + + [Fact] + public void Pack_DoesNotInclude_TransitiveBundleOrScopedCssAsStaticWebAsset() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result.Should().NuPkgDoesNotContain( + Path.Combine(pack.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePaths: new[] + { + // This is to make sure we don't include the scoped css files on the package when bundling is enabled. + Path.Combine("staticwebassets", "Components", "App.razor.rz.scp.css"), + Path.Combine("staticwebassets", "PackageLibraryDirectDependency.styles.css"), + }); + } + + [Fact] + public void Pack_DoesNotIncludeStaticWebAssetsAsContent() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = ExecuteCommand(pack); + + result.Should().Pass(); + + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result.Should().NuPkgDoesNotContain( + Path.Combine(pack.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePaths: new[] + { + Path.Combine("content", "wwwroot", "js", "pkg-direct-dep.js"), + Path.Combine("content", "wwwroot", "css", "site.css"), + Path.Combine("content", "Components", "App.razor.css"), + // This is to make sure we don't include the unscoped css file on the package. + Path.Combine("content", "Components", "App.razor.css"), + Path.Combine("content", "Components", "App.razor.rz.scp.css"), + Path.Combine("contentFiles", "wwwroot", "js", "pkg-direct-dep.js"), + Path.Combine("contentFiles", "wwwroot", "css", "site.css"), + Path.Combine("contentFiles", "Components", "App.razor.css"), + Path.Combine("contentFiles", "Components", "App.razor.rz.scp.css"), + }); + } + + [Fact] + public void Pack_NoBuild_IncludesStaticWebAssets() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + var build = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); + build.Execute().Should().Pass(); + + var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = pack.Execute("/p:NoBuild=true"); + + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result.Should().NuPkgContainsPatterns( + Path.Combine(build.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePatterns: new[] + { + Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), + Path.Combine("staticwebassets", "PackageLibraryDirectDependency.*.bundle.scp.css"), + Path.Combine("staticwebassets", "css", "site.css"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryDirectDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") + }); + } + + [Fact] + public void Pack_NoBuild_DoesNotIncludeFilesAsContent() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + var build = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); + build.Execute().Should().Pass(); + + var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = pack.Execute("/p:NoBuild=true"); + + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result.Should().NuPkgDoesNotContain( + Path.Combine(pack.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePaths: new[] + { + Path.Combine("content", "wwwroot", "js", "pkg-direct-dep.js"), + Path.Combine("content", "PackageLibraryDirectDependency.bundle.scp.css"), + Path.Combine("content", "wwwroot", "css", "site.css"), + Path.Combine("contentFiles", "wwwroot", "js", "pkg-direct-dep.js"), + Path.Combine("contentFiles", "PackageLibraryDirectDependency.bundle.scp.css"), + Path.Combine("contentFiles", "wwwroot", "css", "site.css"), + }); + } + + [Fact] + public void Pack_DoesNotIncludeAnyCustomPropsFiles_WhenNoStaticAssetsAreAvailable() + { + var testAsset = "RazorComponentLibrary"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset); + + var pack = CreatePackCommand(projectDirectory); + var result = ExecuteCommand(pack); + + var outputPath = pack.GetOutputDirectory("netstandard2.0", "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "ComponentLibrary.dll")).Should().Exist(); + + result.Should().NuPkgDoesNotContain( + Path.Combine(projectDirectory.Path, "bin", "Debug", "ComponentLibrary.1.0.0.nupkg"), + filePaths: new[] + { + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "ComponentLibrary.props"), + Path.Combine("buildMultiTargeting", "ComponentLibrary.props"), + Path.Combine("buildTransitive", "ComponentLibrary.props") + }); + } + + [Fact] + public void Pack_Incremental_DoesNotRegenerateCacheAndPropsFiles() + { + var testAsset = "PackageLibraryTransitiveDependency"; + var projectDirectory = _testAssetsManager + .CopyTestAsset(testAsset, testAssetSubdirectory: "TestPackages") + .WithSource(); + + var pack = CreatePackCommand(projectDirectory); + var result = ExecuteCommand(pack); + + var intermediateOutputPath = pack.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); + var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); + + new FileInfo(Path.Combine(intermediateOutputPath, "staticwebassets", "msbuild.PackageLibraryTransitiveDependency.Microsoft.AspNetCore.StaticWebAssets.props")).Should().Exist(); + new FileInfo(Path.Combine(intermediateOutputPath, "staticwebassets", "msbuild.build.PackageLibraryTransitiveDependency.props")).Should().Exist(); + new FileInfo(Path.Combine(intermediateOutputPath, "staticwebassets", "msbuild.buildMultiTargeting.PackageLibraryTransitiveDependency.props")).Should().Exist(); + new FileInfo(Path.Combine(intermediateOutputPath, "staticwebassets", "msbuild.buildTransitive.PackageLibraryTransitiveDependency.props")).Should().Exist(); + + var directoryPath = Path.Combine(intermediateOutputPath, "staticwebassets"); + var thumbPrints = new Dictionary(); + var thumbPrintFiles = new[] + { + Path.Combine(directoryPath, "msbuild.PackageLibraryTransitiveDependency.Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine(directoryPath, "msbuild.build.PackageLibraryTransitiveDependency.props"), + Path.Combine(directoryPath, "msbuild.buildMultiTargeting.PackageLibraryTransitiveDependency.props"), + Path.Combine(directoryPath, "msbuild.buildTransitive.PackageLibraryTransitiveDependency.props"), + }; + + foreach (var file in thumbPrintFiles) + { + var thumbprint = FileThumbPrint.Create(file); + thumbPrints[file] = thumbprint; + } + + // Act + var incremental = CreatePackCommand(projectDirectory); + incremental.Execute().Should().Pass(); + foreach (var file in thumbPrintFiles) + { + var thumbprint = FileThumbPrint.Create(file); + Assert.Equal(thumbPrints[file], thumbprint); + } + } + + [Fact] + public void Build_StaticWebAssets_GeneratePackageOnBuild_PacksStaticWebAssets() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + File.WriteAllText(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "wwwroot", "LICENSE"), "license file contents"); + + var buildCommand = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = buildCommand.Execute("/p:GeneratePackageOnBuild=true"); + + result.Should().Pass(); + + var outputPath = buildCommand.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result.Should().NuPkgContainsPatterns( + Path.Combine(buildCommand.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePatterns: new[] + { + Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), + Path.Combine("staticwebassets", "css", "site.css"), + Path.Combine("staticwebassets", "PackageLibraryDirectDependency.*.bundle.scp.css"), + Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), + Path.Combine("build", "PackageLibraryDirectDependency.props"), + Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), + Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") + }); + } + + [Fact] + public void Build_StaticWebAssets_GeneratePackageOnBuild_DoesNotIncludeAssetsAsContent() + { + var testAsset = "PackageLibraryDirectDependency"; + var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); + + File.WriteAllText(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "wwwroot", "LICENSE"), "license file contents"); + + var buildCommand = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); + var result = buildCommand.Execute("/p:GeneratePackageOnBuild=true"); + + result.Should().Pass(); + + var outputPath = buildCommand.GetOutputDirectory(DefaultTfm, "Debug").ToString(); + + new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); + + result.Should().NuPkgDoesNotContainPatterns( + Path.Combine(buildCommand.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), + filePatterns: new[] + { + Path.Combine("content", "js", "pkg-direct-dep.js"), + Path.Combine("content", "css", "site.css"), + Path.Combine("content", "PackageLibraryDirectDependency.*.bundle.scp.css"), + Path.Combine("contentFiles", "js", "pkg-direct-dep.js"), + Path.Combine("contentFiles", "css", "site.css"), + Path.Combine("contentFiles", "PackageLibraryDirectDependency.bundle.scp.css"), + }); + } + } +} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/content/ExternalStaticAssets.targets b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/content/ExternalStaticAssets.targets new file mode 100644 index 000000000000..8a2b8976b8d4 --- /dev/null +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/content/ExternalStaticAssets.targets @@ -0,0 +1,69 @@ + + + + + + <_StaticWebAssetThisProjectConfiguration Include="$(MSBuildProjectFullPath)"> + 2 + $(StaticWebAssetSourceId) + GetCurrentProjectBuildStaticWebAssetItems + + + + + GetCurrentProjectPublishStaticWebAssetItems + + + + + + + + + + + + <_BuildAsset Include="@(CandidateBuildAssets->'%(FullPath)')"> + $(PackageId) + Discovered + _content/$(PackageId) + $(MSBuildProjectFileDirectory)wwwroot\ + %(RecursiveDir)%(FileName)%(Extension) + All + All + Primary + + + + Never + PreserveNewest + %(CandidateBuildAssets.Identity) + StaticWebAsset + + + + + + + + + <_PublishAsset Include="@(CandidatePublishAssets->'%(FullPath)')"> + $(PackageId) + Discovered + _content/$(PackageId) + $(MSBuildProjectFileDirectory)wwwroot\ + %(RecursiveDir)%(FileName)%(Extension) + Publish + All + Primary + + + + PreserveNewest + PreserveNewest + %(CandidatePublishAssets.Identity) + StaticWebAsset + + + + From 45196eb84dcbf607fe8454ac4993abb04ddb5872 Mon Sep 17 00:00:00 2001 From: Javier Calvarro Nelson Date: Thu, 3 Jul 2025 10:51:10 +0200 Subject: [PATCH 2/3] Tests moved --- .../ComputeStaticWebAssetsTargetPathsTest.cs | 140 - .../LegacyStaticWebAssetsV1IntegrationTest.cs | 132 - .../Microsoft.NET.Sdk.Razor.Tests.csproj | 2 - .../StaticWebAssetEndpointsIntegrationTest.cs | 617 --- .../ApplyCompressionNegotiationTest.cs | 1434 ----- .../StaticWebAssets/ApplyCssScopesTest.cs | 379 -- .../StaticWebAssets/ComputeCssScopesTests.cs | 133 - ...ndpointsForReferenceStaticWebAssetsTest.cs | 146 - ...ComputeReferenceStaticWebAssetItemsTest.cs | 396 -- ...uteStaticWebAssetsForCurrentProjectTest.cs | 316 -- .../StaticWebAssets/ConcatenateFilesTest.cs | 353 -- .../ContentTypeProviderTests.cs | 155 - .../DefineStaticWebAssetEndpointsTest.cs | 687 --- .../DiscoverDefaultScopedCssItemsTests.cs | 101 - .../DiscoverPrecompressedAssetsTest.cs | 115 - .../DiscoverStaticWebAssetsTest.cs | 745 --- .../FilterStaticWebAssetEndpointsTest.cs | 316 -- .../FingerprintPatternMatcherTest.cs | 128 - ...rateStaticWebAssetEndpointsManifestTest.cs | 296 -- ...ateStaticWebAssetEndpointsPropsFileTest.cs | 227 - ...eStaticWebAssetsDevelopmentManifestTest.cs | 755 --- .../GenerateStaticWebAssetsManifestTest.cs | 460 -- .../GenerateStaticWebAssetsPropsFileTest.cs | 526 -- .../GenerateV1StaticWebAssetsManifestTest.cs | 273 - .../Globbing/PathTokenizerTest.cs | 133 - ...icWebAssetGlobMatcherTest.Compatibility.cs | 302 -- .../Globbing/StaticWebAssetGlobMatcherTest.cs | 388 -- .../MergeConfigurationPropertiesTest.cs | 298 -- .../OverrideHtmlAssetPlaceholdersTest.cs | 290 - .../ReadStaticWebAssetsManifestFileTest.cs | 383 -- .../ResolveAllScopedCssAssetsTest.cs | 122 - .../ResolveCompressedAssetsTest.cs | 475 -- ...tedStaticWebAssetEndpointsForAssetsTest.cs | 295 -- .../StaticWebAssets/RewriteCssTest.cs | 389 -- .../StaticWebAssetPathPatternTest.cs | 724 --- ...icWebAssetsGeneratePackagePropsFileTest.cs | 49 - ...ateExternallyDefinedStaticWebAssetsTest.cs | 257 - .../UpdateStaticWebAssetEndpointsTest.cs | 381 -- .../ValidateStaticWebAssetsUniquePathsTest.cs | 216 - .../StaticWebAssetsBaselineComparer.cs | 517 -- .../StaticWebAssetsBaselineFactory.cs | 452 -- ...ctlyBundlesScopedCssFiles.Build.files.json | 4 - ...sScopedCssFiles.Build.staticwebassets.json | 2265 -------- ...esPublishAssets.Build.staticwebassets.json | 2265 -------- ...tAndCopiesPublishAssets.Publish.files.json | 65 - ...PublishAssets.Publish.staticwebassets.json | 3735 ------------- ...AndCopiesItToOutputFolder.Build.files.json | 4 - ...tToOutputFolder.Build.staticwebassets.json | 2265 -------- ...alizersFromClassLibraries.Build.files.json | 6 - ...mClassLibraries.Build.staticwebassets.json | 2846 ---------- ...tToOutputFolder.Build.staticwebassets.json | 2265 -------- ...tputFolder_NoDependencies.Build.files.json | 4 - ..._NoDependencies.Build.staticwebassets.json | 2265 -------- ...WebAssetsV1ClassLibraries.Build.files.json | 4 - ...1ClassLibraries.Build.staticwebassets.json | 1921 ------- ...d_Can_DisableAssetCaching.Build.files.json | 6 - ...bleAssetCaching.Build.staticwebassets.json | 1390 ----- ...pointsForAssets.Build.staticwebassets.json | 1581 ------ ...s_CanIncludeBrowserAssets.Build.files.json | 1 - ...deBrowserAssets.Build.staticwebassets.json | 205 - ...esPublishAssets.Build.staticwebassets.json | 1390 ----- ...tAndCopiesPublishAssets.Publish.files.json | 26 - ...PublishAssets.Publish.staticwebassets.json | 2346 --------- ...tects_PrecompressedAssets.Build.files.json | 4 - ...ompressedAssets.Build.staticwebassets.json | 1227 ----- ...sJsModulesBasedOnPatterns.Build.files.json | 6 - ...BasedOnPatterns.Build.staticwebassets.json | 1772 ------- ...AssetsWith_TheSameContent.Build.files.json | 6 - ..._TheSameContent.Build.staticwebassets.json | 1764 ------- ...enHasNotChanged.Build.staticwebassets.json | 1390 ----- ...printsContent_WhenEnabled.Build.files.json | 6 - ...ent_WhenEnabled.Build.staticwebassets.json | 1742 ------ ...AndCopiesItToOutputFolder.Build.files.json | 6 - ...tToOutputFolder.Build.staticwebassets.json | 1390 ----- ...sManifest_WhenFilesChange.Build.files.json | 6 - ...WhenFilesChange.Build.staticwebassets.json | 1390 ----- ...t_WhenFilesChange_Updated.Build.files.json | 6 - ...sChange_Updated.Build.staticwebassets.json | 1581 ------ ...ctReference_UpdatesAssets.Build.files.json | 1 - ...e_UpdatesAssets.Build.staticwebassets.json | 416 -- ...sionOnAllAssets.Build.staticwebassets.json | 1104 ---- ...ermediateOutput.Build.staticwebassets.json | 1390 ----- ...esPublishAssets.Build.staticwebassets.json | 2265 -------- ...tAndCopiesPublishAssets.Publish.files.json | 65 - ...PublishAssets.Publish.staticwebassets.json | 3735 ------------- ...aryInitializers.Build.staticwebassets.json | 2647 ---------- ...ish_LibraryInitializers.Publish.files.json | 41 - ...yInitializers.Publish.staticwebassets.json | 4371 --------------- ...esPublishAssets.Build.staticwebassets.json | 2265 -------- ...tAndCopiesPublishAssets.Publish.files.json | 65 - ...PublishAssets.Publish.staticwebassets.json | 3735 ------------- ...heRightLocation.Build.staticwebassets.json | 2830 ---------- ...ssetsToTheRightLocation.Publish.files.json | 86 - ...RightLocation.Publish.staticwebassets.json | 4677 ----------------- ...esPublishAssets.Build.staticwebassets.json | 2265 -------- ...tAndCopiesPublishAssets.Publish.files.json | 35 - ...PublishAssets.Publish.staticwebassets.json | 3735 ------------- ...esPublishAssets.Build.staticwebassets.json | 2265 -------- ...tAndCopiesPublishAssets.Publish.files.json | 35 - ...PublishAssets.Publish.staticwebassets.json | 3735 ------------- ...1ClassLibraries.Build.staticwebassets.json | 1921 ------- ...bAssetsV1ClassLibraries.Publish.files.json | 63 - ...lassLibraries.Publish.staticwebassets.json | 3152 ----------- ..._With_PrecompressedAssets.Build.files.json | 18 - ...ompressedAssets.Build.staticwebassets.json | 1227 ----- ...intsForAssets.Publish.staticwebassets.json | 2660 ---------- ...ublish_Assets.Publish.staticwebassets.json | 2660 ---------- ...CanIncludeBrowserAssets.Publish.files.json | 8 - ...BrowserAssets.Publish.staticwebassets.json | 328 -- ...esPublishAssets.Build.staticwebassets.json | 1390 ----- ...tAndCopiesPublishAssets.Publish.files.json | 26 - ...PublishAssets.Publish.staticwebassets.json | 2346 --------- ...esPublishAssets.Build.staticwebassets.json | 1390 ----- ...tAndCopiesPublishAssets.Publish.files.json | 17 - ...PublishAssets.Publish.staticwebassets.json | 2346 --------- ...esPublishAssets.Build.staticwebassets.json | 1390 ----- ...tAndCopiesPublishAssets.Publish.files.json | 17 - ...PublishAssets.Publish.staticwebassets.json | 2346 --------- ...undleToTheRightLocation.Publish.files.json | 41 - ...RightLocation.Publish.staticwebassets.json | 3568 ------------- ...e_UpdatesAssets.Build.staticwebassets.json | 392 -- ...Reference_UpdatesAssets.Publish.files.json | 14 - ...UpdatesAssets.Publish.staticwebassets.json | 638 --- ...tToOutputFolder.Build.staticwebassets.json | 1390 ----- ...sItToOutputFolder_Rebuild.Build.files.json | 6 - ...tFolder_Rebuild.Build.staticwebassets.json | 1390 ----- ...ible_WithPreviousVersions.Build.files.json | 4 - ...reviousVersions.Build.staticwebassets.json | 2104 -------- ...le_WithPreviousVersions.Publish.files.json | 69 - ...viousVersions.Publish.staticwebassets.json | 3458 ------------ ...aticWebAssetsCompressionIntegrationTest.cs | 219 - .../StaticWebAssetsCrossTargetingTests.cs | 109 - .../StaticWebAssetsDesignTimeTest.cs | 163 - .../StaticWebAssetsFingerprintingTest.cs | 206 - .../StaticWebAssetsIntegrationTest.cs | 958 ---- .../StaticWebAssetsPackIntegrationTest.cs | 1730 ------ ...osoft.NET.Sdk.StaticWebAssets.Tests.csproj | 9 + .../StaticWebAssetsBaselineFactory2.cs | 452 -- .../StaticWebAssetsIntegrationTest.cs | 26 +- .../Generated/Counter.razor.rz.scp.css | 0 .../Generated/FetchData.razor.rz.scp.css | 0 .../Generated/Index.razor.rz.scp.css | 0 .../TestFiles/Generated/lib.bundle.scp.css | 0 .../Generated/package.bundle.scp.css | 0 144 files changed, 31 insertions(+), 135641 deletions(-) delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/ComputeStaticWebAssetsTargetPathsTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/LegacyStaticWebAssetsV1IntegrationTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetEndpointsIntegrationTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ApplyCompressionNegotiationTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ApplyCssScopesTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeCssScopesTests.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeEndpointsForReferenceStaticWebAssetsTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeReferenceStaticWebAssetItemsTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeStaticWebAssetsForCurrentProjectTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ConcatenateFilesTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ContentTypeProviderTests.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DefineStaticWebAssetEndpointsTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DiscoverDefaultScopedCssItemsTests.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DiscoverPrecompressedAssetsTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DiscoverStaticWebAssetsTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/FilterStaticWebAssetEndpointsTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/FingerprintPatternMatcherTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsManifestTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsPropsFileTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetsDevelopmentManifestTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetsManifestTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetsPropsFileTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateV1StaticWebAssetsManifestTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/Globbing/PathTokenizerTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.Compatibility.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/MergeConfigurationPropertiesTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/OverrideHtmlAssetPlaceholdersTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ReadStaticWebAssetsManifestFileTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ResolveAllScopedCssAssetsTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ResolveCompressedAssetsTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ResolveFingerprintedStaticWebAssetEndpointsForAssetsTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/RewriteCssTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/StaticWebAssetPathPatternTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/StaticWebAssetsGeneratePackagePropsFileTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/UpdateExternallyDefinedStaticWebAssetsTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/UpdateStaticWebAssetEndpointsTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ValidateStaticWebAssetsUniquePathsTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselineComparer.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselineFactory.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_CreatesEndpointsForAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DoesNotUpdateManifest_WhenHasNotChanged.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/CanEnable_CompressionOnAllAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Clean_RemovesManifestFrom_BuildAndIntermediateOutput.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets_BuildAndPublish_Assets.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.files.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.staticwebassets.json delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsCompressionIntegrationTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsCrossTargetingTests.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsDesignTimeTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsFingerprintingTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsIntegrationTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsPackIntegrationTest.cs delete mode 100644 test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineFactory2.cs rename test/{Microsoft.NET.Sdk.Razor.Tests => Microsoft.NET.Sdk.StaticWebAssets.Tests}/TestFiles/Generated/Counter.razor.rz.scp.css (100%) rename test/{Microsoft.NET.Sdk.Razor.Tests => Microsoft.NET.Sdk.StaticWebAssets.Tests}/TestFiles/Generated/FetchData.razor.rz.scp.css (100%) rename test/{Microsoft.NET.Sdk.Razor.Tests => Microsoft.NET.Sdk.StaticWebAssets.Tests}/TestFiles/Generated/Index.razor.rz.scp.css (100%) rename test/{Microsoft.NET.Sdk.Razor.Tests => Microsoft.NET.Sdk.StaticWebAssets.Tests}/TestFiles/Generated/lib.bundle.scp.css (100%) rename test/{Microsoft.NET.Sdk.Razor.Tests => Microsoft.NET.Sdk.StaticWebAssets.Tests}/TestFiles/Generated/package.bundle.scp.css (100%) diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/ComputeStaticWebAssetsTargetPathsTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/ComputeStaticWebAssetsTargetPathsTest.cs deleted file mode 100644 index bc54f1c1c5e0..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/ComputeStaticWebAssetsTargetPathsTest.cs +++ /dev/null @@ -1,140 +0,0 @@ -// 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 System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests; -public class ComputeStaticWebAssetsTargetPathsTest -{ - [Fact] - public void IncludesFingerprintInFileWhenPreferred() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); - - var task = new ComputeStaticWebAssetsTargetPaths - { - BuildEngine = buildEngine.Object, - Assets = [CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate#[.{fingerprint}]!.js", "All", "All", fingerprint: "1234asdf")], - PathPrefix = "wwwroot", - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.AssetsWithTargetPath.Should().ContainSingle(); - var asset = task.AssetsWithTargetPath[0]; - asset.Should().NotBeNull(); - asset.GetMetadata("TargetPath").Should().Be(Path.Combine("wwwroot", "candidate.1234asdf.js")); - } - - [Fact] - public void IncludesFingerprintInFileWhenRequired() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); - - var task = new ComputeStaticWebAssetsTargetPaths - { - BuildEngine = buildEngine.Object, - Assets = [CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate#[.{fingerprint}].js", "All", "All", fingerprint: "1234asdf")], - PathPrefix = "wwwroot", - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.AssetsWithTargetPath.Should().ContainSingle(); - var asset = task.AssetsWithTargetPath[0]; - asset.Should().NotBeNull(); - asset.GetMetadata("TargetPath").Should().Be(Path.Combine("wwwroot", "candidate.1234asdf.js")); - } - - [Fact] - public void DoesNotIncludeFingerprintInFileWhenNotPreferred() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); - - var task = new ComputeStaticWebAssetsTargetPaths - { - BuildEngine = buildEngine.Object, - Assets = [CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate#[.{fingerprint}]?.js", "All", "All", fingerprint: "1234asdf")], - PathPrefix = "wwwroot", - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.AssetsWithTargetPath.Should().ContainSingle(); - var asset = task.AssetsWithTargetPath[0]; - asset.Should().NotBeNull(); - asset.GetMetadata("TargetPath").Should().Be(Path.Combine("wwwroot", "candidate.js")); - } - - private static ITaskItem CreateCandidate( - string itemSpec, - string sourceId, - string sourceType, - string relativePath, - string assetKind, - string assetMode, - string fingerprint = null) - { - var result = new StaticWebAsset() - { - Identity = Path.GetFullPath(itemSpec), - SourceId = sourceId, - SourceType = sourceType, - ContentRoot = Directory.GetCurrentDirectory(), - BasePath = "base", - RelativePath = relativePath, - AssetKind = assetKind, - AssetMode = assetMode, - AssetRole = "Primary", - RelatedAsset = "", - AssetTraitName = "", - AssetTraitValue = "", - CopyToOutputDirectory = "", - CopyToPublishDirectory = "", - OriginalItemSpec = itemSpec, - // Add these to avoid accessing the disk to compute them - Integrity = "integrity", - Fingerprint = fingerprint ?? "fingerprint", - FileLength = 10, - LastWriteTime = DateTime.UtcNow, - }; - - result.ApplyDefaults(); - result.Normalize(); - - return result.ToTaskItem(); - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/LegacyStaticWebAssetsV1IntegrationTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/LegacyStaticWebAssetsV1IntegrationTest.cs deleted file mode 100644 index 4c59b2d0475f..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/LegacyStaticWebAssetsV1IntegrationTest.cs +++ /dev/null @@ -1,132 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using Microsoft.AspNetCore.StaticWebAssets.Tasks; - -[assembly:CollectionBehavior(DisableTestParallelization = true)] - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - public class LegacyStaticWebAssetsV1IntegrationTest(ITestOutputHelper log) - : IsolatedNuGetPackageFolderAspNetSdkBaselineTest(log, nameof(LegacyStaticWebAssetsV1IntegrationTest)) - { - [Fact] - public void PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries() - { - var testAsset = "RazorAppWithPackageAndP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset) - .WithProjectChanges((project, document) => - { - if (Path.GetFileName(project) == "AnotherClassLib.csproj") - { - document.Descendants("TargetFramework").Single().ReplaceNodes("netstandard2.1"); - document.Descendants("FrameworkReference").Single().Remove(); - document.Descendants("PropertyGroup").First().Add(new XElement("RazorLangVersion", "3.0")); - } - if (Path.GetFileName(project) == "ClassLibrary.csproj") - { - document.Descendants("TargetFramework").Single().ReplaceNodes("netstandard2.0"); - document.Descendants("FrameworkReference").Single().Remove(); - document.Descendants("PropertyGroup").First().Add(new XElement("RazorLangVersion", "3.0")); - } - }); - - // We are deleting Views and Components because we are only interested in the static web assets behavior for this test - // and this makes it easier to validate the test. - Directory.Delete(Path.Combine(ProjectDirectory.TestRoot, "AnotherClassLib", "Views"), recursive: true); - Directory.Delete(Path.Combine(ProjectDirectory.TestRoot, "ClassLibrary", "Views"), recursive: true); - Directory.Delete(Path.Combine(ProjectDirectory.TestRoot, "ClassLibrary", "Components"), recursive: true); - - EnsureLocalPackagesExists(); - - var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(restore).Should().Pass(); - - var publish = CreatePublishCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(publish).Should().Pass(); - - var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var publishPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - AssertManifest( - StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)), - LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(publishPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().NotExist(); - - // GenerateStaticWebAssetsPublishManifest should generate the publish manifest file. - var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); - new FileInfo(path).Should().Exist(); - var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); - AssertManifest( - publishManifest, - LoadPublishManifest()); - - AssertPublishAssets( - publishManifest, - publishPath, - intermediateOutputPath); - } - - [Fact] - public void BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries() - { - var testAsset = "RazorAppWithPackageAndP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset) - .WithProjectChanges((project, document) => - { - if (Path.GetFileName(project) == "AnotherClassLib.csproj") - { - document.Descendants("TargetFramework").Single().ReplaceNodes("netstandard2.1"); - document.Descendants("FrameworkReference").Single().Remove(); - document.Descendants("PropertyGroup").First().Add(new XElement("RazorLangVersion", "3.0")); - } - if (Path.GetFileName(project) == "ClassLibrary.csproj") - { - document.Descendants("TargetFramework").Single().ReplaceNodes("netstandard2.0"); - document.Descendants("FrameworkReference").Single().Remove(); - document.Descendants("PropertyGroup").First().Add(new XElement("RazorLangVersion", "3.0")); - } - }); - - // We are deleting Views and Components because we are only interested in the static web assets behavior for this test - // and this makes it easier to validate the test. - Directory.Delete(Path.Combine(ProjectDirectory.TestRoot, "AnotherClassLib", "Views"), recursive: true); - Directory.Delete(Path.Combine(ProjectDirectory.TestRoot, "ClassLibrary", "Views"), recursive: true); - Directory.Delete(Path.Combine(ProjectDirectory.TestRoot, "ClassLibrary", "Components"), recursive: true); - - EnsureLocalPackagesExists(); - - var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(restore).Should().Pass(); - - var build = CreateBuildCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); - AssertManifest( - manifest, - LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().Exist(); - - AssertBuildAssets( - manifest, - outputPath, - intermediateOutputPath); - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/Microsoft.NET.Sdk.Razor.Tests.csproj b/test/Microsoft.NET.Sdk.Razor.Tests/Microsoft.NET.Sdk.Razor.Tests.csproj index fa119807077e..9be78a307532 100644 --- a/test/Microsoft.NET.Sdk.Razor.Tests/Microsoft.NET.Sdk.Razor.Tests.csproj +++ b/test/Microsoft.NET.Sdk.Razor.Tests/Microsoft.NET.Sdk.Razor.Tests.csproj @@ -55,8 +55,6 @@ PreserveNewest - -
diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetEndpointsIntegrationTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetEndpointsIntegrationTest.cs deleted file mode 100644 index 8f844304d234..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetEndpointsIntegrationTest.cs +++ /dev/null @@ -1,617 +0,0 @@ -// 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 System.Diagnostics.Eventing.Reader; -using System.Globalization; -using System.Text.Json; -using System.Text.RegularExpressions; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; - -namespace Microsoft.NET.Sdk.Razor.Tests; - -public partial class StaticWebAssetEndpointsIntegrationTest(ITestOutputHelper log) - : AspNetSdkBaselineTest(log, GenerateBaselines) -{ - [GeneratedRegex("""(?'project'[a-zA-Z0-9]+)(?:\.(?'fingerprint'[a-zA-Z0-9]*))?\.bundle\.scp\.css(?'compress'\.(?:gz|br))?$""")] - private static partial Regex ProjectBundleRegex(); - - [GeneratedRegex("""(?'project'[a-zA-Z0-9]+)(?:\.(?'fingerprint'[a-zA-Z0-9]*))?\.styles\.css(?'compress'\.(?:gz|br))?$""")] - private static partial Regex AppBundleRegex(); - - [Fact] - public void Build_CreatesEndpointsForAssets() - { - ProjectDirectory = CreateAspNetSdkTestAsset("RazorComponentApp"); - var root = ProjectDirectory.TestRoot; - - var dir = Directory.CreateDirectory(Path.Combine(root, "wwwroot")); - File.WriteAllText(Path.Combine(dir.FullName, "app.js"), "console.log('hello world!');"); - - var build = CreateBuildCommand(ProjectDirectory); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - - var endpoints = manifest.Endpoints; - // blazor.server.js and blazor.web.js assets and endpoints are included automatically - // based on the presence of .razor files in projects referencing the web SDK. - // In the future we will filter these out based on whether the app references the Endpoints or the Server - // assemblies, but for now, just account for them in the tests and ignore them. - endpoints.Should().HaveCount(27); - var appJsEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js")); - appJsEndpoints.Should().HaveCount(2); - var appJsGzEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js.gz")); - appJsGzEndpoints.Should().HaveCount(1); - - // project bundle endpoints - var bundleEndpoints = endpoints.Where(MatchUncompresedProjectBundlesNoFingerprint); - bundleEndpoints.Should().HaveCount(2); - - var bundleGzEndpoints = endpoints.Where(MatchCompressedProjectBundlesNoFingerprint); - bundleGzEndpoints.Should().HaveCount(1); - - var fingerprintedBundleGzEndpoints = endpoints.Where(MatchCompressedProjectBundlesWithFingerprint); - fingerprintedBundleGzEndpoints.Should().HaveCount(1); - - var fingerprintedBundles = endpoints.Where(MatchUncompressedProjectBundlesWithFingerprint); - fingerprintedBundles.Should().HaveCount(2); - - // app bundle endpoints - var appBundleEndpoints = endpoints.Where(MatchUncompressedAppBundleNoFingerprint); - appBundleEndpoints.Should().HaveCount(2); - - var appBundleGzEndpoints = endpoints.Where(MatchCompressedAppBundleNoFingerprint); - appBundleGzEndpoints.Should().HaveCount(1); - - var fingerprintedAppBundle = endpoints.Where(MatchUncompressedAppBundleWithFingerprint); - fingerprintedAppBundle.Should().HaveCount(2); - - var fingerprintedAppBundleGz = endpoints.Where(MatchCompressedAppBundleWithFingerprint); - fingerprintedAppBundleGz.Should().HaveCount(1); - - AssertManifest(manifest, LoadBuildManifest()); - } - - private bool MatchUncompresedProjectBundlesNoFingerprint(StaticWebAssetEndpoint ep) => ProjectBundleRegex().Match(ep.Route) is - { - Success: true, - Groups: [ - var _, - { Name: "project", Value: "ComponentApp", Success: true, }, - { Name: "fingerprint", Value: "", Success: false }, - { Name: "compress", Value: "", Success: false } - ] - }; - - private bool MatchCompressedProjectBundlesNoFingerprint(StaticWebAssetEndpoint ep) => ProjectBundleRegex().Match(ep.Route) is - { - Success: true, - Groups: [ - var _, - { Name: "project", Value: "ComponentApp", Success: true, }, - { Name: "fingerprint", Value: "", Success: false }, - { Name: "compress", Value: var compress, Success: true } - ] - } && (compress == ".gz" || compress == ".br"); - - private bool MatchUncompressedProjectBundlesWithFingerprint(StaticWebAssetEndpoint ep) => ProjectBundleRegex().Match(ep.Route) is - { - Success: true, - Groups: [ - var m, - { Name: "project", Value: "ComponentApp", Success: true, }, - { Name: "fingerprint", Value: var fingerprint, Success: true }, - { Name: "compress", Value: "", Success: false } - ] - } && fingerprint == ep.EndpointProperties.Single(p => p.Name == "fingerprint").Value; - - private bool MatchCompressedProjectBundlesWithFingerprint(StaticWebAssetEndpoint ep) => ProjectBundleRegex().Match(ep.Route) is - { - Success: true, - Groups: [ - var m, - { Name: "project", Value: "ComponentApp", Success: true, }, - { Name: "fingerprint", Value: var fingerprint, Success: true }, - { Name: "compress", Value: var compress, Success: true } - ] - } && !string.IsNullOrWhiteSpace(fingerprint) - && (compress == ".gz" || compress == ".br"); - - private bool MatchUncompressedAppBundleNoFingerprint(StaticWebAssetEndpoint ep) => AppBundleRegex().Match(ep.Route) is - { - Success: true, - Groups: [ - var _, - { Name: "project", Value: "ComponentApp", Success: true, }, - { Name: "fingerprint", Value: "", Success: false }, - { Name: "compress", Value: "", Success: false } - ] - }; - - private bool MatchCompressedAppBundleNoFingerprint(StaticWebAssetEndpoint ep) => AppBundleRegex().Match(ep.Route) is - { - Success: true, - Groups: [ - var _, - { Name: "project", Value: "ComponentApp", Success: true, }, - { Name: "fingerprint", Value: "", Success: false }, - { Name: "compress", Value: var compress, Success: true } - ] - } && (compress == ".gz" || compress == ".br"); - - private bool MatchUncompressedAppBundleWithFingerprint(StaticWebAssetEndpoint ep) => AppBundleRegex().Match(ep.Route) is - { - Success: true, - Groups: [ - var m, - { Name: "project", Value: "ComponentApp", Success: true, }, - { Name: "fingerprint", Value: var fingerprint, Success: true }, - { Name: "compress", Value: "", Success: false } - ] - } && fingerprint == ep.EndpointProperties.Single(p => p.Name == "fingerprint").Value; - - private bool MatchCompressedAppBundleWithFingerprint(StaticWebAssetEndpoint ep) => AppBundleRegex().Match(ep.Route) is - { - Success: true, - Groups: [ - var m, - { Name: "project", Value: "ComponentApp", Success: true, }, - { Name: "fingerprint", Value: var fingerprint, Success: true }, - { Name: "compress", Value: var compress, Success: true } - ] - } && !string.IsNullOrWhiteSpace(fingerprint) - && (compress == ".gz" || compress == ".br"); - - [Fact] - public void Publish_CreatesEndpointsForAssets() - { - ProjectDirectory = CreateAspNetSdkTestAsset("RazorComponentApp"); - var root = ProjectDirectory.TestRoot; - - var dir = Directory.CreateDirectory(Path.Combine(root, "wwwroot")); - File.WriteAllText(Path.Combine(dir.FullName, "app.js"), "console.log('hello world!');"); - - var publish = CreatePublishCommand(ProjectDirectory); - ExecuteCommand(publish).Should().Pass(); - - var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - - var endpoints = manifest.Endpoints; - - foreach (var endpoint in endpoints) - { - var contentLength = endpoint.ResponseHeaders.Single(rh => rh.Name == "Content-Length"); - var length = long.Parse(contentLength.Value, CultureInfo.InvariantCulture); - var file = new FileInfo(endpoint.AssetFile); - file.Should().Exist(); - file.Length.Should().Be(length, $"because {endpoint.Route} {file.FullName}"); - } - - // blazor.server.js and blazor.web.js assets and endpoints are included automatically - // based on the presence of .razor files in projects referencing the web SDK. - // In the future we will filter these out based on whether the app references the Endpoints or the Server - // assemblies, but for now, just account for them in the tests and ignore them. - endpoints.Should().HaveCount(45); - var appJsEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js")); - appJsEndpoints.Should().HaveCount(3); - var appJsGzEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js.gz")); - appJsGzEndpoints.Should().HaveCount(1); - var appJsBrEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js.br")); - appJsBrEndpoints.Should().HaveCount(1); - - var uncompressedAppJsEndpoint = appJsEndpoints.Where(ep => ep.Selectors.Length == 0); - uncompressedAppJsEndpoint.Should().HaveCount(1); - uncompressedAppJsEndpoint.Single().ResponseHeaders.Select(h => h.Name).Should().BeEquivalentTo( - [ - "Accept-Ranges", - "Cache-Control", - "Content-Length", - "Content-Type", - "ETag", - "Last-Modified" - ] - ); - - var eTagHeader = uncompressedAppJsEndpoint.Single().ResponseHeaders.Single(h => h.Name == "ETag"); - - var gzipCompressedAppJsEndpoint = appJsEndpoints.Where(ep => ep.Selectors.Length == 1 && ep.Selectors[0].Value == "gzip"); - gzipCompressedAppJsEndpoint.Should().HaveCount(1); - gzipCompressedAppJsEndpoint.Single().ResponseHeaders.Select(h => h.Name).Should().BeEquivalentTo( - [ - "Accept-Ranges", - "Cache-Control", - "Content-Length", - "Content-Type", - "ETag", - "Last-Modified", - "Content-Encoding", - "Vary", - "ETag" - ] - ); - gzipCompressedAppJsEndpoint.Single().ResponseHeaders.Any(h => h.Name == "ETag" && h.Value.StartsWith("W/")).Should().BeTrue(); - var gzipWeakEtag = gzipCompressedAppJsEndpoint.Single().ResponseHeaders.Single(h => h.Name == "ETag" && h.Value.StartsWith("W/")).Value; - gzipWeakEtag[2..].Should().Be(eTagHeader.Value); - - var brotliCompressedAppJsEndpoint = appJsEndpoints.Where(ep => ep.Selectors.Length == 1 && ep.Selectors[0].Value == "br"); - brotliCompressedAppJsEndpoint.Should().HaveCount(1); - brotliCompressedAppJsEndpoint.Single().ResponseHeaders.Select(h => h.Name).Should().BeEquivalentTo( - [ - "Accept-Ranges", - "Cache-Control", - "Content-Length", - "Content-Type", - "ETag", - "Last-Modified", - "Content-Encoding", - "Vary", - "ETag", - ] - ); - brotliCompressedAppJsEndpoint.Single().ResponseHeaders.Any(h => h.Name == "ETag" && h.Value.StartsWith("W/")).Should().BeTrue(); - var brWeakEtag = brotliCompressedAppJsEndpoint.Single().ResponseHeaders.Single(h => h.Name == "ETag" && h.Value.StartsWith("W/")).Value; - brWeakEtag[2..].Should().Be(eTagHeader.Value); - - var bundleEndpoints = endpoints.Where(MatchUncompresedProjectBundlesNoFingerprint); - bundleEndpoints.Should().HaveCount(3); - var bundleGzEndpoints = endpoints.Where(MatchCompressedProjectBundlesNoFingerprint).Where(ep => ep.Route.EndsWith(".gz")); - bundleGzEndpoints.Should().HaveCount(1); - var bundleBrEndpoints = endpoints.Where(MatchCompressedProjectBundlesNoFingerprint).Where(ep => ep.Route.EndsWith(".br")); - bundleBrEndpoints.Should().HaveCount(1); - var fingerprintedBundleGzEndpoints = endpoints.Where(MatchCompressedProjectBundlesWithFingerprint).Where(ep => ep.Route.EndsWith(".gz")); - fingerprintedBundleGzEndpoints.Should().HaveCount(1); - var fingerprintedBundleBrEndpoints = endpoints.Where(MatchCompressedProjectBundlesWithFingerprint).Where(ep => ep.Route.EndsWith(".br")); - fingerprintedBundleBrEndpoints.Should().HaveCount(1); - - var fingerprintedBundleEndpoints = endpoints.Where(MatchUncompressedProjectBundlesWithFingerprint); - fingerprintedBundleEndpoints.Should().HaveCount(3); - - var appBundleEndpoints = endpoints.Where(MatchUncompressedAppBundleNoFingerprint); - appBundleEndpoints.Should().HaveCount(3); - var appBundleGzEndpoints = endpoints.Where(MatchCompressedAppBundleNoFingerprint).Where(ep => ep.Route.EndsWith(".gz")); - appBundleGzEndpoints.Should().HaveCount(1); - var appBundleBrEndpoints = endpoints.Where(MatchCompressedAppBundleNoFingerprint).Where(ep => ep.Route.EndsWith(".br")); - appBundleBrEndpoints.Should().HaveCount(1); - var fingerprintedAppBundleGzEndpoints = endpoints.Where(MatchCompressedAppBundleWithFingerprint).Where(ep => ep.Route.EndsWith(".gz")); - fingerprintedAppBundleGzEndpoints.Should().HaveCount(1); - var fingerprintedAppBundleBrEndpoints = endpoints.Where(MatchCompressedAppBundleWithFingerprint).Where(ep => ep.Route.EndsWith(".br")); - fingerprintedAppBundleBrEndpoints.Should().HaveCount(1); - - var fingerprintedAppBundleEndpoints = endpoints.Where(MatchUncompressedAppBundleWithFingerprint); - fingerprintedAppBundleEndpoints.Should().HaveCount(3); - - AssertManifest(manifest, LoadPublishManifest()); - } - - [Fact] - public void Publish_CreatesEndpointsForAssets_BuildAndPublish_Assets() - { - ProjectDirectory = CreateAspNetSdkTestAsset("RazorComponentApp") - .WithProjectChanges(document => - { - document.Root.AddFirst( - new XElement("ItemGroup", - new XElement("Content", - new XAttribute("Update", "wwwroot/app.js"), - new XAttribute("CopyToPublishDirectory", "Never")), - new XElement("Content", - new XAttribute("Update", "wwwroot/app.publish.js"), - new XAttribute("TargetPath", "wwwroot/app.js"), - new XAttribute("CopyToPublishDirectory", "PreserveNewest")))); - var doc2 = document; - }); - var root = ProjectDirectory.TestRoot; - - var dir = Directory.CreateDirectory(Path.Combine(root, "wwwroot")); - File.WriteAllText(Path.Combine(dir.FullName, "app.js"), "console.log('hello world!');"); - File.WriteAllText(Path.Combine(dir.FullName, "app.publish.js"), "console.log('publish hello world!');"); - - var publish = CreatePublishCommand(ProjectDirectory); - ExecuteCommand(publish).Should().Pass(); - - var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var publishOutputPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); - new FileInfo(path).Should().Exist(); - var buildManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(buildManifest, LoadPublishManifest()); - - var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"))); - - var endpoints = publishManifest.Endpoints; - - var appJsEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js")); - appJsEndpoints.Should().HaveCount(3); - - // There's only 1 uncompressed asset endpoint. - var unCompressedAssetEndpoint = appJsEndpoints.Where(ep => ep.Selectors.Length == 0); - unCompressedAssetEndpoint.Should().HaveCount(1); - - // The uncompressed asset endpoint is for the publish asset. - var publishAsset = publishManifest.Assets.Where(a => a.Identity == unCompressedAssetEndpoint.Single().AssetFile); - publishAsset.Should().HaveCount(1); - - // There is only 1 gzip asset endpoint. - var appGzAssetEndpoint = appJsEndpoints.Where(ep => ep.Selectors.Length == 1 && ep.Selectors[0].Value == "gzip"); - appGzAssetEndpoint.Should().HaveCount(1); - - // The gzip asset endpoint is for the gzip compressed version of the publish asset. - var publishGzAsset = publishManifest.Assets.Where(a => a.Identity == appGzAssetEndpoint.Single().AssetFile); - publishGzAsset.Should().HaveCount(1); - publishGzAsset.Single().RelatedAsset.Should().Be(publishAsset.Single().Identity); - - // There is only 1 br asset endpoint. - var appBrAssetEndpoint = appJsEndpoints.Where(ep => ep.Selectors.Length == 1 && ep.Selectors[0].Value == "br"); - appBrAssetEndpoint.Should().HaveCount(1); - - // The br asset endpoint is for the br compressed version of the publish asset. - var publishBrAsset = publishManifest.Assets.Where(a => a.Identity == appBrAssetEndpoint.Single().AssetFile); - publishBrAsset.Should().HaveCount(1); - publishBrAsset.Single().RelatedAsset.Should().Be(publishAsset.Single().Identity); - - // The compressed gzip and br assets are exposed with their extensions. - var appJsGzEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js.gz")); - appJsGzEndpoints.Should().HaveCount(1); - - var appJsBrEndpoints = endpoints.Where(ep => ep.Route.EndsWith("app.js.br")); - appJsBrEndpoints.Should().HaveCount(1); - - var bundleEndpoints = endpoints.Where(MatchUncompresedProjectBundlesNoFingerprint); - bundleEndpoints.Should().HaveCount(3); - var bundleGzEndpoints = endpoints.Where(MatchCompressedProjectBundlesNoFingerprint).Where(ep => ep.Route.EndsWith(".gz")); - bundleGzEndpoints.Should().HaveCount(1); - var bundleBrEndpoints = endpoints.Where(MatchCompressedProjectBundlesNoFingerprint).Where(ep => ep.Route.EndsWith(".br")); - bundleBrEndpoints.Should().HaveCount(1); - var fingerprintedBundleGzEndpoints = endpoints.Where(MatchCompressedProjectBundlesWithFingerprint).Where(ep => ep.Route.EndsWith(".gz")); - fingerprintedBundleGzEndpoints.Should().HaveCount(1); - var fingerprintedBundleBrEndpoints = endpoints.Where(MatchCompressedProjectBundlesWithFingerprint).Where(ep => ep.Route.EndsWith(".br")); - fingerprintedBundleBrEndpoints.Should().HaveCount(1); - - var fingerprintedBundleEndpoints = endpoints.Where(MatchUncompressedProjectBundlesWithFingerprint); - fingerprintedBundleEndpoints.Should().HaveCount(3); - - var appBundleEndpoints = endpoints.Where(MatchUncompressedAppBundleNoFingerprint); - appBundleEndpoints.Should().HaveCount(3); - var appBundleGzEndpoints = endpoints.Where(MatchCompressedAppBundleNoFingerprint).Where(ep => ep.Route.EndsWith(".gz")); - appBundleGzEndpoints.Should().HaveCount(1); - var appBundleBrEndpoints = endpoints.Where(MatchCompressedAppBundleNoFingerprint).Where(ep => ep.Route.EndsWith(".br")); - appBundleBrEndpoints.Should().HaveCount(1); - var fingerprintedAppBundleGzEndpoints = endpoints.Where(MatchCompressedAppBundleWithFingerprint).Where(ep => ep.Route.EndsWith(".gz")); - fingerprintedAppBundleGzEndpoints.Should().HaveCount(1); - var fingerprintedAppBundleBrEndpoints = endpoints.Where(MatchCompressedAppBundleWithFingerprint).Where(ep => ep.Route.EndsWith(".br")); - fingerprintedAppBundleBrEndpoints.Should().HaveCount(1); - - var fingerprintedAppBundleEndpoints = endpoints.Where(MatchUncompressedAppBundleWithFingerprint); - fingerprintedAppBundleEndpoints.Should().HaveCount(3); - - // blazor.server.js and blazor.web.js assets and endpoints are included automatically - // based on the presence of .razor files in projects referencing the web SDK. - // In the future we will filter these out based on whether the app references the Endpoints or the Server - // assemblies, but for now, just account for them in the tests and ignore them. - endpoints.Should().HaveCount(45); - - AssertManifest(publishManifest, LoadPublishManifest()); - } - - [RequiresMSBuildVersionFact("17.12", Reason = "Needs System.Text.Json 8.0.5")] - public void Build_EndpointManifest_ContainsEndpoints() - { - // Arrange - var expectedExtensions = new[] { ".pdb", ".js", ".wasm" }; - var testAppName = "BlazorWasmWithLibrary"; - var testInstance = CreateAspNetSdkTestAsset(testAppName) - .WithProjectChanges((p, doc) => - { - if (Path.GetFileName(p) == "blazorwasm.csproj") - { - var itemGroup = new XElement("PropertyGroup"); - var serviceWorkerAssetsManifest = new XElement("ServiceWorkerAssetsManifest", "service-worker-assets.js"); - var fingerprintAssets = new XElement("WasmFingerprintAssets", false); - itemGroup.Add(serviceWorkerAssetsManifest); - itemGroup.Add(fingerprintAssets); - doc.Root.Add(itemGroup); - } - }); - - var buildCommand = CreateBuildCommand(testInstance, "blazorwasm"); - buildCommand.Execute("/bl").Should().Pass(); - - var buildOutputDirectory = buildCommand.GetOutputDirectory(DefaultTfm).ToString(); - VerifyEndpointsCollection(buildOutputDirectory, "blazorwasm", readFromDevManifest: true); - } - - [RequiresMSBuildVersionFact("17.12", Reason = "Needs System.Text.Json 8.0.5")] - public void BuildHosted_EndpointManifest_ContainsEndpoints() - { - // Arrange - var testAppName = "BlazorHosted"; - var testInstance = CreateAspNetSdkTestAsset(testAppName) - .WithProjectChanges((p, doc) => - { - if (Path.GetFileName(p) == "blazorwasm.csproj") - { - var itemGroup = new XElement("PropertyGroup"); - var fingerprintAssets = new XElement("WasmFingerprintAssets", false); - itemGroup.Add(fingerprintAssets); - doc.Root.Add(itemGroup); - } - }); - - var buildCommand = CreateBuildCommand(testInstance, "blazorhosted"); - buildCommand.Execute() - .Should().Pass(); - - var buildOutputDirectory = OutputPathCalculator.FromProject(Path.Combine(testInstance.TestRoot, "blazorhosted")).GetOutputDirectory(); - - VerifyEndpointsCollection(buildOutputDirectory, "blazorhosted", readFromDevManifest: true); - } - - [RequiresMSBuildVersionFact("17.12", Reason = "Needs System.Text.Json 8.0.5")] - public void Publish_EndpointManifestContainsEndpoints() - { - // Arrange - var testAppName = "BlazorWasmWithLibrary"; - var testInstance = CreateAspNetSdkTestAsset(testAppName) - .WithProjectChanges((p, doc) => - { - if (Path.GetFileName(p) == "blazorwasm.csproj") - { - var itemGroup = new XElement("PropertyGroup"); - var fingerprintAssets = new XElement("WasmFingerprintAssets", false); - itemGroup.Add(fingerprintAssets); - doc.Root.Add(itemGroup); - } - }); - - var publishCommand = CreatePublishCommand(testInstance, "blazorwasm"); - publishCommand.Execute().Should().Pass(); - - var publishOutputDirectory = publishCommand.GetOutputDirectory(DefaultTfm).ToString(); - - VerifyEndpointsCollection(publishOutputDirectory, "blazorwasm"); - } - - [RequiresMSBuildVersionFact("17.12", Reason = "Needs System.Text.Json 8.0.5")] - public void PublishHosted_EndpointManifest_ContainsEndpoints() - { - // Arrange - var testAppName = "BlazorHosted"; - var testInstance = CreateAspNetSdkTestAsset(testAppName) - .WithProjectChanges((p, doc) => - { - if (Path.GetFileName(p) == "blazorwasm.csproj") - { - var itemGroup = new XElement("PropertyGroup"); - var fingerprintAssets = new XElement("WasmFingerprintAssets", false); - itemGroup.Add(fingerprintAssets); - doc.Root.Add(itemGroup); - } - }); - - var publishCommand = CreatePublishCommand(testInstance, "blazorhosted"); - publishCommand.Execute().Should().Pass(); - - var publishOutputDirectory = publishCommand.GetOutputDirectory(DefaultTfm).ToString(); - - VerifyEndpointsCollection(publishOutputDirectory, "blazorhosted"); - } - - // Makes several assertions about the endpoints we defined. - // All assets have at least one endpoint. - // No endpoint points to a non-existent asset - // All compressed assets have 2 endpoints (one for the path with the extension, one for the path without the extension) - // All uncompressed assets have 1 endpoint - private static void VerifyEndpointsCollection(string outputDirectory, string projectName, bool readFromDevManifest = false) - { - var endpointsManifestFile = Path.Combine(outputDirectory, $"{projectName}.staticwebassets.endpoints.json"); - - var endpoints = JsonSerializer.Deserialize(File.ReadAllText(endpointsManifestFile)); - - var wwwrootFolderFiles = GetWwwrootFolderFiles(outputDirectory); - - var foundAssets = new HashSet(); - var endpointsByAssetFile = endpoints.Endpoints.GroupBy(e => e.AssetFile).ToDictionary(g => g.Key, g => g.ToArray()); - - foreach (var endpoint in endpoints.Endpoints) - { - wwwrootFolderFiles.Should().Contain(endpoint.AssetFile); - foundAssets.Add(endpoint.AssetFile); - } - - wwwrootFolderFiles.Should().BeEquivalentTo(foundAssets); - - foreach (var file in wwwrootFolderFiles) - { - endpointsByAssetFile.Should().ContainKey(file); - if (file.EndsWith(".br") || file.EndsWith(".gz")) - { - endpointsByAssetFile[file].Should().HaveCount(2); - } - else if (endpointsByAssetFile[file].Length > 1) - { - endpointsByAssetFile[file].Where(e => e.EndpointProperties.Any(p => p.Name == "integrity")).Count().Should().Be(1); - endpointsByAssetFile[file].Where(e => e.EndpointProperties.Length == 0).Count().Should().Be(1); - } - else - { - endpointsByAssetFile[file].Should().HaveCount(1); - } - } - - HashSet GetWwwrootFolderFiles(string outputDirectory) - { - if (!readFromDevManifest) - { - return [.. Directory.GetFiles(Path.Combine(outputDirectory, "wwwroot"), "*", SearchOption.AllDirectories) - .Select(a => StaticWebAsset.Normalize(Path.GetRelativePath(Path.Combine(outputDirectory, "wwwroot"), a)))]; - } - else - { - var staticWebAssetDevelopmentManifest = JsonSerializer.Deserialize(File.ReadAllText(Path.Combine(outputDirectory, $"{projectName}.staticwebassets.runtime.json"))); - var endpoints = new HashSet(); - - //Traverse the node tree and compute the paths for all assets - Traverse(staticWebAssetDevelopmentManifest.Root, "", endpoints); - return endpoints; - } - } - } - - private static void Traverse(StaticWebAssetNode node, string pathSoFar, HashSet endpoints) - { - if (node.Asset != null) - { - endpoints.Add(StaticWebAsset.Normalize(pathSoFar)); - } - else - { - foreach (var child in node.Children) - { - Traverse(child.Value, Path.Combine(pathSoFar, child.Key), endpoints); - } - } - } - - public class StaticWebAssetsDevelopmentManifest - { - public string[] ContentRoots { get; set; } - - public StaticWebAssetNode Root { get; set; } - } - - public class StaticWebAssetPattern - { - public int ContentRootIndex { get; set; } - public string Pattern { get; set; } - public int Depth { get; set; } - } - - public class StaticWebAssetMatch - { - public int ContentRootIndex { get; set; } - public string SubPath { get; set; } - } - - public class StaticWebAssetNode - { - public Dictionary Children { get; set; } - public StaticWebAssetMatch Asset { get; set; } - public StaticWebAssetPattern[] Patterns { get; set; } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ApplyCompressionNegotiationTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ApplyCompressionNegotiationTest.cs deleted file mode 100644 index 19abfab7db42..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ApplyCompressionNegotiationTest.cs +++ /dev/null @@ -1,1434 +0,0 @@ -// 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 System.Globalization; -using System.Text.Json; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests.StaticWebAssets; - -public class ApplyCompressionNegotiationTest -{ - [Fact] - public void AppliesContentNegotiationRules_ForExistingAssets() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ApplyCompressionNegotiation - { - BuildEngine = buildEngine.Object, - CandidateAssets = - [ - CreateCandidate( - Path.Combine("wwwroot", "candidate.js"), - "MyPackage", - "Discovered", - "candidate.js", - "All", - "All", - "original-fingerprint", - "original", - fileLength: 20 - ), - CreateCandidate( - Path.Combine("compressed", "candidate.js.gz"), - "MyPackage", - "Discovered", - "candidate.js", - "All", - "All", - "compressed-fingerprint", - "compressed", - Path.Combine("wwwroot", "candidate.js"), - "Content-Encoding", - "gzip", - 9 - ) - ], - CandidateEndpoints = - [ - CreateCandidateEndpoint( - "candidate.js", - Path.Combine("wwwroot", "candidate.js"), - CreateHeaders("text/javascript", [("Content-Length", "20")])), - - CreateCandidateEndpoint( - "candidate.js.gz", - Path.Combine("compressed", "candidate.js.gz"), - CreateHeaders("text/javascript", [("Content-Length", "9")])) - ], - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.UpdatedEndpoints); - endpoints.Should().BeEquivalentTo((StaticWebAssetEndpoint[])[ - new () - { - Route = "candidate.js", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new () { Name = "Content-Length", Value = "9" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [ new () { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], - }, - new () - { - Route = "candidate.js", - AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), - ResponseHeaders = - [ - new () { Name = "Content-Length", Value = "20" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - ], - EndpointProperties = [], - Selectors = [], - }, - new () - { - Route = "candidate.js.gz", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new () { Name = "Content-Length", Value = "9" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [] - } - ]); - } - - [Fact] - public void AppliesContentNegotiationRules_ForExistingAssets_WithFingerprints() - { - var now = DateTime.Now; - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - List candidateAssets = [ - CreateCandidate( - Path.Combine("wwwroot", "candidate.js"), - "MyPackage", - "Discovered", - "candidate#[.{fingerprint}]?.js", - "All", - "All", - "original-fingerprint", - "original", - fileLength: 20, - lastModified: now - ) - ]; - - var compressedTask = new ResolveCompressedAssets - { - BuildEngine = buildEngine.Object, - CandidateAssets = [.. candidateAssets], - Formats = "gzip;brotli", - IncludePatterns = "*.js", - OutputPath = AppContext.BaseDirectory - }; - compressedTask.Execute().Should().BeTrue(); - - var compressedAssets = compressedTask.AssetsToCompress; - compressedAssets[0].SetMetadata(nameof(StaticWebAsset.Fingerprint), "gzip"); - compressedAssets[0].SetMetadata(nameof(StaticWebAsset.Integrity), "compressed-gzip"); - compressedAssets[0].SetMetadata(nameof(StaticWebAsset.FileLength), "9"); - compressedAssets[1].SetMetadata(nameof(StaticWebAsset.Fingerprint), "brotli"); - compressedAssets[1].SetMetadata(nameof(StaticWebAsset.Integrity), "compressed-brotli"); - compressedAssets[1].SetMetadata(nameof(StaticWebAsset.FileLength), "7"); - candidateAssets.AddRange(compressedAssets); - var expectedName = Path.GetFileNameWithoutExtension(compressedAssets[0].ItemSpec); - var defineStaticAssetEndpointsTask = new DefineStaticWebAssetEndpoints - { - BuildEngine = buildEngine.Object, - CandidateAssets = [.. candidateAssets], - ExistingEndpoints = [], - ContentTypeMappings = [] - }; - defineStaticAssetEndpointsTask.Execute().Should().BeTrue(); - var compressed = defineStaticAssetEndpointsTask.Endpoints; - - var task = new ApplyCompressionNegotiation - { - BuildEngine = buildEngine.Object, - CandidateAssets = [.. candidateAssets], - CandidateEndpoints = compressed, - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.UpdatedEndpoints); - var expectedEndpoints = new StaticWebAssetEndpoint[] - { - new() - { - Route = "candidate.fingerprint.js", - AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.br"), - Selectors = [ - new () - { - Name = "Content-Encoding", - Value = "br", - Quality = "0.125000000000" - } - ], - ResponseHeaders = [ - new () - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new () - { - Name = "Cache-Control", - Value = "max-age=31536000, immutable" - }, - new () - { - Name = "Content-Encoding", - Value = "br" - }, - new () - { - Name = "Content-Length", - Value = "7" - }, - new () - { - Name = "Content-Type", - Value = "text/javascript" - }, - new () - { - Name = "ETag", - Value = "\u0022compressed-brotli\u0022" - }, - new () - { - Name = "ETag", - Value = "W/\u0022original\u0022" - }, - new () - { - Name = "Last-Modified", - Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) - }, - new () - { - Name = "Vary", - Value = "Content-Encoding" - } - ], - EndpointProperties = [ - new () - { - Name = "fingerprint", - Value = "fingerprint" - }, - new () - { - Name = "integrity", - Value = "sha256-original" - }, - new () - { - Name = "label", - Value = "candidate.js" - } - ] - }, - new() - { - Route = "candidate.fingerprint.js", - AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.gz"), - Selectors = [ - new () - { - Name = "Content-Encoding", - Value = "gzip", - Quality = "0.100000000000" - } - ], - ResponseHeaders = [ - new () - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new () - { - Name = "Cache-Control", - Value = "max-age=31536000, immutable" - }, - new () - { - Name = "Content-Encoding", - Value = "gzip" - }, - new () - { - Name = "Content-Length", - Value = "9" - }, - new () - { - Name = "Content-Type", - Value = "text/javascript" - }, - new () - { - Name = "ETag", - Value = "\u0022compressed-gzip\u0022" - }, - new () - { - Name = "ETag", - Value = "W/\u0022original\u0022" - }, - new () - { - Name = "Last-Modified", - Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) - }, - new () - { - Name = "Vary", - Value = "Content-Encoding" - } - ], - EndpointProperties = [ - new () - { - Name = "fingerprint", - Value = "fingerprint" - }, - new () - { - Name = "integrity", - Value = "sha256-original" - }, - new () - { - Name = "label", - Value = "candidate.js" - } - ] - }, - new() - { - Route = "candidate.fingerprint.js", - AssetFile = Path.Combine(AppContext.BaseDirectory, "wwwroot", "candidate.js"), - ResponseHeaders = [ - new () - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new () - { - Name = "Cache-Control", - Value = "max-age=31536000, immutable" - }, - new () - { - Name = "Content-Length", - Value = "20" - }, - new () - { - Name = "Content-Type", - Value = "text/javascript" - }, - new () - { - Name = "ETag", - Value = "\u0022original\u0022" - }, - new () - { - Name = "Last-Modified", - Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) - } - ], - EndpointProperties = [ - new () - { - Name = "fingerprint", - Value = "fingerprint" - }, - new () - { - Name = "integrity", - Value = "sha256-original" - }, - new () - { - Name = "label", - Value = "candidate.js" - } - ] - }, - new() - { - Route = "candidate.fingerprint.js.br", - AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.br"), - ResponseHeaders = [ - new () - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new () - { - Name = "Cache-Control", - Value = "max-age=31536000, immutable" - }, - new () - { - Name = "Content-Encoding", - Value = "br" - }, - new () - { - Name = "Content-Length", - Value = "7" - }, - new () - { - Name = "Content-Type", - Value = "text/javascript" - }, - new () - { - Name = "ETag", - Value = "\u0022compressed-brotli\u0022" - }, - new () - { - Name = "Last-Modified", - Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) - }, - new () - { - Name = "Vary", - Value = "Content-Encoding" - } - ], - EndpointProperties = [ - new () - { - Name = "fingerprint", - Value = "fingerprint" - }, - new () - { - Name = "integrity", - Value = "sha256-compressed-brotli" - }, - new () - { - Name = "label", - Value = "candidate.js.br" - } - ] - }, - new() - { - Route = "candidate.fingerprint.js.gz", - AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.gz"), - ResponseHeaders = [ - new () - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new () - { - Name = "Cache-Control", - Value = "max-age=31536000, immutable" - }, - new () - { - Name = "Content-Encoding", - Value = "gzip" - }, - new () - { - Name = "Content-Length", - Value = "9" - }, - new () - { - Name = "Content-Type", - Value = "text/javascript" - }, - new () - { - Name = "ETag", - Value = "\u0022compressed-gzip\u0022" - }, - new () - { - Name = "Last-Modified", - Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) - }, - new () - { - Name = "Vary", - Value = "Content-Encoding" - } - ], - EndpointProperties = [ - new () - { - Name = "fingerprint", - Value = "fingerprint" - }, - new () - { - Name = "integrity", - Value = "sha256-compressed-gzip" - }, - new () - { - Name = "label", - Value = "candidate.js.gz" - } - ] - }, - new() - { - Route = "candidate.js", - AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.br"), - Selectors = [ - new () - { - Name = "Content-Encoding", - Value = "br", - Quality = "0.125000000000" - } - ], - ResponseHeaders = [ - new () - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new () - { - Name = "Cache-Control", - Value = "no-cache" - }, - new () - { - Name = "Content-Encoding", - Value = "br" - }, - new () - { - Name = "Content-Length", - Value = "7" - }, - new () - { - Name = "Content-Type", - Value = "text/javascript" - }, - new () - { - Name = "ETag", - Value = "\u0022compressed-brotli\u0022" - }, - new () - { - Name = "ETag", - Value = "W/\u0022original\u0022" - }, - new () - { - Name = "Last-Modified", - Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) - }, - new () - { - Name = "Vary", - Value = "Content-Encoding" - } - ], - EndpointProperties = [ - new () - { - Name = "integrity", - Value = "sha256-original" - } - ] - }, - new() - { - Route = "candidate.js", - AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.gz"), - Selectors = [ - new () - { - Name = "Content-Encoding", - Value = "gzip", - Quality = "0.100000000000" - } - ], - ResponseHeaders = [ - new () - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new () - { - Name = "Cache-Control", - Value = "no-cache" - }, - new () - { - Name = "Content-Encoding", - Value = "gzip" - }, - new () - { - Name = "Content-Length", - Value = "9" - }, - new () - { - Name = "Content-Type", - Value = "text/javascript" - }, - new () - { - Name = "ETag", - Value = "\u0022compressed-gzip\u0022" - }, - new () - { - Name = "ETag", - Value = "W/\u0022original\u0022" - }, - new () - { - Name = "Last-Modified", - Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) - }, - new () - { - Name = "Vary", - Value = "Content-Encoding" - } - ], - EndpointProperties = [ - new () - { - Name = "integrity", - Value = "sha256-original" - } - ] - }, - new() - { - Route = "candidate.js", - AssetFile = Path.Combine(AppContext.BaseDirectory, "wwwroot", "candidate.js"), - ResponseHeaders = [ - new () - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new () - { - Name = "Cache-Control", - Value = "no-cache" - }, - new () - { - Name = "Content-Length", - Value = "20" - }, - new () - { - Name = "Content-Type", - Value = "text/javascript" - }, - new () - { - Name = "ETag", - Value = "\u0022original\u0022" - }, - new () - { - Name = "Last-Modified", - Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) - } - ], - EndpointProperties = [ - new () - { - Name = "integrity", - Value = "sha256-original" - } - ] - }, - new() - { - Route = "candidate.js.br", - AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.br"), - ResponseHeaders = [ - new () - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new () - { - Name = "Cache-Control", - Value = "no-cache" - }, - new () - { - Name = "Content-Encoding", - Value = "br" - }, - new () - { - Name = "Content-Length", - Value = "7" - }, - new () - { - Name = "Content-Type", - Value = "text/javascript" - }, - new () - { - Name = "ETag", - Value = "\u0022compressed-brotli\u0022" - }, - new () - { - Name = "Last-Modified", - Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) - }, - new () - { - Name = "Vary", - Value = "Content-Encoding" - } - ], - EndpointProperties = [ - new () - { - Name = "integrity", - Value = "sha256-compressed-brotli" - } - ] - }, - new() - { - Route = "candidate.js.gz", - AssetFile = Path.Combine(AppContext.BaseDirectory, $"{expectedName}.gz"), - ResponseHeaders = [ - new () { - Name = "Accept-Ranges", - Value = "bytes" - }, - new () { - Name = "Cache-Control", - Value = "no-cache" - }, - new () { - Name = "Content-Encoding", - Value = "gzip" - }, - new () { - Name = "Content-Length", - Value = "9" - }, - new () { - Name = "Content-Type", - Value = "text/javascript" - }, - new () { - Name = "ETag", - Value = "\u0022compressed-gzip\u0022" - }, - new () { - Name = "Last-Modified", - Value = now.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) - }, - new () { - Name = "Vary", - Value = "Content-Encoding" - } - ], - EndpointProperties = [ - new () { - Name = "integrity", - Value = "sha256-compressed-gzip" - } - ] - } -}; - - endpoints.Should().BeEquivalentTo(expectedEndpoints); - } - - [Fact] - public void AppliesContentNegotiationRules_ToAllRelatedAssetEndpoints() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ApplyCompressionNegotiation - { - BuildEngine = buildEngine.Object, - CandidateAssets = - [ - CreateCandidate( - Path.Combine("wwwroot", "candidate.js"), - "MyPackage", - "Discovered", - "candidate.js", - "All", - "All", - "original-fingerprint", - "original", - fileLength: 20 - ), - CreateCandidate( - Path.Combine("compressed", "candidate.js.gz"), - "MyPackage", - "Discovered", - "candidate.js", - "All", - "All", - "compressed-fingerprint", - "compressed", - Path.Combine("wwwroot", "candidate.js"), - "Content-Encoding", - "gzip", - fileLength: 9 - ) - ], - CandidateEndpoints = - [ - CreateCandidateEndpoint( - "candidate.js", - Path.Combine("wwwroot", "candidate.js"), - CreateHeaders("text/javascript")), - CreateCandidateEndpoint( - "candidate.fingerprint.js", - Path.Combine("wwwroot", "candidate.js"), - CreateHeaders("text/javascript")), - CreateCandidateEndpoint( - "candidate.js.gz", - Path.Combine("compressed", "candidate.js.gz"), - CreateHeaders("text/javascript")) - ], - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.UpdatedEndpoints); - endpoints.Should().BeEquivalentTo((StaticWebAssetEndpoint[])[ - new () - { - Route = "candidate.js", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [ new () { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], - }, - new () - { - Route = "candidate.js", - AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), - ResponseHeaders = - [ - new () { Name = "Content-Type", Value = "text/javascript" } - ], - EndpointProperties = [], - Selectors = [], - }, - new () - { - Route = "candidate.fingerprint.js", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [ new () { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], - }, - new () - { - Route = "candidate.fingerprint.js", - AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), - ResponseHeaders = - [ - new () { Name = "Content-Type", Value = "text/javascript" } - ], - EndpointProperties = [], - Selectors = [], - }, - new () - { - Route = "candidate.js.gz", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [] - } - ]); - } - - [Fact] - public void AppliesContentNegotiationRules_IgnoresAlreadyProcessedEndpoints() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ApplyCompressionNegotiation - { - BuildEngine = buildEngine.Object, - CandidateAssets = - [ - CreateCandidate( - Path.Combine("wwwroot", "candidate.js"), - "MyPackage", - "Discovered", - "candidate.js", - "All", - "All", - "original-fingerprint", - "original" - ), - CreateCandidate( - Path.Combine("compressed", "candidate.js.gz"), - "MyPackage", - "Discovered", - "candidate.js", - "All", - "All", - "compressed-fingerprint", - "compressed", - Path.Combine("wwwroot", "candidate.js"), - "Content-Encoding", - "gzip" - ) - ], - CandidateEndpoints = new StaticWebAssetEndpoint[] - { - new() - { - Route = "candidate.js", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new (){ Name = "Content-Type", Value = "text/javascript" }, - new (){ Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], - }, - new() - { - Route = "candidate.js", - AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), - ResponseHeaders = - [ - new (){ Name = "Content-Type", Value = "text/javascript" } - ], - EndpointProperties = [], - Selectors = [], - }, - new() - { - Route = "candidate.fingerprint.js", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new (){ Name = "Content-Encoding", Value = "gzip" }, - new (){ Name = "Content-Type", Value = "text/javascript" }, - new (){ Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [ new () { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], - }, - new() - { - Route = "candidate.fingerprint.js", - AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), - ResponseHeaders = - [ - new () { Name = "Content-Type", Value = "text/javascript" } - ], - EndpointProperties = [], - Selectors = [], - }, - new() - { - Route = "candidate.js.gz", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [] - } - }.Select(e => e.ToTaskItem()).ToArray(), - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.UpdatedEndpoints); - endpoints.Should().BeEquivalentTo([ - new StaticWebAssetEndpoint - { - Route = "candidate.js", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], - }, - new StaticWebAssetEndpoint - { - Route = "candidate.js", - AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), - ResponseHeaders = - [ - new () { Name = "Content-Type", Value = "text/javascript" } - ], - EndpointProperties = [], - Selectors = [], - }, - new StaticWebAssetEndpoint - { - Route = "candidate.fingerprint.js", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], - }, - new StaticWebAssetEndpoint - { - Route = "candidate.fingerprint.js", - AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), - ResponseHeaders = - [ - new () { Name = "Content-Type", Value = "text/javascript" } - ], - EndpointProperties = [], - Selectors = [], - }, - new StaticWebAssetEndpoint - { - Route = "candidate.js.gz", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [] - } - ]); - } - - [Fact] - public void AppliesContentNegotiationRules_ProcessesNewCompressedFormatsWhenAvailable() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ApplyCompressionNegotiation - { - BuildEngine = buildEngine.Object, - CandidateAssets = - [ - CreateCandidate( - Path.Combine("wwwroot", "candidate.js"), - "MyPackage", - "Discovered", - "candidate.js", - "All", - "All", - "original-fingerprint", - "original", - fileLength: 20 - ), - CreateCandidate( - Path.Combine("compressed", "candidate.js.gz"), - "MyPackage", - "Discovered", - "candidate.js", - "All", - "All", - "compressed-gzip", - "compressed", - Path.Combine("wwwroot", "candidate.js"), - "Content-Encoding", - "gzip", - fileLength: 9 - ), - CreateCandidate( - Path.Combine("compressed", "candidate.js.br"), - "MyPackage", - "Discovered", - "candidate.js", - "All", - "All", - "compressed-brotli", - "compressed", - Path.Combine("wwwroot", "candidate.js"), - "Content-Encoding", - "br", - fileLength: 9 - ) - ], - CandidateEndpoints = new StaticWebAssetEndpoint[] - { - new() - { - Route = "candidate.js", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new (){ Name = "Content-Type", Value = "text/javascript" }, - new (){ Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], - }, - new() - { - Route = "candidate.js", - AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), - ResponseHeaders = - [ - new (){ Name = "Content-Type", Value = "text/javascript" } - ], - EndpointProperties = [], - Selectors = [], - }, - new() - { - Route = "candidate.fingerprint.js", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new (){ Name = "Content-Encoding", Value = "gzip" }, - new (){ Name = "Content-Type", Value = "text/javascript" }, - new (){ Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [ new () { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], - }, - new() - { - Route = "candidate.fingerprint.js", - AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), - ResponseHeaders = - [ - new () { Name = "Content-Type", Value = "text/javascript" } - ], - EndpointProperties = [], - Selectors = [], - }, - new() - { - Route = "candidate.js.gz", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [] - }, - new() - { - Route = "candidate.js.br", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.br")), - ResponseHeaders = - [ - new () { Name = "Content-Type", Value = "text/javascript" }, - ], - EndpointProperties = [], - Selectors = [] - } - }.Select(e => e.ToTaskItem()).ToArray(), - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.UpdatedEndpoints); - endpoints.Should().BeEquivalentTo([ - new StaticWebAssetEndpoint - { - Route = "candidate.js", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], - }, - new StaticWebAssetEndpoint - { - Route = "candidate.js", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.br")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "br" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "br", Quality = "0.100000000000" } ], - }, - new StaticWebAssetEndpoint - { - Route = "candidate.js", - AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), - ResponseHeaders = - [ - new () { Name = "Content-Type", Value = "text/javascript" } - ], - EndpointProperties = [], - Selectors = [], - }, - new StaticWebAssetEndpoint - { - Route = "candidate.fingerprint.js", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip", Quality = "0.100000000000" } ], - }, - new StaticWebAssetEndpoint - { - Route = "candidate.fingerprint.js", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.br")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "br" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [ new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "br", Quality = "0.100000000000" } ], - }, - new StaticWebAssetEndpoint - { - Route = "candidate.fingerprint.js", - AssetFile = Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), - ResponseHeaders = - [ - new () { Name = "Content-Type", Value = "text/javascript" } - ], - EndpointProperties = [], - Selectors = [], - }, - new StaticWebAssetEndpoint - { - Route = "candidate.js.gz", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.gz")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "gzip" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [] - }, - new StaticWebAssetEndpoint - { - Route = "candidate.js.br", - AssetFile = Path.GetFullPath(Path.Combine("compressed", "candidate.js.br")), - ResponseHeaders = - [ - new () { Name = "Content-Encoding", Value = "br" }, - new () { Name = "Content-Type", Value = "text/javascript" }, - new () { Name = "Vary", Value = "Content-Encoding" } - ], - EndpointProperties = [], - Selectors = [] - } - ]); - } - - private static StaticWebAssetEndpointSelector[] CreateContentEcondingSelector(string name, string value) - { - return - [ - new StaticWebAssetEndpointSelector - { - Name = name, - Value = value, - Quality = "0.100000000000" - } - ]; - } - - private static StaticWebAssetEndpointResponseHeader[] CreateHeaders(string contentType, params (string name, string value)[] AdditionalHeaders) - { - return - [ - new StaticWebAssetEndpointResponseHeader { - Name = "Content-Type", - Value = contentType - }, - ..(AdditionalHeaders ?? []).Select(h => new StaticWebAssetEndpointResponseHeader { Name = h.name, Value = h.value }) - ]; - } - - private static ITaskItem CreateCandidate( - string itemSpec, - string sourceId, - string sourceType, - string relativePath, - string assetKind, - string assetMode, - string fingerprint = "", - string integrity = "", - string relatedAsset = "", - string assetTraitName = "", - string assetTraitValue = "", - long fileLength = 9, - DateTimeOffset? lastModified = null) - { - lastModified ??= new DateTimeOffset(2023, 10, 1, 0, 0, 0, TimeSpan.Zero); - var result = new StaticWebAsset() - { - Identity = Path.GetFullPath(itemSpec), - SourceId = sourceId, - SourceType = sourceType, - ContentRoot = Directory.GetCurrentDirectory(), - BasePath = "base", - RelativePath = relativePath, - AssetKind = assetKind, - AssetMode = assetMode, - AssetRole = "Primary", - RelatedAsset = relatedAsset, - AssetTraitName = assetTraitName, - AssetTraitValue = assetTraitValue, - CopyToOutputDirectory = "", - CopyToPublishDirectory = "", - OriginalItemSpec = itemSpec, - // Add these to avoid accessing the disk to compute them - Integrity = integrity, - Fingerprint = "fingerprint", - FileLength = fileLength, - LastWriteTime = lastModified.Value, - }; - - result.ApplyDefaults(); - result.Normalize(); - - return result.ToTaskItem(); - } - - private static ITaskItem CreateCandidateEndpoint( - string route, - string assetFile, - StaticWebAssetEndpointResponseHeader[] responseHeaders = null, - StaticWebAssetEndpointSelector[] responseSelector = null, - StaticWebAssetEndpointProperty[] properties = null) - { - return new StaticWebAssetEndpoint - { - Route = route, - AssetFile = Path.GetFullPath(assetFile), - ResponseHeaders = responseHeaders ?? [], - EndpointProperties = properties ?? [], - Selectors = responseSelector ?? [] - }.ToTaskItem(); - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ApplyCssScopesTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ApplyCssScopesTest.cs deleted file mode 100644 index fbbbc61f9777..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ApplyCssScopesTest.cs +++ /dev/null @@ -1,379 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - public class ApplyAllCssScopesTest - { - [Fact] - public void ApplyAllCssScopes_AppliesScopesToRazorComponentFiles() - { - // Arrange - var taskInstance = new ApplyCssScopes() - { - RazorComponents = new[] - { - new TaskItem("TestFiles/Pages/Counter.razor"), - new TaskItem("TestFiles/Pages/Index.razor"), - }, - RazorGenerate = Array.Empty(), - ScopedCss = new[] - { - new TaskItem("TestFiles/Pages/Index.razor.css", new Dictionary { ["CssScope"] = "index-scope" }), - new TaskItem("TestFiles/Pages/Counter.razor.css", new Dictionary { ["CssScope"] = "counter-scope" }), - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.RazorComponentsWithScopes.Should().HaveCount(2); - taskInstance.RazorComponentsWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/Index.razor" && rcws.GetMetadata("CssScope") == "index-scope"); - taskInstance.RazorComponentsWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/Counter.razor" && rcws.GetMetadata("CssScope") == "counter-scope"); - } - - [Fact] - public void ApplyAllCssScopes_AppliesScopesToRazorViewFiles() - { - // Arrange - var taskInstance = new ApplyCssScopes() - { - RazorGenerate = new[] - { - new TaskItem("TestFiles/Pages/Counter.cshtml"), - new TaskItem("TestFiles/Pages/Index.cshtml"), - }, - RazorComponents = Array.Empty(), - ScopedCss = new[] - { - new TaskItem("TestFiles/Pages/Index.cshtml.css", new Dictionary { ["CssScope"] = "index-scope" }), - new TaskItem("TestFiles/Pages/Counter.cshtml.css", new Dictionary { ["CssScope"] = "counter-scope" }), - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.RazorGenerateWithScopes.Should().HaveCount(2); - taskInstance.RazorGenerateWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/Index.cshtml" && rcws.GetMetadata("CssScope") == "index-scope"); - taskInstance.RazorGenerateWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/Counter.cshtml" && rcws.GetMetadata("CssScope") == "counter-scope"); - } - - [Fact] - public void DoesNotApplyCssScopes_ToRazorComponentsWithoutAssociatedFiles() - { - // Arrange - var taskInstance = new ApplyCssScopes() - { - RazorComponents = new[] - { - new TaskItem("TestFiles/Pages/Counter.razor"), - new TaskItem("TestFiles/Pages/Index.razor"), - new TaskItem("TestFiles/Pages/FetchData.razor"), - }, - RazorGenerate = Array.Empty(), - ScopedCss = new[] - { - new TaskItem("TestFiles/Pages/Index.razor.css", new Dictionary { ["CssScope"] = "index-scope" }), - new TaskItem("TestFiles/Pages/Counter.razor.css", new Dictionary { ["CssScope"] = "counter-scope" }) - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - Assert.True(result); - result.Should().BeTrue(); - taskInstance.RazorComponentsWithScopes.Should().NotContain(rcws => rcws.ItemSpec == "TestFiles/Pages/Fetchdata.razor"); - } - - [Fact] - public void DoesNotApplyCssScopes_ToRazorViewsWithoutAssociatedFiles() - { - // Arrange - var taskInstance = new ApplyCssScopes() - { - RazorGenerate = new[] - { - new TaskItem("TestFiles/Pages/Counter.cshtml"), - new TaskItem("TestFiles/Pages/Index.cshtml"), - new TaskItem("TestFiles/Pages/FetchData.cshtml"), - }, - RazorComponents = Array.Empty(), - ScopedCss = new[] - { - new TaskItem("TestFiles/Pages/Index.cshtml.css", new Dictionary { ["CssScope"] = "index-scope" }), - new TaskItem("TestFiles/Pages/Counter.cshtml.css", new Dictionary { ["CssScope"] = "counter-scope" }) - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - Assert.True(result); - result.Should().BeTrue(); - taskInstance.RazorGenerateWithScopes.Should().NotContain(rcws => rcws.ItemSpec == "TestFiles/Pages/Fetchdata.razor"); - } - - [Fact] - public void ApplyAllCssScopes_FailsWhenTheScopedCss_DoesNotMatchTheRazorComponent() - { - // Arrange - var taskInstance = new ApplyCssScopes - { - RazorComponents = new[] - { - new TaskItem("TestFiles/Pages/Counter.razor"), - new TaskItem("TestFiles/Pages/Index.razor"), - }, - RazorGenerate = Array.Empty(), - ScopedCss = new[] - { - new TaskItem("TestFiles/Pages/Index.razor.css", new Dictionary { ["CssScope"] = "index-scope" }), - new TaskItem("TestFiles/Pages/Counter.razor.css", new Dictionary { ["CssScope"] = "counter-scope" }), - new TaskItem("TestFiles/Pages/Profile.razor.css", new Dictionary { ["CssScope"] = "profile-scope" }), - }, - BuildEngine = Mock.Of() - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeFalse(); - } - - [Fact] - public void ApplyAllCssScopes_FailsWhenTheScopedCss_DoesNotMatchTheRazorView() - { - // Arrange - var taskInstance = new ApplyCssScopes - { - RazorGenerate = new[] - { - new TaskItem("TestFiles/Pages/Counter.cshtml"), - new TaskItem("TestFiles/Pages/Index.cshtml"), - }, - RazorComponents = Array.Empty(), - ScopedCss = new[] - { - new TaskItem("TestFiles/Pages/Index.cshtml.css", new Dictionary { ["CssScope"] = "index-scope" }), - new TaskItem("TestFiles/Pages/Counter.cshtml.css", new Dictionary { ["CssScope"] = "counter-scope" }), - new TaskItem("TestFiles/Pages/Profile.cshtml.css", new Dictionary { ["CssScope"] = "profile-scope" }), - }, - BuildEngine = Mock.Of() - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeFalse(); - } - - [Fact] - public void ScopedCssCanDefineAssociatedRazorComponentFile() - { - // Arrange - var taskInstance = new ApplyCssScopes() - { - RazorComponents = new[] - { - new TaskItem("TestFiles/Pages/FetchData.razor") - }, - RazorGenerate = Array.Empty(), - ScopedCss = new[] - { - new TaskItem("TestFiles/Pages/Profile.razor.css", new Dictionary - { - ["CssScope"] = "fetchdata-scope", - ["RazorComponent"] = "TestFiles/Pages/FetchData.razor" - }) - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.RazorComponentsWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/FetchData.razor" && rcws.GetMetadata("CssScope") == "fetchdata-scope"); - } - - [Fact] - public void ScopedCssCanDefineAssociatedRazorGenerateFile() - { - // Arrange - var taskInstance = new ApplyCssScopes() - { - RazorGenerate = new[] - { - new TaskItem("TestFiles/Pages/FetchData.cshtml") - }, - RazorComponents = Array.Empty(), - ScopedCss = new[] - { - new TaskItem("TestFiles/Pages/Profile.cshtml.css", new Dictionary - { - ["CssScope"] = "fetchdata-scope", - ["View"] = "TestFiles/Pages/FetchData.cshtml" - }) - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.RazorGenerateWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/FetchData.cshtml" && rcws.GetMetadata("CssScope") == "fetchdata-scope"); - } - - [Fact] - public void ApplyAllCssScopes_FailsWhenMultipleScopedCssFiles_MatchTheSameRazorComponent() - { - // Arrange - var taskInstance = new ApplyCssScopes - { - RazorComponents = new[] - { - new TaskItem("TestFiles/Pages/Counter.razor"), - new TaskItem("TestFiles/Pages/Index.razor"), - }, - RazorGenerate = Array.Empty(), - ScopedCss = new[] - { - new TaskItem("TestFiles/Pages/Index.razor.css", new Dictionary { ["CssScope"] = "index-scope" }), - new TaskItem("TestFiles/Pages/Counter.razor.css", new Dictionary { ["CssScope"] = "counter-scope" }), - new TaskItem("TestFiles/Pages/Profile.razor.css", new Dictionary - { - ["CssScope"] = "conflict-scope", - ["RazorComponent"] = "TestFiles/Pages/Index.razor" - }), - }, - BuildEngine = Mock.Of() - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeFalse(); - } - - [Fact] - public void ApplyAllCssScopes_FailsWhenMultipleScopedCssFiles_MatchTheSameRazorView() - { - // Arrange - var taskInstance = new ApplyCssScopes - { - RazorGenerate = new[] - { - new TaskItem("TestFiles/Pages/Counter.cshtml"), - new TaskItem("TestFiles/Pages/Index.cshtml"), - }, - RazorComponents = Array.Empty(), - ScopedCss = new[] - { - new TaskItem("TestFiles/Pages/Index.cshtml.css", new Dictionary { ["CssScope"] = "index-scope" }), - new TaskItem("TestFiles/Pages/Counter.cshtml.css", new Dictionary { ["CssScope"] = "counter-scope" }), - new TaskItem("TestFiles/Pages/Profile.cshtml.css", new Dictionary - { - ["CssScope"] = "conflict-scope", - ["View"] = "TestFiles/Pages/Index.cshtml" - }), - }, - BuildEngine = Mock.Of() - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeFalse(); - } - - [Fact] - public void ApplyAllCssScopes_AppliesScopesToRazorComponentAndViewFiles() - { - // Arrange - var taskInstance = new ApplyCssScopes() - { - RazorComponents = new[] - { - new TaskItem("TestFiles/Pages/Counter.razor"), - new TaskItem("TestFiles/Pages/Index.razor"), - }, - RazorGenerate = new[] - { - new TaskItem("TestFiles/Pages/Home.cshtml"), - new TaskItem("TestFiles/Pages/_Host.cshtml"), - }, - ScopedCss = new[] - { - new TaskItem("TestFiles/Pages/Home.cshtml.css", new Dictionary { ["CssScope"] = "home-scope" }), - new TaskItem("TestFiles/Pages/_Host.cshtml.css", new Dictionary { ["CssScope"] = "_host-scope" }), - new TaskItem("TestFiles/Pages/Index.razor.css", new Dictionary { ["CssScope"] = "index-scope" }), - new TaskItem("TestFiles/Pages/Counter.razor.css", new Dictionary { ["CssScope"] = "counter-scope" }), - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.RazorComponentsWithScopes.Should().HaveCount(2); - taskInstance.RazorComponentsWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/Index.razor" && rcws.GetMetadata("CssScope") == "index-scope"); - taskInstance.RazorComponentsWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/Counter.razor" && rcws.GetMetadata("CssScope") == "counter-scope"); - - taskInstance.RazorGenerateWithScopes.Should().HaveCount(2); - taskInstance.RazorGenerateWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/Home.cshtml" && rcws.GetMetadata("CssScope") == "home-scope"); - taskInstance.RazorGenerateWithScopes.Should().ContainSingle(rcws => rcws.ItemSpec == "TestFiles/Pages/_Host.cshtml" && rcws.GetMetadata("CssScope") == "_host-scope"); - } - - [Fact] - public void ApplyAllCssScopes_ScopedCssComponentsDontMatchWithScopedCssViewStylesAndViceversa() - { - // Arrange - var taskInstance = new ApplyCssScopes - { - RazorComponents = new[] - { - new TaskItem("TestFiles/Pages/Counter.razor"), - new TaskItem("TestFiles/Pages/Index.razor"), - }, - RazorGenerate = new[] - { - new TaskItem("TestFiles/Pages/Home.cshtml"), - new TaskItem("TestFiles/Pages/_Host.cshtml"), - }, - ScopedCss = new[] - { - new TaskItem("TestFiles/Pages/Home.razor.css", new Dictionary { ["CssScope"] = "home-scope" }), - new TaskItem("TestFiles/Pages/_Host.razor.css", new Dictionary { ["CssScope"] = "_host-scope" }), - new TaskItem("TestFiles/Pages/Index.cshtml.css", new Dictionary { ["CssScope"] = "index-scope" }), - new TaskItem("TestFiles/Pages/Counter.cshtml.css", new Dictionary { ["CssScope"] = "counter-scope" }), - }, - BuildEngine = Mock.Of() - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeFalse(); - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeCssScopesTests.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeCssScopesTests.cs deleted file mode 100644 index 98dd095c3dbb..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeCssScopesTests.cs +++ /dev/null @@ -1,133 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using System.Text.RegularExpressions; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Utilities; - -namespace Microsoft.NET.Sdk.Razor.Test -{ - public class ComputeCssScopesTests - { - [Fact] - public void ComputesScopes_ComputesUniqueScopes_ForCssFiles() - { - // Arrange - var taskInstance = new ComputeCssScope() - { - ScopedCssInput = new[] - { - new TaskItem("TestFiles/Pages/Counter.razor.css"), - new TaskItem("TestFiles/Pages/Index.razor.css"), - new TaskItem("TestFiles/Pages/Profile.razor.css"), - }, - TargetName = "Test" - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().Be(true); - taskInstance.ScopedCss.Select(s => s.GetMetadata("CssScope")).Should().OnlyContain(item => - !string.IsNullOrEmpty(item) && new Regex("b-[a-z0-9]+").IsMatch(item)); - - taskInstance.ScopedCss.Select(s => s.GetMetadata("CssScope")).Should().HaveCount(3).And.OnlyHaveUniqueItems(); - } - - [Fact] - public void ComputesScopes_ScopeVariesByTargetName() - { - // Arrange - var taskInstance = new ComputeCssScope() - { - ScopedCssInput = new[] - { - new TaskItem("TestFiles/Pages/Counter.razor.css"), - new TaskItem("TestFiles/Pages/Index.razor.css"), - new TaskItem("TestFiles/Pages/Profile.razor.css"), - }, - TargetName = "Test" - }; - - // Act - taskInstance.Execute(); - var existing = taskInstance.ScopedCss.Select(s => s.GetMetadata("CssScope")).ToArray(); - - taskInstance.TargetName = "AnotherLibrary"; - var result = taskInstance.Execute(); - - // Assert - taskInstance.ScopedCss.Should().OnlyContain(newScoped => !existing.Contains(newScoped.GetMetadata("ScopedCss"))); - } - - [Fact] - public void ComputesScopes_IsDeterministic() - { - // Arrange - var taskInstance = new ComputeCssScope() - { - ScopedCssInput = new[] - { - new TaskItem("TestFiles/Pages/Counter.razor.css"), - new TaskItem("TestFiles/Pages/Index.razor.css"), - new TaskItem("TestFiles/Pages/Profile.razor.css"), - }, - TargetName = "Test" - }; - - // Act - taskInstance.Execute(); - var existing = taskInstance.ScopedCss.Select(s => s.GetMetadata("CssScope")).OrderBy(id => id).ToArray(); - - var result = taskInstance.Execute(); - - // Assert - var computed = taskInstance.ScopedCss.Select(newScoped => newScoped.GetMetadata("CssScope")).OrderBy(id => id).ToArray(); - computed.Should().Equal(existing); - } - - [Fact] - public void ComputesScopes_VariesByPath() - { - // Arrange - var taskInstance = new ComputeCssScope() - { - ScopedCssInput = new[] - { - new TaskItem("TestFiles/Pages/Index.razor.css"), - new TaskItem("TestFiles/Index.razor.css"), - }, - TargetName = "Test" - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.ScopedCss.Should().HaveCount(2); - taskInstance.ScopedCss[0].GetMetadata("CssScope").Should().NotBe(taskInstance.ScopedCss[1].GetMetadata("CssScope")); - } - - [Fact] - public void ComputesScopes_PreservesUserDefinedScopes() - { - // Arrange - var taskInstance = new ComputeCssScope() - { - ScopedCssInput = new[] - { - new TaskItem("TestFiles/Pages/Index.razor.css", new Dictionary{ ["CssScope"] = "b-predefined" }), }, - TargetName = "Test" - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.ScopedCss.Should().ContainSingle(scopedCss => scopedCss.GetMetadata("CssScope") == "b-predefined"); - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeEndpointsForReferenceStaticWebAssetsTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeEndpointsForReferenceStaticWebAssetsTest.cs deleted file mode 100644 index 80adab933258..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeEndpointsForReferenceStaticWebAssetsTest.cs +++ /dev/null @@ -1,146 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests; - -public class ComputeEndpointsForReferenceStaticWebAssetsTest -{ - [Fact] - public void IncludesEndpointsForAssetsFromCurrentProject() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeEndpointsForReferenceStaticWebAssets - { - BuildEngine = buildEngine.Object, - Assets = [CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All")], - CandidateEndpoints = [CreateCandidateEndpoint("candidate.js", Path.Combine("wwwroot", "candidate.js"))] - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.Endpoints.Should().ContainSingle(); - task.Endpoints[0].ItemSpec.Should().Be("base/candidate.js"); - task.Endpoints[0].GetMetadata("AssetFile").Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - } - - [Fact] - public void UpdatesLabelAsNecessary_ForChosenEndpoints() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeEndpointsForReferenceStaticWebAssets - { - BuildEngine = buildEngine.Object, - Assets = [CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All")], - CandidateEndpoints = [CreateCandidateEndpoint("candidate.js", Path.Combine("wwwroot", "candidate.js"), addLabel: true)] - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.Endpoints.Should().ContainSingle(); - task.Endpoints[0].ItemSpec.Should().Be("base/candidate.js"); - task.Endpoints[0].GetMetadata("AssetFile").Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - var properties = StaticWebAssetEndpointProperty.FromMetadataValue(task.Endpoints[0].GetMetadata("EndpointProperties")); - properties.Should().ContainSingle(); - properties[0].Name.Should().Be("label"); - properties[0].Value.Should().Be("base/label-value"); - } - - [Fact] - public void FiltersOutEndpointsForAssetsNotFound() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeEndpointsForReferenceStaticWebAssets - { - BuildEngine = buildEngine.Object, - Assets = [CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All")], - CandidateEndpoints = [ - CreateCandidateEndpoint("candidate.js", Path.Combine("wwwroot", "candidate.js")), - CreateCandidateEndpoint("package.js", Path.Combine("..", "_content", "package-id", "package.js")) - ] - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.Endpoints.Where(e => e != null).Should().ContainSingle(); - task.Endpoints[0].ItemSpec.Should().Be("base/candidate.js"); - task.Endpoints[0].GetMetadata("AssetFile").Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - } - - private static ITaskItem CreateCandidate( - string itemSpec, - string sourceId, - string sourceType, - string relativePath, - string assetKind, - string assetMode) - { - var result = new StaticWebAsset() - { - Identity = Path.GetFullPath(itemSpec), - SourceId = sourceId, - SourceType = sourceType, - ContentRoot = Directory.GetCurrentDirectory(), - BasePath = "base", - RelativePath = relativePath, - AssetKind = assetKind, - AssetMode = assetMode, - AssetRole = "Primary", - RelatedAsset = "", - AssetTraitName = "", - AssetTraitValue = "", - CopyToOutputDirectory = "", - CopyToPublishDirectory = "", - OriginalItemSpec = itemSpec, - // Add these to avoid accessing the disk to compute them - Integrity = "integrity", - Fingerprint = "fingerprint", - LastWriteTime = DateTime.UtcNow, - FileLength = 10, - }; - - result.ApplyDefaults(); - result.Normalize(); - - return result.ToTaskItem(); - } - - private static ITaskItem CreateCandidateEndpoint(string route, string assetFile, bool addLabel = false) - { - return new StaticWebAssetEndpoint - { - Route = route, - AssetFile = Path.GetFullPath(assetFile), - EndpointProperties = addLabel - ? [new StaticWebAssetEndpointProperty { Name = "label", Value = "label-value" }] - : [], - }.ToTaskItem(); - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeReferenceStaticWebAssetItemsTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeReferenceStaticWebAssetItemsTest.cs deleted file mode 100644 index 3520d8438c63..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeReferenceStaticWebAssetItemsTest.cs +++ /dev/null @@ -1,396 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - public class ComputeReferenceStaticWebAssetItemsTest - { - [Fact] - public void IncludesAssetsFromCurrentProjectAsReferencedAssets() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeReferenceStaticWebAssetItems - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All") }, - Patterns = new ITaskItem[] { }, - AssetKind = "Build", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(1); - } - - [Fact] - public void IncludesPatternsFromCurrentProject() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeReferenceStaticWebAssetItems - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All") }, - Patterns = new[] { CreatePatternCandidate("MyPackage\\wwwroot", "base", Directory.GetCurrentDirectory(), "wwwroot\\**", "MyPackage") }, - AssetKind = "Build", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.DiscoveryPatterns.Should().HaveCount(1); - } - - [Fact] - public void FiltersPatternsFromReferencedProjects() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeReferenceStaticWebAssetItems - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All") }, - Patterns = new[] { CreatePatternCandidate("Other\\wwwroot", "base", Directory.GetCurrentDirectory(), "wwwroot\\**", "Other") }, - AssetKind = "Build", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.DiscoveryPatterns.Should().HaveCount(0); - } - - [Fact] - public void PrefersSpecificKindAssetsOverAllKindAssets() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeReferenceStaticWebAssetItems - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] - { - CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All"), - CreateCandidate(Path.Combine("wwwroot", "candidate.other.js"), "MyPackage", "Discovered", "candidate.js", "Build", "All") - }, - Patterns = new ITaskItem[] { }, - AssetKind = "Build", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(1); - task.StaticWebAssets[0].ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.other.js"))); - } - - [Fact] - public void AllAssetGetsIgnoredWhenBuildAndPublishAssetsAreDefined() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeReferenceStaticWebAssetItems - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] - { - CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All"), - CreateCandidate(Path.Combine("wwwroot", "candidate.other.js"), "MyPackage", "Discovered", "candidate.js", "Build", "All"), - CreateCandidate(Path.Combine("wwwroot", "candidate.publish.js"), "MyPackage", "Discovered", "candidate.js", "Publish", "All") - }, - Patterns = new ITaskItem[] { }, - AssetKind = "Build", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(1); - task.StaticWebAssets[0].ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.other.js"))); - } - - [Theory] - [InlineData("Build", "Publish")] - [InlineData("Publish", "Build")] - public void FiltersAssetsForOppositeKind(string assetKind, string manifestKind) - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeReferenceStaticWebAssetItems - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", assetKind, "All") }, - Patterns = new ITaskItem[] { }, - AssetKind = manifestKind, - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(0); - } - - [Fact] - public void FiltersCurrentProjectOnlyAssetsInDefaultMode() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeReferenceStaticWebAssetItems - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "CurrentProject") }, - Patterns = new ITaskItem[] { }, - AssetKind = "Default", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(0); - } - - [Fact] - public void IncludesReferenceAssetsInDefaultMode() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeReferenceStaticWebAssetItems - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "Reference") }, - Patterns = new ITaskItem[] { }, - AssetKind = "Default", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(1); - } - - [Fact] - public void IncludesCurrentProjectAssetsInRootMode() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeReferenceStaticWebAssetItems - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "CurrentProject") }, - Patterns = new ITaskItem[] { }, - AssetKind = "Default", - ProjectMode = "Root" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(1); - } - - [Fact] - public void FiltersReferenceOnlyAssetsInRootMode() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeReferenceStaticWebAssetItems - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "Reference") }, - Patterns = new ITaskItem[] { }, - AssetKind = "Default", - ProjectMode = "Root" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(0); - } - - [Fact] - public void FiltersAssetsFromOtherProjects() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeReferenceStaticWebAssetItems - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "Other", "Project", "candidate.js", "All", "All") }, - Patterns = new ITaskItem[] { }, - AssetKind = "Build", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(0); - } - - [Fact] - public void FiltersAssetsFromPackages() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeReferenceStaticWebAssetItems - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "Other", "Package", "candidate.js", "All", "All") }, - Patterns = new ITaskItem[] { }, - AssetKind = "Build", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(0); - } - - private static ITaskItem CreateCandidate( - string itemSpec, - string sourceId, - string sourceType, - string relativePath, - string assetKind, - string assetMode) - { - var result = new StaticWebAsset() - { - Identity = Path.GetFullPath(itemSpec), - SourceId = sourceId, - SourceType = sourceType, - ContentRoot = Directory.GetCurrentDirectory(), - BasePath = "base", - RelativePath = relativePath, - AssetKind = assetKind, - AssetMode = assetMode, - AssetRole = "Primary", - RelatedAsset = "", - AssetTraitName = "", - AssetTraitValue = "", - CopyToOutputDirectory = "", - CopyToPublishDirectory = "", - OriginalItemSpec = itemSpec, - // Add these to avoid accessing the disk to compute them - Integrity = "integrity", - Fingerprint = "fingerprint", - FileLength = 10, - LastWriteTime = DateTime.UtcNow, - }; - - result.ApplyDefaults(); - result.Normalize(); - - return result.ToTaskItem(); - } - - private static ITaskItem CreatePatternCandidate( - string name, - string basePath, - string contentRoot, - string pattern, - string source) - { - var result = new StaticWebAssetsDiscoveryPattern() - { - Name = name, - BasePath = basePath, - ContentRoot = contentRoot, - Pattern = pattern, - Source = source - }; - - return result.ToTaskItem(); - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeStaticWebAssetsForCurrentProjectTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeStaticWebAssetsForCurrentProjectTest.cs deleted file mode 100644 index 7e9883ec140f..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ComputeStaticWebAssetsForCurrentProjectTest.cs +++ /dev/null @@ -1,316 +0,0 @@ -// 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 System.Text.Json; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - public class ComputeStaticWebAssetsForCurrentProjectTest - { - [Fact] - public void IncludesAssetsFromCurrentProject() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeStaticWebAssetsForCurrentProject - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "MyPackage", "Discovered", "candidate.js", "All", "All") }, - AssetKind = "Build", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(1); - } - - [Fact] - public void PrefersSpecificKindAssetsOverAllKindAssets() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeStaticWebAssetsForCurrentProject - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] - { - CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All"), - CreateCandidate(Path.Combine("wwwroot", "candidate.other.js"), "MyPackage", "Discovered", "candidate.js", "Build", "All") - }, - AssetKind = "Build", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(1); - task.StaticWebAssets[0].ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.other.js"))); - } - - [Fact] - public void AllAssetGetsIgnoredWhenBuildAndPublishAssetsAreDefined() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeStaticWebAssetsForCurrentProject - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] - { - CreateCandidate(Path.Combine("wwwroot", "candidate.js"), "MyPackage", "Discovered", "candidate.js", "All", "All"), - CreateCandidate(Path.Combine("wwwroot", "candidate.other.js"), "MyPackage", "Discovered", "candidate.js", "Build", "All"), - CreateCandidate(Path.Combine("wwwroot", "candidate.publish.js"), "MyPackage", "Discovered", "candidate.js", "Publish", "All") - }, - AssetKind = "Build", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(1); - task.StaticWebAssets[0].ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.other.js"))); - } - - [Theory] - [InlineData("Build", "Publish")] - [InlineData("Publish", "Build")] - public void FiltersAssetsForOppositeKind(string assetKind, string manifestKind) - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeStaticWebAssetsForCurrentProject - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "MyPackage", "Discovered", "candidate.js", assetKind, "All") }, - AssetKind = manifestKind, - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(0); - } - - [Fact] - public void IncludesCurrentProjectOnlyAssetsInDefaultMode() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeStaticWebAssetsForCurrentProject - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "MyPackage", "Discovered", "candidate.js", "All", "CurrentProject") }, - AssetKind = "Default", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(1); - } - - [Fact] - public void FiltersReferenceAssetsInDefaultMode() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeStaticWebAssetsForCurrentProject - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "MyPackage", "Discovered", "candidate.js", "All", "Reference") }, - AssetKind = "Default", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(0); - } - - [Fact] - public void IncludesCurrentProjectAssetsInRootMode() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeStaticWebAssetsForCurrentProject - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "MyPackage", "Discovered", "candidate.js", "All", "CurrentProject") }, - AssetKind = "Default", - ProjectMode = "Root" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(1); - } - - [Fact] - public void FiltersReferenceOnlyAssetsInRootMode() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeStaticWebAssetsForCurrentProject - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "MyPackage", "Discovered", "candidate.js", "All", "Reference") }, - AssetKind = "Default", - ProjectMode = "Root" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(0); - } - - [Fact] - public void IncludesAssetsFromOtherProjects() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeStaticWebAssetsForCurrentProject - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "Other", "Project", "candidate.js", "All", "All") }, - AssetKind = "Build", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(1); - } - - [Fact] - public void IncludesAssetsFromPackages() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ComputeStaticWebAssetsForCurrentProject - { - BuildEngine = buildEngine.Object, - Source = "MyPackage", - Assets = new[] { CreateCandidate("wwwroot\\candidate.js", "Other", "Package", "candidate.js", "All", "All") }, - AssetKind = "Build", - ProjectMode = "Default" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.StaticWebAssets.Should().HaveCount(1); - } - - private static ITaskItem CreateCandidate( - string itemSpec, - string sourceId, - string sourceType, - string relativePath, - string assetKind, - string assetMode) - { - var result = new StaticWebAsset() - { - Identity = Path.GetFullPath(itemSpec), - SourceId = sourceId, - SourceType = sourceType, - ContentRoot = Directory.GetCurrentDirectory(), - BasePath = "base", - RelativePath = relativePath, - AssetKind = assetKind, - AssetMode = assetMode, - AssetRole = "Primary", - RelatedAsset = "", - AssetTraitName = "", - AssetTraitValue = "", - CopyToOutputDirectory = "", - CopyToPublishDirectory = "", - OriginalItemSpec = itemSpec, - // Add these to avoid accessing the disk to compute them - Integrity = "integrity", - Fingerprint = "fingerprint", - LastWriteTime = DateTime.UtcNow, - FileLength = 10, - }; - - result.ApplyDefaults(); - result.Normalize(); - - return result.ToTaskItem(); - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ConcatenateFilesTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ConcatenateFilesTest.cs deleted file mode 100644 index 36709cd1f5d4..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ConcatenateFilesTest.cs +++ /dev/null @@ -1,353 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; - -namespace Microsoft.NET.Sdk.Razor.Test -{ - public class ConcatenateCssFilesTest - { - private static readonly string BundleContent = - @"/* _content/Test/TestFiles/Generated/Counter.razor.rz.scp.css */ -.counter { - font-size: 2rem; -} -/* _content/Test/TestFiles/Generated/Index.razor.rz.scp.css */ -.index { - font-weight: bold; -} -"; - - private static readonly string BundleWithImportsContent = """ - @import '_content/Test/TestFiles/Generated/lib.bundle.scp.css'; - @import '_content/Test/TestFiles/Generated/package.bundle.scp.css'; - - /* _content/Test/TestFiles/Generated/Counter.razor.rz.scp.css */ - .counter { - font-size: 2rem; - } - /* _content/Test/TestFiles/Generated/Index.razor.rz.scp.css */ - .index { - font-weight: bold; - } - """; - - private static readonly string UpdatedBundleContent = - @"/* _content/Test/TestFiles/Generated/Counter.razor.rz.scp.css */ -.counter { - font-size: 2rem; -} -/* _content/Test/TestFiles/Generated/FetchData.razor.rz.scp.css */ -.fetchData { - font-family: Helvetica; -} -/* _content/Test/TestFiles/Generated/Index.razor.rz.scp.css */ -.index { - font-weight: bold; -} -"; - - [Fact] - public void BundlesScopedCssFiles_ProducesEmpyBundleIfNoFilesAvailable() - { - // Arrange - var expectedFile = Path.Combine(Directory.GetCurrentDirectory(), $"{Guid.NewGuid():N}.css"); - var taskInstance = new ConcatenateCssFiles() - { - ScopedCssFiles = Array.Empty(), - ProjectBundles = Array.Empty(), - OutputFile = expectedFile - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - File.Exists(expectedFile).Should().BeTrue(); - File.ReadAllText(expectedFile).Should().BeEmpty(); - } - - [Fact] - public void BundlesScopedCssFiles_ProducesBundle() - { - // Arrange - var expectedFile = Path.Combine(Directory.GetCurrentDirectory(), $"{Guid.NewGuid():N}.css"); - var taskInstance = new ConcatenateCssFiles() - { - ScopedCssFiles = new[] - { - CreateStaticAsset( - "TestFiles/Generated/Counter.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/Counter.razor.rz.scp.css"), - CreateStaticAsset( - "TestFiles/Generated/Index.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/Index.razor.rz.scp.css"), - }, - ProjectBundles = Array.Empty(), - OutputFile = expectedFile - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - File.Exists(expectedFile).Should().BeTrue(); - - var actualContents = File.ReadAllText(expectedFile); - actualContents.Should().Contain(BundleContent); - } - - private static TaskItem CreateEndpoint(string route) => - new TaskItem(route); - - private static TaskItem CreateStaticAsset(string identity, string basePath, string relativePath) => - new TaskItem( - identity, - new Dictionary - { - ["BasePath"] = basePath, - ["RelativePath"] = relativePath, - ["SourceType"] = "Discovered", - ["SourceId"] = "MyLibrary", - ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "staticwebassets"), - ["AssetKind"] = "All", - ["AssetMode"] = "All", - ["AssetRole"] = "Primary", - ["RelatedAsset"] = "", - ["AssetTraitName"] = "", - ["AssetTraitValue"] = "", - ["OriginalItemSpec"] = identity, - ["Fingerprint"] = $"{Path.GetFileNameWithoutExtension(identity)}-fingerprint", - ["Integrity"] = $"{Path.GetFileNameWithoutExtension(identity)}-integrity", - ["CopyToOutputDirectory"] = "Never", - ["CopyToPublishDirectory"] = "PreserveNewest" - }); - - [Fact] - public void BundlesScopedCssFiles_IncludesOtherBundles() - { - // Arrange - var expectedFile = Path.Combine(Directory.GetCurrentDirectory(), $"{Guid.NewGuid():N}.css"); - var taskInstance = new ConcatenateCssFiles() - { - ScopedCssFiles = new[] - { - CreateStaticAsset( - "TestFiles/Generated/Counter.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/Counter.razor.rz.scp.css"), - CreateStaticAsset( - "TestFiles/Generated/Index.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/Index.razor.rz.scp.css"), - }, - ProjectBundles = new[] - { - CreateEndpoint("_content/Test/TestFiles/Generated/lib.bundle.scp.css"), - CreateEndpoint("_content/Test/TestFiles/Generated/package.bundle.scp.css"), - }, - ScopedCssBundleBasePath = "/", - OutputFile = expectedFile - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - File.Exists(expectedFile).Should().BeTrue(); - - var actualContents = File.ReadAllText(expectedFile); - actualContents.Should().Contain(BundleWithImportsContent); - } - - [Theory] - [InlineData("", "", "TestFiles/Generated/lib.bundle.scp.css")] - [InlineData("/", "/", "TestFiles/Generated/lib.bundle.scp.css")] - [InlineData("app", "_content", "../_content/TestFiles/Generated/lib.bundle.scp.css")] - [InlineData("app", "/_content", "../_content/TestFiles/Generated/lib.bundle.scp.css")] - [InlineData("app", "/_content/", "../_content/TestFiles/Generated/lib.bundle.scp.css")] - [InlineData("/app", "_content", "../_content/TestFiles/Generated/lib.bundle.scp.css")] - [InlineData("/app", "/_content", "../_content/TestFiles/Generated/lib.bundle.scp.css")] - [InlineData("/app", "/_content/", "../_content/TestFiles/Generated/lib.bundle.scp.css")] - [InlineData("app/", "_content", "../_content/TestFiles/Generated/lib.bundle.scp.css")] - [InlineData("app/", "/_content", "../_content/TestFiles/Generated/lib.bundle.scp.css")] - [InlineData("app/", "/_content/", "../_content/TestFiles/Generated/lib.bundle.scp.css")] - [InlineData("/company/app/", "_content", "../../_content/TestFiles/Generated/lib.bundle.scp.css")] - [InlineData("/company/app/", "/_content", "../../_content/TestFiles/Generated/lib.bundle.scp.css")] - [InlineData("/company/app/", "/_content/", "../../_content/TestFiles/Generated/lib.bundle.scp.css")] - public void BundlesScopedCssFiles_HandlesBasePathCombinationsCorrectly(string finalBasePath, string libraryBasePath, string expectedImport) - { - // Arrange - var expectedContent = BundleWithImportsContent - .Replace("_content/Test/TestFiles/Generated/lib.bundle.scp.css", expectedImport) - .Replace("@import '_content/Test/TestFiles/Generated/package.bundle.scp.css';", "") - .Replace("\r\n", "\n") - .Replace("\n\n", "\n"); - - var expectedFile = Path.Combine(Directory.GetCurrentDirectory(), $"{Guid.NewGuid():N}.css"); - var taskInstance = new ConcatenateCssFiles() - { - ScopedCssFiles = new[] - { - CreateStaticAsset( - "TestFiles/Generated/Counter.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/Counter.razor.rz.scp.css"), - CreateStaticAsset( - "TestFiles/Generated/Index.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/Index.razor.rz.scp.css"), - }, - ProjectBundles = new[] - { - CreateEndpoint(StaticWebAsset.CombineNormalizedPaths("",libraryBasePath,"TestFiles/Generated/lib.bundle.scp.css", '/')) - }, - ScopedCssBundleBasePath = finalBasePath, - OutputFile = expectedFile - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - File.Exists(expectedFile).Should().BeTrue(); - - var actualContents = File.ReadAllText(expectedFile); - actualContents.Should().BeVisuallyEquivalentTo(expectedContent); - } - - [Fact] - public void BundlesScopedCssFiles_BundlesFilesInOrder() - { - // Arrange - var expectedFile = Path.Combine(Directory.GetCurrentDirectory(), $"{Guid.NewGuid():N}.css"); - var taskInstance = new ConcatenateCssFiles() - { - ScopedCssFiles = new[] - { - CreateStaticAsset( - "TestFiles/Generated/Index.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/Index.razor.rz.scp.css"), - CreateStaticAsset( - "TestFiles/Generated/Counter.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/Counter.razor.rz.scp.css") - }, - ProjectBundles = Array.Empty(), - OutputFile = expectedFile - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - File.Exists(expectedFile).Should().BeTrue(); - - var actualContents = File.ReadAllText(expectedFile); - actualContents.Should().Contain(BundleContent); - } - - [Fact] - public void BundlesScopedCssFiles_DoesNotOverrideBundleForSameContents() - { - // Arrange - var expectedFile = Path.Combine(Directory.GetCurrentDirectory(), $"{Guid.NewGuid():N}.css"); - var taskInstance = new ConcatenateCssFiles() - { - ScopedCssFiles = new[] - { - CreateStaticAsset( - "TestFiles/Generated/Index.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/Index.razor.rz.scp.css"), - CreateStaticAsset( - "TestFiles/Generated/Counter.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/Counter.razor.rz.scp.css") - }, - ProjectBundles = Array.Empty(), - OutputFile = expectedFile - }; - - // Act - var result = taskInstance.Execute(); - - var lastModified = File.GetLastWriteTimeUtc(expectedFile); - - taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - File.Exists(expectedFile).Should().BeTrue(); - var actualContents = File.ReadAllText(expectedFile); - actualContents.Should().Contain(BundleContent); - - lastModified.Should().BeSameDateAs(File.GetLastWriteTimeUtc(expectedFile)); - } - - [Fact] - public async System.Threading.Tasks.Task BundlesScopedCssFiles_UpdatesBundleWhenContentsChange() - { - // Arrange - var expectedFile = Path.Combine(Directory.GetCurrentDirectory(), $"{Guid.NewGuid():N}.css"); - var taskInstance = new ConcatenateCssFiles() - { - ScopedCssFiles = new[] - { - CreateStaticAsset( - "TestFiles/Generated/Index.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/Index.razor.rz.scp.css"), - CreateStaticAsset( - "TestFiles/Generated/Counter.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/Counter.razor.rz.scp.css") - }, - ProjectBundles = Array.Empty(), - OutputFile = expectedFile - }; - - // Act - var result = taskInstance.Execute(); - - var lastModified = File.GetLastWriteTimeUtc(expectedFile); - - taskInstance.ScopedCssFiles = new[] - { - CreateStaticAsset( - "TestFiles/Generated/Index.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/Index.razor.rz.scp.css"), - CreateStaticAsset( - "TestFiles/Generated/Counter.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/Counter.razor.rz.scp.css"), - CreateStaticAsset( - "TestFiles/Generated/FetchData.razor.rz.scp.css", - "_content/Test/", - "TestFiles/Generated/FetchData.razor.rz.scp.css"), - }; - - await System.Threading.Tasks.Task.Delay(1000); - taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - File.Exists(expectedFile).Should().BeTrue(); - var actualContents = File.ReadAllText(expectedFile); - - actualContents.Should().Contain(UpdatedBundleContent); - lastModified.Should().NotBe(File.GetLastWriteTimeUtc(expectedFile)); - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ContentTypeProviderTests.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ContentTypeProviderTests.cs deleted file mode 100644 index c2ab1a1fb7b2..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ContentTypeProviderTests.cs +++ /dev/null @@ -1,155 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using System.Collections; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; - -namespace Microsoft.NET.Sdk.Razor.Tests.StaticWebAssets; - -public class ContentTypeProviderTests -{ - private readonly TaskLoggingHelper _log = new TestTaskLoggingHelper(); - - [Fact] - public void GetContentType_ReturnsTextPlainForTextFiles() - { - // Arrange - var provider = new ContentTypeProvider([]); - - // Act - var contentType = provider.ResolveContentTypeMapping(CreateContext("Fake-License.txt"), _log); - - // Assert - Assert.Equal("text/plain", contentType.MimeType); - } - - [Fact] - public void GetContentType_ReturnsMappingForRelativePath() - { - // Arrange - var provider = new ContentTypeProvider([]); - - // Act - var contentType = provider.ResolveContentTypeMapping(CreateContext("Components/Pages/Counter.razor.js"), _log); - - // Assert - Assert.Equal("text/javascript", contentType.MimeType); - } - - private StaticWebAssetGlobMatcher.MatchContext CreateContext(string v) - { - var ctx = StaticWebAssetGlobMatcher.CreateMatchContext(); - ctx.SetPathAndReinitialize(v); - return ctx; - } - - // wwwroot\exampleJsInterop.js.gz - - [Fact] - public void GetContentType_ReturnsMappingForCompressedRelativePath() - { - // Arrange - var provider = new ContentTypeProvider([]); - - // Act - var contentType = provider.ResolveContentTypeMapping(CreateContext("wwwroot/exampleJsInterop.js.gz"), _log); - - // Assert - Assert.Equal("text/javascript", contentType.MimeType); - } - - [Fact] - public void GetContentType_HandlesFingerprintedPaths() - { - // Arrange - var provider = new ContentTypeProvider([]); - // Act - var contentType = provider.ResolveContentTypeMapping(CreateContext("_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency#[.{fingerprint}].bundle.scp.css.gz"), _log); - // Assert - Assert.Equal("text/css", contentType.MimeType); - } - - [Fact] - public void GetContentType_ReturnsDefaultForUnknownMappings() - { - // Arrange - var provider = new ContentTypeProvider([]); - - // Act - var contentType = provider.ResolveContentTypeMapping(CreateContext("something.unknown"), _log); - - // Assert - Assert.Null(contentType.MimeType); - } - - [Theory] - [InlineData("something.unknown.gz", "application/x-gzip")] - [InlineData("something.unknown.br", "application/octet-stream")] - public void GetContentType_ReturnsGzipOrBrotliForUnknownCompressedMappings(string path, string expectedMapping) - { - // Arrange - var provider = new ContentTypeProvider([]); - - // Act - var contentType = provider.ResolveContentTypeMapping(CreateContext(path), _log); - - // Assert - Assert.Equal(expectedMapping, contentType.MimeType); - } - - [Theory] - [InlineData("Fake-License.txt.gz")] - [InlineData("Fake-License.txt.br")] - public void GetContentType_ReturnsTextPlainForCompressedTextFiles(string path) - { - // Arrange - var provider = new ContentTypeProvider([]); - - // Act - var contentType = provider.ResolveContentTypeMapping(CreateContext(path), _log); - - // Assert - Assert.Equal("text/plain", contentType.MimeType); - } - - private class TestTaskLoggingHelper : TaskLoggingHelper - { - public TestTaskLoggingHelper() : base(new TestTask()) - { - } - - private class TestTask : ITask - { - public IBuildEngine BuildEngine { get; set; } = new TestBuildEngine(); - public ITaskHost HostObject { get; set; } = new TestTaskHost(); - - public bool Execute() => true; - } - - private class TestBuildEngine : IBuildEngine - { - public bool ContinueOnError => true; - - public int LineNumberOfTaskNode => 0; - - public int ColumnNumberOfTaskNode => 0; - - public string ProjectFileOfTaskNode => "test.csproj"; - - public bool BuildProjectFile(string projectFileName, string[] targetNames, IDictionary globalProperties, IDictionary targetOutputs) => true; - - public void LogCustomEvent(CustomBuildEventArgs e) { } - public void LogErrorEvent(BuildErrorEventArgs e) { } - public void LogMessageEvent(BuildMessageEventArgs e) { } - public void LogWarningEvent(BuildWarningEventArgs e) { } - } - - private class TestTaskHost : ITaskHost - { - public object HostObject { get; set; } = new object(); - } - } - -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DefineStaticWebAssetEndpointsTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DefineStaticWebAssetEndpointsTest.cs deleted file mode 100644 index 489d3dc4e6ff..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DefineStaticWebAssetEndpointsTest.cs +++ /dev/null @@ -1,687 +0,0 @@ -// 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 System.Diagnostics.Metrics; -using System.Diagnostics; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; -using NuGet.Packaging.Core; -using System.Net; -using System.Globalization; - -namespace Microsoft.NET.Sdk.Razor.Tests; - -public class DefineStaticWebAssetEndpointsTest -{ - [Theory] - [InlineData(StaticWebAsset.SourceTypes.Discovered)] - [InlineData(StaticWebAsset.SourceTypes.Computed)] - public void DefinesEndpointsForAssets(string sourceType) - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); - - var task = new DefineStaticWebAssetEndpoints - { - BuildEngine = buildEngine.Object, - CandidateAssets = [CreateCandidate( - Path.Combine("wwwroot", "candidate.js"), - "MyPackage", - sourceType, - "candidate.js", - "All", - "All", - fileLength: 10, - lastWriteTime: lastWrite)], - ExistingEndpoints = [], - ContentTypeMappings = [CreateContentMapping("**/*.js", "text/javascript")], - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.Endpoints); - endpoints.Should().ContainSingle(); - var endpoint = endpoints[0]; - - endpoint.Route.Should().Be("candidate.js"); - endpoint.AssetFile.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - endpoint.ResponseHeaders.Should().BeEquivalentTo( - [ - new StaticWebAssetEndpointResponseHeader - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Cache-Control", - Value = "no-cache" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Content-Length", - Value = "10" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Content-Type", - Value = "text/javascript" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "ETag", - Value = "\"integrity\"" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Last-Modified", - Value = "Thu, 15 Nov 1990 00:00:00 GMT" - } - ]); - } - - [Fact] - public void CanDefineFingerprintedEndpoints() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); - - var task = new DefineStaticWebAssetEndpoints - { - BuildEngine = buildEngine.Object, - CandidateAssets = [CreateCandidate( - Path.Combine("wwwroot", "candidate.js"), - "MyPackage", - "Discovered", - "candidate#[.{fingerprint}]?.js", - "All", - "All", - fingerprint: "1234asdf", - integrity: "asdf1234", - lastWriteTime: lastWrite)], - ExistingEndpoints = [], - ContentTypeMappings = [CreateContentMapping("**/*.js", "text/javascript")], - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.Endpoints); - endpoints.Length.Should().Be(2); - var endpoint = endpoints[0]; - - endpoint.Route.Should().Be("candidate.1234asdf.js"); - endpoint.AssetFile.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - endpoint.EndpointProperties.Should().BeEquivalentTo([ - new StaticWebAssetEndpointProperty - { - Name = "fingerprint", - Value = "1234asdf" - }, - new StaticWebAssetEndpointProperty - { - Name = "integrity", - Value = "sha256-asdf1234" - }, - new StaticWebAssetEndpointProperty - { - Name = "label", - Value = "candidate.js" - } - ]); - endpoint.ResponseHeaders.Should().BeEquivalentTo( - [ - new StaticWebAssetEndpointResponseHeader - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Content-Length", - Value = "10" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Content-Type", - Value = "text/javascript" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "ETag", - Value = "\"asdf1234\"" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Last-Modified", - Value = "Thu, 15 Nov 1990 00:00:00 GMT" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Cache-Control", - Value = "max-age=31536000, immutable" - } - ]); - - var otherEndpoint = endpoints[1]; - otherEndpoint.Route.Should().Be("candidate.js"); - otherEndpoint.AssetFile.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - otherEndpoint.ResponseHeaders.Should().BeEquivalentTo( - [ - new StaticWebAssetEndpointResponseHeader - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Cache-Control", - Value = "no-cache" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Content-Length", - Value = "10" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Content-Type", - Value = "text/javascript" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "ETag", - Value = "\"asdf1234\"" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Last-Modified", - Value = "Thu, 15 Nov 1990 00:00:00 GMT" - } - ]); - } - - [Fact] - public void CanDefineFingerprintedEndpoints_WithEmbeddedFingerprint() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); - - var task = new DefineStaticWebAssetEndpoints - { - BuildEngine = buildEngine.Object, - CandidateAssets = [CreateCandidate( - Path.Combine("wwwroot", "candidate.js"), - "MyPackage", - "Discovered", - "candidate#[.{fingerprint=yolo}]?.js", - "All", - "All", - fingerprint: "1234asdf", - integrity: "asdf1234", - lastWriteTime : lastWrite)], - ExistingEndpoints = [], - ContentTypeMappings = [CreateContentMapping("**/*.js", "text/javascript")], - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.Endpoints); - endpoints.Length.Should().Be(2); - var endpoint = endpoints[1]; - - endpoint.Route.Should().Be("candidate.yolo.js"); - endpoint.AssetFile.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - endpoint.EndpointProperties.Should().BeEquivalentTo([ - new StaticWebAssetEndpointProperty - { - Name = "fingerprint", - Value = "yolo" - }, - new StaticWebAssetEndpointProperty - { - Name = "integrity", - Value = "sha256-asdf1234" - }, - new StaticWebAssetEndpointProperty - { - Name = "label", - Value = "candidate.js" - } - ]); - endpoint.ResponseHeaders.Should().BeEquivalentTo( - [ - new StaticWebAssetEndpointResponseHeader - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Content-Length", - Value = "10" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Content-Type", - Value = "text/javascript" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "ETag", - Value = "\"asdf1234\"" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Last-Modified", - Value = "Thu, 15 Nov 1990 00:00:00 GMT" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Cache-Control", - Value = "max-age=31536000, immutable" - } - ]); - - var otherEndpoint = endpoints[0]; - otherEndpoint.Route.Should().Be("candidate.js"); - otherEndpoint.AssetFile.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - otherEndpoint.ResponseHeaders.Should().BeEquivalentTo( - [ - new StaticWebAssetEndpointResponseHeader - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Cache-Control", - Value = "no-cache" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Content-Length", - Value = "10" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Content-Type", - Value = "text/javascript" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "ETag", - Value = "\"asdf1234\"" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Last-Modified", - Value = "Thu, 15 Nov 1990 00:00:00 GMT" - } - ]); - } - - [Fact] - public void DoesNotDefineNewEndpointsWhenAnExistingEndpointAlreadyExists() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); - var headers = new StaticWebAssetEndpointResponseHeader[] - { - new() { - Name = "Accept-Ranges", - Value = "bytes" - }, - new() { - Name = "Content-Length", - Value = "10" - }, - new() { - Name = "Content-Type", - Value = "text/javascript" - }, - new() { - Name = "ETag", - Value = "integrity" - }, - new() { - Name = "Last-Modified", - Value = "Thu, 15 Nov 1990 00:00:00 GMT" - } - }; - - var task = new DefineStaticWebAssetEndpoints - { - BuildEngine = buildEngine.Object, - CandidateAssets = [CreateCandidate( - Path.Combine("wwwroot", "candidate.js"), - "MyPackage", - "Discovered", - "candidate.js", - "All", - "All", - lastWriteTime : lastWrite)], - ExistingEndpoints = [ - CreateCandidateEndpoint( - "candidate.js", - Path.GetFullPath(Path.Combine("wwwroot", "candidate.js")), - headers)], - ContentTypeMappings = [CreateContentMapping("**/*.js", "text/javascript")], - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.Endpoints); - endpoints.Should().BeEmpty(); - } - - [Fact] - public void ResolvesContentType_ForCompressedAssets() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); - - var task = new DefineStaticWebAssetEndpoints - { - BuildEngine = buildEngine.Object, - CandidateAssets = [ - new TaskItem( - Path.Combine(AppContext.BaseDirectory, "Client", "obj", "Debug", "net6.0", "compressed", "rdfmaxp4ta-43emfwee4b.gz"), - new Dictionary - { - ["RelativePath"] = "_framework/dotnet.timezones.blat.gz", - ["BasePath"] = "/", - ["AssetMode"] = "All", - ["AssetKind"] = "Build", - ["SourceId"] = "BlazorWasmHosted60.Client", - ["CopyToOutputDirectory"] = "PreserveNewest", - ["Fingerprint"] = "3ji2l2o1xa", - ["RelatedAsset"] = Path.Combine(AppContext.BaseDirectory, "Client", "bin", "Debug", "net6.0", "wwwroot", "_framework", "dotnet.timezones.blat"), - ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "Client", "obj", "Debug", "net6.0", "compressed"), - ["SourceType"] = "Computed", - ["Integrity"] = "TwfyUDDMyF5dWUB2oRhrZaTk8sEa9o8ezAlKdxypsX4=", - ["AssetRole"] = "Alternative", - ["AssetTraitValue"] = "gzip", - ["AssetTraitName"] = "Content-Encoding", - ["OriginalItemSpec"] = Path.Combine("D:", "work", "dotnet-sdk", "artifacts", "tmp", "Release", "Publish60Host---0200F604", "Client", "bin", "Debug", "net6.0", "wwwroot", "_framework", "dotnet.timezones.blat"), - ["CopyToPublishDirectory"] = "Never", - ["FileLength"] = "10", - ["LastWriteTime"] = lastWrite.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) - }) - ], - ExistingEndpoints = [], - ContentTypeMappings = [], - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.Endpoints); - endpoints.Length.Should().Be(1); - var endpoint = endpoints[0]; - endpoint.ResponseHeaders.Should().ContainSingle(h => h.Name == "Content-Type" && h.Value == "application/x-gzip"); - } - - [Fact] - public void ResolvesContentType_ForFingerprintedAssets() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); - - var task = new DefineStaticWebAssetEndpoints - { - BuildEngine = buildEngine.Object, - CandidateAssets = [ - new TaskItem( - Path.Combine(AppContext.BaseDirectory, "Client", "obj", "Debug", "net6.0", "compressed", "rdfmaxp4ta-43emfwee4b.gz"), - new Dictionary - { - ["RelativePath"] = "RazorPackageLibraryDirectDependency.iiugt355ct.bundle.scp.css.gz", - ["BasePath"] = "_content/RazorPackageLibraryDirectDependency", - ["AssetMode"] = "Reference", - ["AssetKind"] = "All", - ["SourceId"] = "RazorPackageLibraryDirectDependency", - ["CopyToOutputDirectory"] = "Never", - ["Fingerprint"] = "olx7vzw7zz", - ["RelatedAsset"] = Path.Combine(AppContext.BaseDirectory, "Client", "obj", "Debug", "net6.0", "compressed", "RazorPackageLibraryDirectDependency.iiugt355ct.bundle.scp.css"), - ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "Client", "obj", "Debug", "net6.0", "compressed"), - ["SourceType"] = "Package", - ["Integrity"] = "JK/W3g5zqZGxAM7zbv/pJ3ngpJheT01SXQ+NofKgQcc=", - ["AssetRole"] = "Alternative", - ["AssetTraitValue"] = "gzip", - ["AssetTraitName"] = "Content-Encoding", - ["OriginalItemSpec"] = Path.Combine(AppContext.BaseDirectory, "Client", "obj", "Debug", "net6.0", "compressed", "RazorPackageLibraryDirectDependency.iiugt355ct.bundle.scp.css"), - ["CopyToPublishDirectory"] = "PreserveNewest", - ["FileLength"] = "10", - ["LastWriteTime"] = lastWrite.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) - }) - ], - ExistingEndpoints = [], - ContentTypeMappings = [], - }; - - // Act - var result = task.Execute(); - result.Should().Be(true); - var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.Endpoints); - endpoints.Length.Should().Be(1); - var endpoint = endpoints[0]; - endpoint.ResponseHeaders.Should().ContainSingle(h => h.Name == "Content-Type" && h.Value == "text/css"); - } - - [Fact] - public void Produces_TheExpectedEndpoint_ForExternalAssets() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var lastWrite = new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc); - - var assetIdentity = Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"); - var task = new DefineStaticWebAssetEndpoints - { - BuildEngine = buildEngine.Object, - CandidateAssets = [ - new TaskItem( - assetIdentity, - new Dictionary - { - ["RelativePath"] = "assets/index-#[{fingerprint}].css", - ["BasePath"] = "", - ["AssetMode"] = "All", - ["AssetKind"] = "Publish", - ["SourceId"] = "MyProject", - ["CopyToOutputDirectory"] = "PreserveNewest", - ["RelatedAsset"] = "", - ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "dist"), - ["SourceType"] = "Discovered", - ["AssetRole"] = "Primary", - ["AssetTraitValue"] = "", - ["AssetTraitName"] = "", - ["Integrity"] = "asdf1234", - ["Fingerprint"] = "C5tBAdQX", - ["OriginalItemSpec"] = assetIdentity, - ["CopyToPublishDirectory"] = "PreserveNewest", - ["FileLength"] = "10", - ["LastWriteTime"] = lastWrite.ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture) - }), - ], - ExistingEndpoints = [], - ContentTypeMappings = [CreateContentMapping("**/*.css", "text/css")], - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var endpoints = StaticWebAssetEndpoint.FromItemGroup(task.Endpoints); - endpoints.Length.Should().Be(1); - var endpoint = endpoints[0]; - - endpoint.Route.Should().Be("assets/index-C5tBAdQX.css"); - endpoint.AssetFile.Should().Be(assetIdentity); - endpoint.EndpointProperties.Should().BeEquivalentTo([ - new StaticWebAssetEndpointProperty - { - Name = "fingerprint", - Value = "C5tBAdQX" - }, - new StaticWebAssetEndpointProperty - { - Name = "integrity", - Value = "sha256-asdf1234" - }, - new StaticWebAssetEndpointProperty - { - Name = "label", - Value = "assets/index-.css" - } - ]); - endpoint.ResponseHeaders.Should().BeEquivalentTo( - [ - new StaticWebAssetEndpointResponseHeader - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Content-Length", - Value = "10" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Content-Type", - Value = "text/css" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "ETag", - Value = "\"asdf1234\"" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Last-Modified", - Value = "Thu, 15 Nov 1990 00:00:00 GMT" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Cache-Control", - Value = "max-age=31536000, immutable" - } - ]); - } - - private static ITaskItem CreateCandidate( - string itemSpec, - string sourceId, - string sourceType, - string relativePath, - string assetKind, - string assetMode, - string fingerprint = null, - string integrity = null, - long fileLength = 10, - DateTimeOffset? lastWriteTime = null) - { - lastWriteTime ??= DateTimeOffset.UtcNow; - var result = new StaticWebAsset() - { - Identity = Path.GetFullPath(itemSpec), - SourceId = sourceId, - SourceType = sourceType, - ContentRoot = Directory.GetCurrentDirectory(), - BasePath = "base", - RelativePath = relativePath, - AssetKind = assetKind, - AssetMode = assetMode, - AssetRole = "Primary", - RelatedAsset = "", - AssetTraitName = "", - AssetTraitValue = "", - CopyToOutputDirectory = "", - CopyToPublishDirectory = "", - OriginalItemSpec = itemSpec, - // Add these to avoid accessing the disk to compute them - Integrity = integrity ?? "integrity", - Fingerprint = fingerprint ?? "fingerprint", - FileLength = fileLength, - LastWriteTime = lastWriteTime.Value, - }; - - result.ApplyDefaults(); - result.Normalize(); - - return result.ToTaskItem(); - } - - private static TaskItem CreateContentMapping(string pattern, string contentType) - { - return new TaskItem(contentType, new Dictionary - { - { "Pattern", pattern }, - { "Priority", "0" } - }); - } - - private static ITaskItem CreateCandidateEndpoint( - string route, - string assetFile, - StaticWebAssetEndpointResponseHeader[] responseHeaders = null, - StaticWebAssetEndpointSelector[] responseSelector = null, - StaticWebAssetEndpointProperty[] properties = null) - { - return new StaticWebAssetEndpoint - { - Route = route, - AssetFile = Path.GetFullPath(assetFile), - ResponseHeaders = responseHeaders ?? [], - EndpointProperties = properties ?? [], - Selectors = responseSelector ?? [] - }.ToTaskItem(); - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DiscoverDefaultScopedCssItemsTests.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DiscoverDefaultScopedCssItemsTests.cs deleted file mode 100644 index e4e9a5c914ff..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DiscoverDefaultScopedCssItemsTests.cs +++ /dev/null @@ -1,101 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Utilities; - -namespace Microsoft.NET.Sdk.Razor.Test -{ - public class DiscoverDefaultScopedCssItemsTests - { - [Fact] - public void DiscoversScopedCssFiles_BasedOnTheirExtension() - { - // Arrange - var taskInstance = new DiscoverDefaultScopedCssItems() - { - Content = new[] - { - new TaskItem("TestFiles/Pages/Counter.razor.css"), - new TaskItem("TestFiles/Pages/Index.razor.css"), - new TaskItem("TestFiles/Pages/Profile.razor.css"), - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.DiscoveredScopedCssInputs.Should().HaveCount(3); - } - - [Fact] - public void DoesNotDiscoversScopedCssFilesForViews_IfFeatureIsUnsupported() - { - // Arrange - var taskInstance = new DiscoverDefaultScopedCssItems() - { - Content = new[] - { - new TaskItem("TestFiles/Pages/Counter.cshtml.css"), - new TaskItem("TestFiles/Pages/Index.cshtml.css"), - new TaskItem("TestFiles/Pages/Profile.cshtml.css"), - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.DiscoveredScopedCssInputs.Should().BeEmpty(); - } - - [Fact] - public void DiscoversScopedCssFilesForViews_BasedOnTheirExtension() - { - // Arrange - var taskInstance = new DiscoverDefaultScopedCssItems() - { - SupportsScopedCshtmlCss = true, - Content = new[] - { - new TaskItem("TestFiles/Pages/Counter.cshtml.css"), - new TaskItem("TestFiles/Pages/Index.cshtml.css"), - new TaskItem("TestFiles/Pages/Profile.cshtml.css"), - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.DiscoveredScopedCssInputs.Should().HaveCount(3); - } - - [Fact] - public void DiscoversScopedCssFilesForViews_SkipsFilesWithScopedAttributeWithAFalseValue() - { - // Arrange - var taskInstance = new DiscoverDefaultScopedCssItems() - { - SupportsScopedCshtmlCss = true, - Content = new[] - { - new TaskItem("TestFiles/Pages/Counter.cshtml.css"), - new TaskItem("TestFiles/Pages/Index.cshtml.css"), - new TaskItem("TestFiles/Pages/Profile.cshtml.css", new Dictionary{ ["Scoped"] = "false" }), - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.DiscoveredScopedCssInputs.Should().HaveCount(2); - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DiscoverPrecompressedAssetsTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DiscoverPrecompressedAssetsTest.cs deleted file mode 100644 index 01d264945b51..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DiscoverPrecompressedAssetsTest.cs +++ /dev/null @@ -1,115 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests; - -public class DiscoverPrecompressedAssetsTest -{ - public string ItemSpec { get; } - - public string OriginalItemSpec { get; } - - public string OutputBasePath { get; } - - public DiscoverPrecompressedAssetsTest() - { - OutputBasePath = Path.Combine(TestContext.Current.TestExecutionDirectory, nameof(ResolveCompressedAssetsTest)); - ItemSpec = Path.Combine(OutputBasePath, Guid.NewGuid().ToString("N") + ".tmp"); - OriginalItemSpec = Path.Combine(OutputBasePath, Guid.NewGuid().ToString("N") + ".tmp"); - } - - [Fact] - public void DiscoversPrecompressedAssetsCorrectly() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var uncompressedCandidate = new StaticWebAsset - { - Identity = Path.Combine(Environment.CurrentDirectory, "wwwroot", "js", "site.js"), - RelativePath = "js/site#[.{fingerprint}]?.js", - BasePath = "_content/Test", - AssetMode = StaticWebAsset.AssetModes.All, - AssetKind = StaticWebAsset.AssetKinds.All, - AssetMergeSource = string.Empty, - SourceId = "Test", - CopyToOutputDirectory = StaticWebAsset.AssetCopyOptions.Never, - Fingerprint = "uncompressed", - RelatedAsset = string.Empty, - ContentRoot = Path.Combine(Environment.CurrentDirectory,"wwwroot"), - SourceType = StaticWebAsset.SourceTypes.Discovered, - Integrity = "uncompressed-integrity", - AssetRole = StaticWebAsset.AssetRoles.Primary, - AssetMergeBehavior = string.Empty, - AssetTraitValue = string.Empty, - AssetTraitName = string.Empty, - OriginalItemSpec = Path.Combine("wwwroot", "js", "site.js"), - CopyToPublishDirectory = StaticWebAsset.AssetCopyOptions.PreserveNewest, - FileLength = 10, - LastWriteTime = DateTime.UtcNow - }; - - var compressedCandidate = new StaticWebAsset - { - Identity = Path.Combine(Environment.CurrentDirectory, "wwwroot", "js", "site.js.gz"), - RelativePath = "js/site.js#[.{fingerprint}]?.gz", - BasePath = "_content/Test", - AssetMode = StaticWebAsset.AssetModes.All, - AssetKind = StaticWebAsset.AssetKinds.All, - AssetMergeSource = string.Empty, - SourceId = "Test", - CopyToOutputDirectory = StaticWebAsset.AssetCopyOptions.Never, - Fingerprint = "compressed", - RelatedAsset = string.Empty, - ContentRoot = Path.Combine(Environment.CurrentDirectory, "wwwroot"), - SourceType = StaticWebAsset.SourceTypes.Discovered, - Integrity = "compressed-integrity", - AssetRole = StaticWebAsset.AssetRoles.Primary, - AssetMergeBehavior = string.Empty, - AssetTraitValue = string.Empty, - AssetTraitName = string.Empty, - OriginalItemSpec = Path.Combine("wwwroot", "js", "site.js.gz"), - CopyToPublishDirectory = StaticWebAsset.AssetCopyOptions.PreserveNewest, - FileLength = 10, - LastWriteTime = DateTime.UtcNow - }; - - var task = new DiscoverPrecompressedAssets - { - CandidateAssets = [uncompressedCandidate.ToTaskItem(), compressedCandidate.ToTaskItem()], - BuildEngine = buildEngine.Object - }; - - var result = task.Execute(); - - result.Should().BeTrue(); - task.DiscoveredCompressedAssets.Should().ContainSingle(); - var asset = task.DiscoveredCompressedAssets[0]; - asset.ItemSpec.Should().Be(compressedCandidate.Identity); - asset.GetMetadata("RelatedAsset").Should().Be(uncompressedCandidate.Identity); - asset.GetMetadata("OriginalItemSpec").Should().Be(uncompressedCandidate.Identity); - asset.GetMetadata("RelativePath").Should().Be("js/site#[.{fingerprint=uncompressed}]?.js.gz"); - asset.GetMetadata("AssetRole").Should().Be("Alternative"); - asset.GetMetadata("AssetTraitName").Should().Be("Content-Encoding"); - asset.GetMetadata("AssetTraitValue").Should().Be("gzip"); - asset.GetMetadata("Fingerprint").Should().Be("compressed"); - asset.GetMetadata("Integrity").Should().Be("compressed-integrity"); - asset.GetMetadata("CopyToPublishDirectory").Should().Be("PreserveNewest"); - asset.GetMetadata("CopyToOutputDirectory").Should().Be("Never"); - asset.GetMetadata("AssetMergeSource").Should().Be(string.Empty); - asset.GetMetadata("AssetMergeBehavior").Should().Be(string.Empty); - asset.GetMetadata("AssetKind").Should().Be("All"); - asset.GetMetadata("AssetMode").Should().Be("All"); - asset.GetMetadata("SourceId").Should().Be("Test"); - asset.GetMetadata("SourceType").Should().Be("Discovered"); - asset.GetMetadata("ContentRoot").Should().Be(Path.Combine(Environment.CurrentDirectory, $"wwwroot{Path.DirectorySeparatorChar}")); - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DiscoverStaticWebAssetsTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DiscoverStaticWebAssetsTest.cs deleted file mode 100644 index 147f38a310c3..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/DiscoverStaticWebAssetsTest.cs +++ /dev/null @@ -1,745 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - public class DiscoverStaticWebAssetsTest - { - private readonly Func _testResolveFileDetails = - (string identity, string originalItemSpec) => (null, 10, new DateTimeOffset(2023, 10, 1, 0, 0, 0, TimeSpan.Zero)); - - [Fact] - public void DiscoversMatchingAssetsBasedOnPattern() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new DefineStaticWebAssets - { - BuildEngine = buildEngine.Object, - TestResolveFileDetails = _testResolveFileDetails, - CandidateAssets = - [ - CreateCandidate(Path.Combine("wwwroot", "candidate.js")) - ], - RelativePathPattern = "wwwroot\\**", - SourceType = "Discovered", - SourceId = "MyProject", - ContentRoot = "wwwroot", - BasePath = "_content/Path" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); - task.Assets.Length.Should().Be(1); - var asset = task.Assets[0]; - asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().Be("MyProject"); - asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().Be("Discovered"); - asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar); - asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be("_content/Path"); - asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().Be("candidate.js"); - asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().Be("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().Be("Primary"); - asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); - asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); - asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().Be(Path.Combine("wwwroot", "candidate.js")); - } - - [Theory] - [InlineData("index.js", "index#[.{fingerprint}]?.js", "")] - [InlineData("css/site.css", "css/site#[.{fingerprint}]!.css", "#[.{fingerprint}]!")] - public void FingerprintsContentWhenEnabled(string file, string expectedRelativePath, string expression) - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new DefineStaticWebAssets - { - BuildEngine = buildEngine.Object, - TestResolveFileDetails = _testResolveFileDetails, - CandidateAssets = - [ - CreateCandidate(Path.Combine("wwwroot", file)) - ], - RelativePathPattern = "wwwroot\\**", - FingerprintCandidates = true, - SourceType = "Discovered", - SourceId = "MyProject", - ContentRoot = "wwwroot", - BasePath = "_content/Path" - }; - if (!string.IsNullOrEmpty(expression)) - { - task.FingerprintPatterns = [new TaskItem("CssFile", new Dictionary { ["Pattern"] = "*.css", ["Expression"] = expression })]; - } - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); - task.Assets.Length.Should().Be(1); - var asset = task.Assets[0]; - asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", file))); - asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().Be("MyProject"); - asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().Be("Discovered"); - asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar); - asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be("_content/Path"); - asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().Be(expectedRelativePath); - asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().Be("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().Be("Primary"); - asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); - asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); - asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().Be(Path.Combine("wwwroot", file)); - } - - [Theory] - [InlineData("index.js")] - [InlineData("css/site.js")] - public void DoesNotFingerprintsContentWhenNotEnabled(string candidate) - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new DefineStaticWebAssets - { - BuildEngine = buildEngine.Object, - TestResolveFileDetails = _testResolveFileDetails, - CandidateAssets = - [ - CreateCandidate(Path.Combine("wwwroot", candidate.Replace('/', Path.DirectorySeparatorChar))) - ], - RelativePathPattern = "wwwroot\\**", - FingerprintCandidates = false, - SourceType = "Discovered", - SourceId = "MyProject", - ContentRoot = "wwwroot", - BasePath = "_content/Path" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); - task.Assets.Length.Should().Be(1); - var asset = task.Assets[0]; - asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", candidate))); - asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().Be("MyProject"); - asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().Be("Discovered"); - asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar); - asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be("_content/Path"); - asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().Be(candidate); - asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().Be("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().Be("Primary"); - asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); - asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); - asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().Be(Path.Combine("wwwroot", Path.Combine(candidate.Split('/')))); - } - - [Theory] - [InlineData("candidate.lib.module.js", "candidate#[.{fingerprint}]?.lib.module.js", "")] - [InlineData("library.candidate.lib.module.js", "library.candidate#[.{fingerprint}]!.lib.module.js", "#[.{fingerprint}]!")] - public void FingerprintsContentUsingPatternsWhenMoreThanOneExtension(string fileName, string expectedRelativePath, string expression) - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new DefineStaticWebAssets - { - BuildEngine = buildEngine.Object, - TestResolveFileDetails = _testResolveFileDetails, - CandidateAssets = - [ - CreateCandidate(Path.Combine("wwwroot", fileName)) - ], - FingerprintPatterns = [new TaskItem("JsModule", new Dictionary { ["Pattern"] = "*.lib.module.js", ["Expression"] = expression })], - FingerprintCandidates = true, - RelativePathPattern = "wwwroot\\**", - SourceType = "Discovered", - SourceId = "MyProject", - ContentRoot = "wwwroot", - BasePath = "_content/Path" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); - task.Assets.Length.Should().Be(1); - var asset = task.Assets[0]; - asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", fileName))); - asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().Be("MyProject"); - asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().Be("Discovered"); - asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar); - asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be("_content/Path"); - asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().Be(expectedRelativePath); - asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().Be("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().Be("Primary"); - asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); - asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); - asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().Be(Path.Combine("wwwroot", fileName)); - } - - [Fact] - public void RespectsItemRelativePathWhenExplicitlySpecified() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new DefineStaticWebAssets - { - BuildEngine = buildEngine.Object, - TestResolveFileDetails = _testResolveFileDetails, - CandidateAssets = - [ - CreateCandidate(Path.Combine("wwwroot", "candidate.js"), relativePath: "subdir/candidate.js") - ], - RelativePathPattern = "wwwroot\\**", - SourceType = "Discovered", - SourceId = "MyProject", - ContentRoot = "wwwroot", - BasePath = "_content/Path" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); - task.Assets.Length.Should().Be(1); - var asset = task.Assets[0]; - asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().Be("MyProject"); - asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().Be("Discovered"); - asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar); - asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be("_content/Path"); - asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().Be("subdir/candidate.js"); - asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().Be("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().Be("Primary"); - asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); - asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); - asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().Be(Path.Combine("wwwroot", "candidate.js")); - } - - [Fact] - public void UsesTargetPathWhenFound() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new DefineStaticWebAssets - { - BuildEngine = buildEngine.Object, - TestResolveFileDetails = _testResolveFileDetails, - CandidateAssets = - [ - CreateCandidate(Path.Combine("wwwroot", "candidate.js"), targetPath: Path.Combine("wwwroot", "subdir", "candidate.publish.js")) - ], - RelativePathPattern = "wwwroot\\**", - SourceType = "Discovered", - SourceId = "MyProject", - ContentRoot = "wwwroot", - BasePath = "_content/Path" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); - task.Assets.Length.Should().Be(1); - var asset = task.Assets[0]; - asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().Be("MyProject"); - asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().Be("Discovered"); - asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar); - asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be("_content/Path"); - asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().Be("subdir/candidate.publish.js"); - asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().Be("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().Be("Primary"); - asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); - asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); - asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().Be(Path.Combine("wwwroot", "candidate.js")); - } - - [Fact] - public void UsesLinkPathWhenFound() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new DefineStaticWebAssets - { - BuildEngine = buildEngine.Object, - TestResolveFileDetails = _testResolveFileDetails, - CandidateAssets = - [ - CreateCandidate(Path.Combine("wwwroot", "candidate.js"), link: Path.Combine("wwwroot", "subdir", "candidate.link.js")) - ], - RelativePathPattern = "wwwroot\\**", - SourceType = "Discovered", - SourceId = "MyProject", - ContentRoot = "wwwroot", - BasePath = "_content/Path" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); - task.Assets.Length.Should().Be(1); - var asset = task.Assets[0]; - asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().Be("MyProject"); - asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().Be("Discovered"); - asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar); - asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be("_content/Path"); - asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().Be("subdir/candidate.link.js"); - asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().Be("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().Be("Primary"); - asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().Be(""); - asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); - asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); - asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().Be(Path.Combine("wwwroot", "candidate.js")); - } - - [Fact] - public void AutomaticallyDetectsAssetKindWhenMultipleAssetsTargetTheSameRelativePath() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new DefineStaticWebAssets - { - BuildEngine = buildEngine.Object, - TestResolveFileDetails = _testResolveFileDetails, - CandidateAssets = - [ - CreateCandidate(Path.Combine("wwwroot", "candidate.js"), copyToPublishDirectory: "Never"), - CreateCandidate(Path.Combine("wwwroot", "candidate.publish.js"), relativePath: "candidate.js") - ], - RelativePathPattern = "wwwroot\\**", - SourceType = "Discovered", - SourceId = "MyProject", - ContentRoot = "wwwroot", - BasePath = "_content/Path" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); - task.Assets.Length.Should().Be(2); - var buildAsset = task.Assets.Single(a => a.ItemSpec == Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - var publishAsset = task.Assets.Single(a => a.ItemSpec == Path.GetFullPath(Path.Combine("wwwroot", "candidate.publish.js"))); - buildAsset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - buildAsset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("Build"); - buildAsset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); - buildAsset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("Never"); - - publishAsset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.publish.js"))); - publishAsset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().Be("Publish"); - publishAsset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().Be("Never"); - publishAsset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().Be("PreserveNewest"); - } - - [Theory] - [InlineData("Never", "Never", "Build", "Never", "Never", "Build")] - [InlineData("PreserveNewest", "PreserveNewest", "All", "PreserveNewest", "PreserveNewest", "All")] - [InlineData("Always", "Always", "All", "Always", "Always", "All")] - [InlineData("Never", "Always", "All", "Never", "Always", "All")] - [InlineData("Always", "Never", "Build", "Always", "Never", "Build")] - public void FailsDiscoveringAssetsWhenThereIsAConflict( - string copyToOutputDirectoryFirst, - string copyToPublishDirectoryFirst, - string firstKind, - string copyToOutputDirectorySecond, - string copyToPublishDirectorySecond, - string secondKind) - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new DefineStaticWebAssets - { - BuildEngine = buildEngine.Object, - TestResolveFileDetails = _testResolveFileDetails, - CandidateAssets = - [ - CreateCandidate( - Path.Combine("wwwroot","candidate.js"), - copyToOutputDirectory: copyToOutputDirectoryFirst, - copyToPublishDirectory: copyToPublishDirectoryFirst), - - CreateCandidate( - Path.Combine("wwwroot","candidate.publish.js"), - relativePath: "candidate.js", - copyToOutputDirectory: copyToOutputDirectorySecond, - copyToPublishDirectory: copyToPublishDirectorySecond) - ], - RelativePathPattern = "wwwroot\\**", - SourceType = "Discovered", - SourceId = "MyProject", - ContentRoot = "wwwroot", - BasePath = "_content/Path" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(false); - errorMessages.Count.Should().Be(1); - errorMessages[0].Should().Be($@"Two assets found targeting the same path with incompatible asset kinds: -'{Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))}' with kind '{firstKind}' -'{Path.GetFullPath(Path.Combine("wwwroot", "candidate.publish.js"))}' with kind '{secondKind}' -for path 'candidate.js'"); - } - - [Theory] - [InlineData("\\_content\\Path\\", "_content/Path")] - [InlineData("\\_content\\Path", "_content/Path")] - [InlineData("_content\\Path", "_content/Path")] - [InlineData("/_content/Path/", "_content/Path")] - [InlineData("/_content/Path", "_content/Path")] - [InlineData("_content/Path", "_content/Path")] - [InlineData("\\_content/Path\\", "_content/Path")] - [InlineData("/_content\\Path/", "_content/Path")] - [InlineData("", "/")] - [InlineData("/", "/")] - [InlineData("\\", "/")] - public void NormalizesBasePath(string givenPath, string expectedPath) - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new DefineStaticWebAssets - { - BuildEngine = buildEngine.Object, - TestResolveFileDetails = _testResolveFileDetails, - CandidateAssets = - [ - CreateCandidate("wwwroot\\candidate.js") - ], - RelativePathPattern = "wwwroot\\**", - SourceType = "Discovered", - SourceId = "MyProject", - ContentRoot = "wwwroot", - BasePath = givenPath - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); - task.Assets.Length.Should().Be(1); - var asset = task.Assets[0]; - asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().Be(expectedPath); - } - - public static TheoryData NormalizesContentRootData - { - get - { - var currentPath = Path.GetFullPath("."); - var result = new TheoryData - { - { "wwwroot", Path.GetFullPath("wwwroot") + Path.DirectorySeparatorChar }, - { currentPath + Path.DirectorySeparatorChar + "wwwroot" + Path.DirectorySeparatorChar + "subdir", Path.GetFullPath("wwwroot/subdir") + Path.DirectorySeparatorChar }, - { currentPath + Path.DirectorySeparatorChar + "wwwroot" + Path.DirectorySeparatorChar + "subdir" + Path.DirectorySeparatorChar, Path.GetFullPath("wwwroot/subdir") + Path.DirectorySeparatorChar }, - { currentPath + Path.DirectorySeparatorChar + "wwwroot" + Path.DirectorySeparatorChar + "subdir" + Path.AltDirectorySeparatorChar, Path.GetFullPath("wwwroot/subdir") + Path.DirectorySeparatorChar }, - { currentPath + Path.AltDirectorySeparatorChar + "wwwroot" + Path.AltDirectorySeparatorChar + "subdir", Path.GetFullPath("wwwroot/subdir") + Path.DirectorySeparatorChar }, - { currentPath + Path.DirectorySeparatorChar + "wwwroot" + Path.AltDirectorySeparatorChar + "subdir", Path.GetFullPath("wwwroot/subdir") + Path.DirectorySeparatorChar }, - { currentPath + Path.AltDirectorySeparatorChar + "wwwroot" + Path.DirectorySeparatorChar + "subdir", Path.GetFullPath("wwwroot/subdir") + Path.DirectorySeparatorChar } - }; - return result; - } - } - - [Theory] - [MemberData(nameof(NormalizesContentRootData))] - public void NormalizesContentRoot(string contentRoot, string expected) - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new DefineStaticWebAssets - { - BuildEngine = buildEngine.Object, - TestResolveFileDetails = _testResolveFileDetails, - CandidateAssets = - [ - CreateCandidate("wwwroot\\candidate.js") - ], - RelativePathPattern = "wwwroot\\**", - SourceType = "Discovered", - SourceId = "MyProject", - ContentRoot = contentRoot, - BasePath = "base" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true, $"Errors: {Environment.NewLine} {string.Join($"{Environment.NewLine} ", errorMessages)}"); - task.Assets.Length.Should().Be(1); - var asset = task.Assets[0]; - asset.ItemSpec.Should().Be(Path.GetFullPath(Path.Combine("wwwroot", "candidate.js"))); - asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().Be(expected); - } - - [Fact] - public void DefineStaticWebAssetsCache_UpToDate() - { - // Arrange - var (cache, inputHashes) = SetupCache([], []); - // Assert - cache.Update([], [], [], inputHashes); - - // Assert - Assert.True(cache.IsUpToDate()); - } - - [Fact] - public void DefineStaticWebAssetsCache_UpToDate_WithAssets() - { - // Arrange - var (cache, inputHashes) = SetupCache(["input1"], ["input1"]); - - // Act - cache.Update([], [], [], inputHashes); - - // Assert - Assert.True(cache.IsUpToDate()); - } - - [Theory] - [InlineData(UpdatedHash.GlobalProperties)] - [InlineData(UpdatedHash.FingerprintPatterns)] - [InlineData(UpdatedHash.Overrides)] - public void DefineStaticWebAssetsCache_Recomputes_All_WhenPropertiesChange(UpdatedHash updated) - { - // Arrange - var (cache, inputHashes) = SetupCache(["input1", "input2"], ["input1", "input2"]); - - // Act - switch (updated) - { - case UpdatedHash.GlobalProperties: - cache.Update([1], [], [], inputHashes); - break; - case UpdatedHash.FingerprintPatterns: - cache.Update([], [1], [], inputHashes); - break; - case UpdatedHash.Overrides: - cache.Update([], [], [1], inputHashes); - break; - } - - Assert.False(cache.IsUpToDate()); - Assert.Same(inputHashes, cache.OutOfDateInputs()); - Assert.Empty(cache.CachedAssets); - Assert.Empty(cache.CachedCopyCandidates); - } - - [Fact] - public void DefineStaticWebAssetsCache_PartialUpdate_WhenOnlySome_InputsChange() - { - // Arrange - var (cache, inputHashes) = SetupCache(["input1"], ["input2"], appendCachedToInputHashes: true); - var cachedAsset = cache.CachedAssets.Values.Single(); - - // Act - cache.Update([], [], [], inputHashes); - - // Assert - Assert.False(cache.IsUpToDate()); - Assert.NotSame(inputHashes, cache.OutOfDateInputs()); - var input1 = Assert.Single(cache.OutOfDateInputs()); - var ouput = cache.GetComputedOutputs(); - var input2 = Assert.Single(ouput.Assets); - } - - [Fact] - public void DefineStaticWebAssetsCache_PartialUpdate_NewAssetsCanBeAddedToTheCache() - { - // Arrange - var (cache, inputHashes) = SetupCache(["input1"], ["input2"], appendCachedToInputHashes: true); - cache.Update([], [], [], inputHashes); - - // Act - var newAssetItem = inputHashes["input1"]; - var newAsset = new StaticWebAsset { Identity = newAssetItem.ItemSpec }; - cache.AppendAsset("input1", newAsset, newAssetItem); - - // Assert - Assert.False(cache.IsUpToDate()); - Assert.NotSame(inputHashes, cache.OutOfDateInputs()); - var input1 = Assert.Single(cache.OutOfDateInputs()); - Assert.Contains("input1", cache.CachedAssets.Keys); - - var ouput = cache.GetComputedOutputs(); - Assert.Equal(2, ouput.Assets.Count); - Assert.Equal("input2", ouput.Assets[0].ItemSpec); - Assert.Equal("input1", ouput.Assets[1].ItemSpec); - } - - [Fact] - public void DefineStaticWebAssetsCache_CanRoundtripManifest() - { - var manifestPath = Path.Combine(Environment.CurrentDirectory, "CanRoundtripManifest.json"); - if (File.Exists(manifestPath)) - { - File.Delete(manifestPath); - } - try - { - var (cache, inputHashes) = SetupCache([], [], appendCachedToInputHashes: true, manifestPath: manifestPath); - - var cachedAsset = CreateCandidate(Path.Combine(Environment.CurrentDirectory, "Input2.txt"), "Input2.txt"); - cache.InputHashes = ["input2"]; - cache.CachedAssets["input2"] = new StaticWebAsset { Identity = cachedAsset.ItemSpec, RelativePath = "Input2.txt" }; - inputHashes["input2"] = cachedAsset; - - var newAsset = CreateCandidate(Path.Combine(Environment.CurrentDirectory, "Input1.txt"), "Input1.txt"); - inputHashes["input1"] = newAsset; - - cache.Update([], [], [], inputHashes); - cache.AppendAsset("input1", new StaticWebAsset { Identity = newAsset.ItemSpec, RelativePath = "Input1.txt" }, newAsset); - cache.WriteCacheManifest(); - - var otherManifest = DefineStaticWebAssets.DefineStaticWebAssetsCache.ReadOrCreateCache(CreateLogger(), manifestPath); - Assert.Equal(cache.InputHashes, otherManifest.InputHashes); - Assert.Equal(cache.CachedAssets.Count, otherManifest.CachedAssets.Count); - Assert.Equal(cache.CachedAssets["input2"].Identity, otherManifest.CachedAssets["input2"].Identity); - Assert.Equal(cache.CachedAssets["input2"].RelativePath, otherManifest.CachedAssets["input2"].RelativePath); - Assert.Equal(cache.CachedAssets["input1"].Identity, otherManifest.CachedAssets["input1"].Identity); - Assert.Equal(cache.CachedAssets["input1"].RelativePath, otherManifest.CachedAssets["input1"].RelativePath); - } - finally - { - File.Delete(manifestPath); - } - } - private static TaskLoggingHelper CreateLogger() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - var loggingHelper = new TaskLoggingHelper(buildEngine.Object, "DefineStaticWebAssets"); - return loggingHelper; - } - - private (DefineStaticWebAssets.DefineStaticWebAssetsCache cache, Dictionary inputHashes) SetupCache( - string[] newAssets, - string[] cached, - bool appendCachedToInputHashes = false, - string manifestPath = null) - { - var loggingHelper = CreateLogger(); - var cache = DefineStaticWebAssets.DefineStaticWebAssetsCache.ReadOrCreateCache(loggingHelper, manifestPath); - cache.InputHashes = [.. cached]; - cache.CachedAssets = cached.ToDictionary(c => c, c => new StaticWebAsset { Identity = c }); - - return (cache, newAssets.Concat(appendCachedToInputHashes ? cached : []).ToDictionary(c => c, c => new TaskItem(c) as ITaskItem)); - } - - public enum UpdatedHash - { - GlobalProperties, - FingerprintPatterns, - Overrides - } - - private static ITaskItem CreateCandidate( - string itemSpec, - string relativePath = null, - string targetPath = null, - string link = null, - string copyToOutputDirectory = null, - string copyToPublishDirectory = null) - { - return new TaskItem(itemSpec, new Dictionary - { - ["RelativePath"] = relativePath ?? "", - ["TargetPath"] = targetPath ?? "", - ["Link"] = link ?? "", - ["CopyToOutputDirectory"] = copyToOutputDirectory ?? "", - ["CopyToPublishDirectory"] = copyToPublishDirectory ?? "", - // Add these to avoid accessing the disk to compute them - ["Integrity"] = "integrity", - ["Fingerprint"] = "fingerprint", - ["LastWriteTime"] = DateTime.UtcNow.ToString(StaticWebAsset.DateTimeAssetFormat), - ["FileLength"] = "10", - }); - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/FilterStaticWebAssetEndpointsTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/FilterStaticWebAssetEndpointsTest.cs deleted file mode 100644 index 07a9abf530f9..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/FilterStaticWebAssetEndpointsTest.cs +++ /dev/null @@ -1,316 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests.StaticWebAssets; -public class FilterStaticWebAssetEndpointsTest -{ - [Fact] - public void CanFilterEndpoints_ByAssetFile() - { - var assets = new[] { - CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), - CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), - CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), - CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), - CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), - CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), - }; - Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); - - var endpoints = CreateEndpoints(assets); - var expectedEndpoints = new[] { - endpoints[0], //index.css - endpoints[1], //index.fingerprint.css - endpoints[8], // other.html - endpoints[10] // other.fingerprint.html - }; - Array.Sort(expectedEndpoints); - var filterEndpointsTask = new FilterStaticWebAssetEndpoints() - { - Endpoints = endpoints.Select(endpoints => endpoints.ToTaskItem()).ToArray(), - Assets = - [ - // index.css - assets[0].ToTaskItem(), - // other.html - assets[4].ToTaskItem(), - ], - }; - - // Act - var result = filterEndpointsTask.Execute(); - - // Assert - result.Should().BeTrue(); - var filteredEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterEndpointsTask.FilteredEndpoints); - Array.Sort(filteredEndpoints); - filteredEndpoints.Should().HaveCount(4); - filteredEndpoints.Should().BeEquivalentTo(expectedEndpoints); - } - - [Fact] - public void CanFilterEndpoints_ByProperty() - { - var assets = new[] { - CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), - CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), - CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), - CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), - CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), - CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), - }; - Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); - - var endpoints = CreateEndpoints(assets); - var filterEndpointsTask = new FilterStaticWebAssetEndpoints() - { - Endpoints = endpoints.Select(endpoints => endpoints.ToTaskItem()).ToArray(), - Filters = [ - new TaskItem("Property", new Dictionary{ - ["Name"] = "fingerprint" - }) - ], - BuildEngine = Mock.Of() - }; - - // Act - var result = filterEndpointsTask.Execute(); - - // Assert - result.Should().BeTrue(); - var filteredEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterEndpointsTask.FilteredEndpoints); - Array.Sort(filteredEndpoints); - filteredEndpoints.Should().HaveCount(6); - filteredEndpoints.Should().AllSatisfy(e => e.EndpointProperties.Should().ContainSingle(p => p.Name == "fingerprint")); - } - - [Fact] - public void CanFilterEndpoints_ByResponseHeader() - { - var assets = new[] { - CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), - CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), - CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), - CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), - CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), - CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), - }; - Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); - - var endpoints = CreateEndpoints(assets); - var filterEndpointsTask = new FilterStaticWebAssetEndpoints() - { - Endpoints = endpoints.Select(endpoints => endpoints.ToTaskItem()).ToArray(), - Filters = [ - new TaskItem("Header", new Dictionary{ - ["Name"] = "Content-Type", - ["Value"] = "text/html" - }) - ], - BuildEngine = Mock.Of() - }; - - // Act - var result = filterEndpointsTask.Execute(); - - // Assert - result.Should().BeTrue(); - var filteredEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterEndpointsTask.FilteredEndpoints); - Array.Sort(filteredEndpoints); - filteredEndpoints.Should().HaveCount(4); - filteredEndpoints.Should().AllSatisfy(e => e.ResponseHeaders.Should().ContainSingle(p => p.Name == "Content-Type" && p.Value == "text/html")); - } - - [Fact] - public void CanFilterEndpoints_Standalone() - { - var assets = new[] { - CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), - CreateAsset("other.js", relativePath: "other#[.{fingerprint}]!.js"), - }; - Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); - - var endpoints = CreateEndpoints(assets); - var filterEndpointsTask = new FilterStaticWebAssetEndpoints() - { - Endpoints = endpoints.Select(endpoints => endpoints.ToTaskItem()).ToArray(), - Assets = [.. assets.Select(a => a.ToTaskItem())], - Filters = [ - new TaskItem("Standalone", new Dictionary{ }) - ], - BuildEngine = Mock.Of() - }; - - // Act - var result = filterEndpointsTask.Execute(); - - // Assert - result.Should().BeTrue(); - var filteredEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterEndpointsTask.FilteredEndpoints); - Array.Sort(filteredEndpoints); - filteredEndpoints.Should().HaveCount(2); - filteredEndpoints.Where(e => e.Route == "index.html").Should().ContainSingle(); - filteredEndpoints.Where(e => e.Route == "other.fingerprint.js").Should().ContainSingle(); - } - - [Fact] - public void CanFilterEndpoints_BySelector() - { - var assets = new[] { - CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), - CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), - CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), - CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), - CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), - CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), - }; - Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); - - var endpoints = CreateEndpoints(assets); - endpoints[0].Selectors = [new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip" }]; - var filterEndpointsTask = new FilterStaticWebAssetEndpoints() - { - Endpoints = endpoints.Select(endpoints => endpoints.ToTaskItem()).ToArray(), - Filters = [ - new TaskItem("Selector", new Dictionary{ - ["Name"] = "Content-Encoding", - ["Value"] = "gzip" - }) - ], - BuildEngine = Mock.Of() - }; - - // Act - var result = filterEndpointsTask.Execute(); - - // Assert - result.Should().BeTrue(); - var filteredEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterEndpointsTask.FilteredEndpoints); - Array.Sort(filteredEndpoints); - filteredEndpoints.Should().ContainSingle(); - filteredEndpoints[0].Route.Should().Be(endpoints[0].Route); - } - - [Fact] - public void CanFilterEndpoints_ByMultipleCriteria() - { - var assets = new[] { - CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), - CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), - CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), - CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), - CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), - CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), - }; - Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); - - var endpoints = CreateEndpoints(assets); - var filterEndpointsTask = new FilterStaticWebAssetEndpoints() - { - Endpoints = endpoints.Select(endpoints => endpoints.ToTaskItem()).ToArray(), - Filters = [ - new TaskItem("Header", new Dictionary{ - ["Name"] = "Content-Type", - ["Value"] = "text/html" - }), - new TaskItem("Property", new Dictionary{ - ["Name"] = "fingerprint" - }) - ], - BuildEngine = Mock.Of() - }; - - // Act - var result = filterEndpointsTask.Execute(); - - // Assert - result.Should().BeTrue(); - var filteredEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterEndpointsTask.FilteredEndpoints); - Array.Sort(filteredEndpoints); - filteredEndpoints.Should().HaveCount(2); - filteredEndpoints.Should().AllSatisfy(e => e.ResponseHeaders.Should().ContainSingle(p => p.Name == "Content-Type" && p.Value == "text/html")); - filteredEndpoints.Should().AllSatisfy(e => e.EndpointProperties.Should().ContainSingle(p => p.Name == "fingerprint")); - } - - private StaticWebAssetEndpoint[] CreateEndpoints(StaticWebAsset[] assets) - { - var defineStaticWebAssetEndpoints = new DefineStaticWebAssetEndpoints - { - CandidateAssets = assets.Select(a => a.ToTaskItem()).ToArray(), - ExistingEndpoints = [], - ContentTypeMappings = - [ - CreateContentMapping("*.html", "text/html"), - CreateContentMapping("*.js", "application/javascript"), - CreateContentMapping("*.css", "text/css"), - ] - }; - defineStaticWebAssetEndpoints.BuildEngine = Mock.Of(); - - defineStaticWebAssetEndpoints.Execute(); - return StaticWebAssetEndpoint.FromItemGroup(defineStaticWebAssetEndpoints.Endpoints); - } - - private static TaskItem CreateContentMapping(string pattern, string contentType) - { - return new TaskItem(contentType, new Dictionary - { - { "Pattern", pattern }, - { "Priority", "0" } - }); - } - - private static StaticWebAsset CreateAsset( - string itemSpec, - string sourceId = "MyApp", - string sourceType = "Discovered", - string relativePath = null, - string assetKind = "All", - string assetMode = "All", - string basePath = "base", - string assetRole = "Primary", - string relatedAsset = "", - string assetTraitName = "", - string assetTraitValue = "", - string copyToOutputDirectory = "Never", - string copytToPublishDirectory = "PreserveNewest") - { - var result = new StaticWebAsset() - { - Identity = Path.GetFullPath(itemSpec), - SourceId = sourceId, - SourceType = sourceType, - ContentRoot = Directory.GetCurrentDirectory(), - BasePath = basePath, - RelativePath = relativePath ?? itemSpec, - AssetKind = assetKind, - AssetMode = assetMode, - AssetRole = assetRole, - AssetMergeBehavior = StaticWebAsset.MergeBehaviors.PreferTarget, - AssetMergeSource = "", - RelatedAsset = relatedAsset, - AssetTraitName = assetTraitName, - AssetTraitValue = assetTraitValue, - CopyToOutputDirectory = copyToOutputDirectory, - CopyToPublishDirectory = copytToPublishDirectory, - OriginalItemSpec = itemSpec, - // Add these to avoid accessing the disk to compute them - Integrity = "integrity", - Fingerprint = "fingerprint", - FileLength = 10, - LastWriteTime = DateTime.UtcNow, - }; - - result.ApplyDefaults(); - result.Normalize(); - - return result; - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/FingerprintPatternMatcherTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/FingerprintPatternMatcherTest.cs deleted file mode 100644 index 9ada363aeb5f..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/FingerprintPatternMatcherTest.cs +++ /dev/null @@ -1,128 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using System.Collections; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; - -namespace Microsoft.NET.Sdk.Razor.Tests.StaticWebAssets; - -public class FingerprintPatternMatcherTest -{ - private readonly TaskLoggingHelper _log = new TestTaskLoggingHelper(); - - [Fact] - public void AppendFingerprintPattern_AlreadyContainsFingerprint_ReturnsIdentity() - { - // Arrange - var relativePath = "test#[.{fingerprint}].txt"; - - // Act - var result = new FingerprintPatternMatcher(_log, []).AppendFingerprintPattern(CreateMatchContext(relativePath), "Identity"); - - // Assert - Assert.Equal(relativePath, result); - } - - [Fact] - public void AppendFingerprintPattern_AppendsPattern_AtTheEndOfTheFileName() - { - // Arrange - var relativePath = Path.Combine("folder", "test.txt"); - var expected = Path.Combine("folder", "test#[.{fingerprint}]?.txt"); - - // Act - var result = new FingerprintPatternMatcher(_log, []).AppendFingerprintPattern(CreateMatchContext(relativePath), "Identity"); - - // Assert - Assert.Equal(expected, result); - } - - [Fact] - public void AppendFingerprintPattern_AppendsPattern_AtTheEndOfTheFileName_WhenFileNameContainsDots() - { - // Arrange - var relativePath = Path.Combine("folder", "test.v1.txt"); - var expected = Path.Combine("folder", "test.v1#[.{fingerprint}]?.txt"); - // Act - var result = new FingerprintPatternMatcher(_log, []).AppendFingerprintPattern(CreateMatchContext(relativePath), "Identity"); - // Assert - Assert.Equal(expected, result); - } - - [Fact] - public void AppendFingerprintPattern_AppendsPattern_AtTheEndOfTheFileName_WhenFileDoesNotHaveExtension() - { - // Arrange - var relativePath = Path.Combine("folder", "README"); - var expected = Path.Combine("folder", "README#[.{fingerprint}]?"); - // Act - var result = new FingerprintPatternMatcher(_log, []).AppendFingerprintPattern(CreateMatchContext(relativePath), "Identity"); - // Assert - Assert.Equal(expected, result); - } - - [Fact] - public void AppendFingerprintPattern_AppendsPattern_AtTheRightLocation_WhenACustomPatternIsProvided() - { - // Arrange - var relativePath = Path.Combine("folder", "test.bundle.scp.css"); - var expected = Path.Combine("folder", "test#[.{fingerprint}]!.bundle.scp.css"); - - // Act - var result = new FingerprintPatternMatcher( - _log, - [new TaskItem("ScopedCSS", new Dictionary { ["Pattern"] = "*.bundle.scp.css", ["Expression"] = "#[.{fingerprint}]!" })]) - .AppendFingerprintPattern(CreateMatchContext(relativePath), "Identity"); - - // Assert - Assert.Equal(expected, result); - } - - private StaticWebAssetGlobMatcher.MatchContext CreateMatchContext(string path) - { - var context = new StaticWebAssetGlobMatcher.MatchContext(); - context.SetPathAndReinitialize(path); - return context; - } - - private class TestTaskLoggingHelper : TaskLoggingHelper - { - public TestTaskLoggingHelper() : base(new TestTask()) - { - } - - private class TestTask : ITask - { - public IBuildEngine BuildEngine { get; set; } = new TestBuildEngine(); - public ITaskHost HostObject { get; set; } = new TestTaskHost(); - - public bool Execute() => true; - } - - private class TestBuildEngine : IBuildEngine - { - public bool ContinueOnError => true; - - public int LineNumberOfTaskNode => 0; - - public int ColumnNumberOfTaskNode => 0; - - public string ProjectFileOfTaskNode => "test.csproj"; - - public bool BuildProjectFile(string projectFileName, string[] targetNames, IDictionary globalProperties, IDictionary targetOutputs) => true; - - public void LogCustomEvent(CustomBuildEventArgs e) { } - public void LogErrorEvent(BuildErrorEventArgs e) { } - public void LogMessageEvent(BuildMessageEventArgs e) { } - public void LogWarningEvent(BuildWarningEventArgs e) { } - } - - private class TestTaskHost : ITaskHost - { - public object HostObject { get; set; } = new object(); - } - } - -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsManifestTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsManifestTest.cs deleted file mode 100644 index 714645aa096d..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsManifestTest.cs +++ /dev/null @@ -1,296 +0,0 @@ -// 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 System.Text.Json; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests.StaticWebAssets; - -public class GenerateStaticWebAssetEndpointsManifestTest -{ - [Fact] - public void GeneratesManifest_ForEndpointsWithTokens() - { - StaticWebAssetEndpoint[] expectedEndpoints = - [ - new() { - Route = "index.fingerprint.html", - AssetFile = "index.html", - Selectors = [], - ResponseHeaders = - [ - new() { - Name = "Accept-Ranges", - Value = "bytes" - }, - new() { - Name = "Cache-Control", - Value = "max-age=31536000, immutable" - }, - new() { - Name = "Content-Length", - Value = "10" - }, - new() { - Name = "Content-Type", - Value = "text/html" - }, - new() { - Name = "ETag", - Value = "\"integrity\"" - }, - new() { - Name = "Last-Modified", - Value = "Sat, 01 Jan 2000 00:00:01 GMT" - } - ], - EndpointProperties = - [ - new() { - Name = "fingerprint", - Value = "fingerprint" - }, - new() { - Name = "integrity", - Value = "sha256-integrity" - }, - new() { - Name = "label", - Value = "index.html" - } - ] - }, - new() { - Route = "index.fingerprint.js", - AssetFile = "index.fingerprint.js", - Selectors = [], - ResponseHeaders = - [ - new() { - Name = "Accept-Ranges", - Value = "bytes" - }, - new() { - Name = "Cache-Control", - Value = "max-age=31536000, immutable" - }, - new() { - Name = "Content-Length", - Value = "10" - }, - new() { - Name = "Content-Type", - Value = "text/javascript" - }, - new() { - Name = "ETag", - Value = "\"integrity\"" - }, - new() { - Name = "Last-Modified", - Value = "Sat, 01 Jan 2000 00:00:01 GMT" - } - ], - EndpointProperties = - [ - new() { - Name = "fingerprint", - Value = "fingerprint" - }, - new() { - Name = "integrity", - Value = "sha256-integrity" - }, - new() { - Name = "label", - Value = "index.js" - } - ] - }, - new() { - Route = "index.html", - AssetFile = "index.html", - Selectors = [], - ResponseHeaders = - [ - new() { - Name = "Accept-Ranges", - Value = "bytes" - }, - new() { - Name = "Cache-Control", - Value = "no-cache" - }, - new() { - Name = "Content-Length", - Value = "10" - }, - new() { - Name = "Content-Type", - Value = "text/html" - }, - new() { - Name = "ETag", - Value = "\"integrity\"" - }, - new() { - Name = "Last-Modified", - Value = "Sat, 01 Jan 2000 00:00:01 GMT" - } - ], - EndpointProperties = [ - new() { - Name = "integrity", - Value = "sha256-integrity" - }] - }, - new() { - Route = "index.js", - AssetFile = "index.fingerprint.js", - Selectors = [], - ResponseHeaders = - [ - new() { - Name = "Accept-Ranges", - Value = "bytes" - }, - new() { - Name = "Cache-Control", - Value = "no-cache" - }, - new() { - Name = "Content-Length", - Value = "10" - }, - new() { - Name = "Content-Type", - Value = "text/javascript" - }, - new() { - Name = "ETag", - Value = "\"integrity\"" - }, - new() { - Name = "Last-Modified", - Value = "Sat, 01 Jan 2000 00:00:01 GMT" - } - ], - EndpointProperties = [ - new() { - Name = "integrity", - Value = "sha256-integrity" - }] - } - ]; - Array.Sort(expectedEndpoints); - - var assets = new[] - { - CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), - CreateAsset("index.js", relativePath: "index#[.{fingerprint}]!.js"), - }; - Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); - - var endpoints = CreateEndpoints(assets); - - var path = Path.Combine(AppContext.BaseDirectory, Guid.NewGuid().ToString("N") + "endpoints.json"); - - var task = new GenerateStaticWebAssetEndpointsManifest - { - Assets = assets.Select(a => a.ToTaskItem()).ToArray(), - Endpoints = endpoints.Select(e => e.ToTaskItem()).ToArray(), - ManifestType = "Build", - Source = "MyApp", - ManifestPath = path, - BuildEngine = Mock.Of() - }; - - try - { - // Act - task.Execute(); - - // Assert - new FileInfo(path).Should().Exist(); - var manifest = File.ReadAllText(path); - var json = JsonSerializer.Deserialize(manifest); - json.Should().NotBeNull(); - json.Endpoints.Should().HaveCount(4); - Array.Sort(json.Endpoints); - json.Endpoints.Should().BeEquivalentTo(expectedEndpoints); - } - finally - { - if (File.Exists(path)) - { - File.Delete(path); - } - } - } - - private StaticWebAssetEndpoint[] CreateEndpoints(StaticWebAsset[] assets) - { - var defineStaticWebAssetEndpoints = new DefineStaticWebAssetEndpoints - { - CandidateAssets = assets.Select(a => a.ToTaskItem()).ToArray(), - ExistingEndpoints = [], - ContentTypeMappings = [] - }; - defineStaticWebAssetEndpoints.BuildEngine = Mock.Of(); - - defineStaticWebAssetEndpoints.Execute(); - return StaticWebAssetEndpoint.FromItemGroup(defineStaticWebAssetEndpoints.Endpoints); - } - - private static StaticWebAsset CreateAsset( - string itemSpec, - string sourceId = "MyApp", - string sourceType = "Discovered", - string relativePath = null, - string assetKind = "All", - string assetMode = "All", - string basePath = "base", - string assetRole = "Primary", - string relatedAsset = "", - string assetTraitName = "", - string assetTraitValue = "", - string copyToOutputDirectory = "Never", - string copytToPublishDirectory = "PreserveNewest") - { - var result = new StaticWebAsset() - { - Identity = Path.GetFullPath(itemSpec), - SourceId = sourceId, - SourceType = sourceType, - ContentRoot = Directory.GetCurrentDirectory(), - BasePath = basePath, - RelativePath = relativePath ?? itemSpec, - AssetKind = assetKind, - AssetMode = assetMode, - AssetRole = assetRole, - AssetMergeBehavior = StaticWebAsset.MergeBehaviors.PreferTarget, - AssetMergeSource = "", - RelatedAsset = relatedAsset, - AssetTraitName = assetTraitName, - AssetTraitValue = assetTraitValue, - CopyToOutputDirectory = copyToOutputDirectory, - CopyToPublishDirectory = copytToPublishDirectory, - OriginalItemSpec = itemSpec, - // Add these to avoid accessing the disk to compute them - Integrity = "integrity", - Fingerprint = "fingerprint", - FileLength = 10, - LastWriteTime = new DateTime(2000, 1, 1, 0, 0, 1) - }; - - result.ApplyDefaults(); - result.Normalize(); - - return result; - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsPropsFileTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsPropsFileTest.cs deleted file mode 100644 index db86ce0c9efc..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetEndpointsPropsFileTest.cs +++ /dev/null @@ -1,227 +0,0 @@ -// 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 System.Net; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; -using NuGet.ContentModel; - -namespace Microsoft.NET.Sdk.Razor.Tests.StaticWebAssets; - -public class GenerateStaticWebAssetEndpointsPropsFileTest -{ - [Fact] - public void Generates_ValidEndpointsDefinitions() - { - // Arrange - var file = Path.GetTempFileName(); - var expectedDocument = """ - - - - $([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)..\staticwebassets\js\sample.js)) - - - - - - -"""; - - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new GenerateStaticWebAssetEndpointsPropsFile - { - BuildEngine = buildEngine.Object, - StaticWebAssets = - [ - CreateStaticWebAsset( - Path.Combine("wwwroot","js","sample.js"), - "MyLibrary", - "Discovered", - Path.Combine("js", "sample.js"), - "All", - "All") - ], - StaticWebAssetEndpoints = - [ - CreateStaticWebAssetEndpoint( - Path.Combine("js", "sample.js"), - Path.GetFullPath(Path.Combine("wwwroot","js","sample.js")), - [ - new StaticWebAssetEndpointResponseHeader - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Content-Length", - Value = "10" - } - ], - [ - new StaticWebAssetEndpointSelector - { - Name = "Content-Encoding", - Value = "gzip", - Quality = "0.1" - } - ], - [ - new StaticWebAssetEndpointProperty - { - Name = "integrity", - Value = "__integrity__" - } - ]) - ], - PackagePathPrefix = "staticwebassets", - TargetPropsFilePath = file - }; - - // Act - try - { - var result = task.Execute(); - - result.Should().BeTrue(); - new FileInfo(file).Should().Exist(); - var document = File.ReadAllText(file); - document.Should().BeVisuallyEquivalentTo(expectedDocument); - } - finally - { - if (File.Exists(file)) - { - try - { - File.Delete(file); - } - catch - { - } - } - } - } - - [Fact] - public void Fails_WhenEndpointWithoutAssetExists() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new GenerateStaticWebAssetEndpointsPropsFile - { - BuildEngine = buildEngine.Object, - StaticWebAssets = [], - StaticWebAssetEndpoints = - [ - CreateStaticWebAssetEndpoint( - Path.Combine("js", "sample.js").Replace('\\', '/'), - Path.GetFullPath(Path.Combine("wwwroot","js","sample.js")), - [ - new StaticWebAssetEndpointResponseHeader - { - Name = "Accept-Ranges", - Value = "bytes" - }, - new StaticWebAssetEndpointResponseHeader - { - Name = "Content-Length", - Value = "10" - } - ], - [ - new StaticWebAssetEndpointSelector - { - Name = "Content-Encoding", - Value = "gzip", - Quality = "0.1" - } - ], - [ - new StaticWebAssetEndpointProperty - { - Name = "integrity", - Value = "__integrity__" - } - ]) - ], - PackagePathPrefix = "staticwebassets", - TargetPropsFilePath = Path.GetTempFileName(), - }; - - // Act - var result = task.Execute(); - - result.Should().BeFalse(); - errorMessages.Should().ContainSingle(); - errorMessages[0].Should().Be($"""The asset file '{Path.GetFullPath(Path.Combine("wwwroot", "js", "sample.js"))}' specified in the endpoint '{Path.Combine("js","sample.js").Replace('\\', '/')}' does not exist."""); - } - - private static ITaskItem CreateStaticWebAsset( - string itemSpec, - string sourceId, - string sourceType, - string relativePath, - string assetKind, - string assetMode) - { - var result = new StaticWebAsset() - { - Identity = Path.GetFullPath(itemSpec), - SourceId = sourceId, - SourceType = sourceType, - ContentRoot = Directory.GetCurrentDirectory(), - BasePath = "base", - RelativePath = relativePath, - AssetKind = assetKind, - AssetMode = assetMode, - AssetRole = "Primary", - RelatedAsset = "", - AssetTraitName = "", - AssetTraitValue = "", - CopyToOutputDirectory = "", - CopyToPublishDirectory = "", - OriginalItemSpec = itemSpec, - // Add these to avoid accessing the disk to compute them - Integrity = "integrity", - Fingerprint = "fingerprint", - FileLength = 10, - LastWriteTime = DateTime.UtcNow, - }; - - result.ApplyDefaults(); - result.Normalize(); - - return result.ToTaskItem(); - } - - private static ITaskItem CreateStaticWebAssetEndpoint( - string route, - string assetFile, - StaticWebAssetEndpointResponseHeader[] responseHeaders = null, - StaticWebAssetEndpointSelector[] responseSelector = null, - StaticWebAssetEndpointProperty[] properties = null) - { - return new StaticWebAssetEndpoint - { - Route = route, - AssetFile = Path.GetFullPath(assetFile), - ResponseHeaders = responseHeaders ?? [], - EndpointProperties = properties ?? [], - Selectors = responseSelector ?? [] - }.ToTaskItem(); - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetsDevelopmentManifestTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetsDevelopmentManifestTest.cs deleted file mode 100644 index b62959c142d7..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetsDevelopmentManifestTest.cs +++ /dev/null @@ -1,755 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Moq; -using static Microsoft.AspNetCore.StaticWebAssets.Tasks.GenerateStaticWebAssetsDevelopmentManifest; - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - public class GenerateStaticWebAssetsDevelopmentManifestTest - { - [Fact] - public void SkipsManifestGenerationWhen_ThereAreNoAssetsNorDiscoveryPatterns() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - Assets = Array.Empty(), - DiscoveryPatterns = Array.Empty() - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeTrue(); - messages.Should().HaveCount(1); - } - - [Fact] - public void ComputeDevelopmentManifest_IncludesBuildAssets() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - ("index.html", CreateMatchNode(0, "index.html"))), - Environment.CurrentDirectory); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - }; - - var assets = new[] { CreateAsset("index.html", "index.html", assetKind: StaticWebAsset.AssetKinds.Build) }; - var patterns = Array.Empty(); - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - - [Theory] - [InlineData("#[.{fingerprint}]?", "index.html", "optional.html")] - [InlineData("#[.{fingerprint}]!", "index.fingerprint.html", "preferred.html")] - [InlineData("#[.{fingerprint}]", "index.fingerprint.html", "required.html")] - public void ComputeDevelopmentManifest_ReplacesAssetTokens(string fingerprintExpression, string path, string fileName) - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - (path, CreateMatchNode(0, path))), - Environment.CurrentDirectory); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - }; - - var assets = new[] { CreateAsset(fileName, $"index{fingerprintExpression}.html", assetKind: StaticWebAsset.AssetKinds.All) }; - var patterns = Array.Empty(); - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - - [Theory] - [InlineData("#[.{fingerprint}]?", "index.html", "optional.html")] - [InlineData("#[.{fingerprint}]!", "index.fingerprint.html", "preferred.html")] - [InlineData("#[.{fingerprint}]", "index.fingerprint.html", "required.html")] - public void ComputeDevelopmentManifest_ReplacesAssetTokens_FileExists(string fingerprintExpression, string path, string subPath) - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - (path, CreateMatchNode(0, subPath))), - Environment.CurrentDirectory); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - }; - - var assets = new[] { CreateAsset(subPath, $"index{fingerprintExpression}.html", assetKind: StaticWebAsset.AssetKinds.All) }; - var patterns = Array.Empty(); - - var fileName = Path.Combine(Environment.CurrentDirectory, subPath); - try - { - File.WriteAllText(fileName, "content"); - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - finally - { - if (File.Exists(fileName)) - { - File.Delete(fileName); - } - } - } - - [Fact] - public void ComputeDevelopmentManifest_UsesIdentitySubpath_WhenFileExists_AndContentRoot_IsPrefix() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - ("_framework", - CreateIntermediateNode( - ("dotnet.native.fingerprint.js.gz", CreateMatchNode(0, "blob-hash.gz"))))), - Environment.CurrentDirectory); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - }; - - var fileName = Path.Combine(Environment.CurrentDirectory, "blob-hash.gz"); - try - { - File.WriteAllText(fileName, "content"); - var assets = new[] { CreateAsset( - fileName, - $$"""_framework/dotnet.native#[.{fingerprint}]!.js.gz""", - contentRoot: Environment.CurrentDirectory, - assetKind: StaticWebAsset.AssetKinds.All) }; - var patterns = Array.Empty(); - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - finally - { - if (File.Exists(fileName)) - { - File.Delete(fileName); - } - } - } - - [Fact] - public void ComputeDevelopmentManifest_UsesRelativePath_ReplacesAssetTokens_WhenFileDoesNotExist_AtIdentity() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - ("_framework", - CreateIntermediateNode( - ("dotnet.native.fingerprint.js", CreateMatchNode(0, "_framework/dotnet.native.fingerprint.js"))))), - Environment.CurrentDirectory); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - }; - - var fileName = Path.Combine(Environment.CurrentDirectory, "dotnet.native.js"); - var assets = new[] { CreateAsset( - fileName, - $$"""_framework/dotnet.native#[.{fingerprint}]!.js""", - contentRoot: Environment.CurrentDirectory, - assetKind: StaticWebAsset.AssetKinds.All) }; - var patterns = Array.Empty(); - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - - [Fact] - public void ComputeDevelopmentManifest_IncludesAllAssets() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - ("index.html", CreateMatchNode(0, "index.html"))), - Environment.CurrentDirectory); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - }; - - var assets = new[] { CreateAsset("index.html", "index.html", assetKind: StaticWebAsset.AssetKinds.All) }; - var patterns = Array.Empty(); - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - - [Fact] - public void ComputeDevelopmentManifest_ExcludesPublishAssets() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode()); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - }; - - var assets = new[] { CreateAsset("index.html", "index.html", assetKind: StaticWebAsset.AssetKinds.Publish) }; - var patterns = Array.Empty(); - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - - [Fact] - public void ComputeDevelopmentManifest_ExcludesReferenceAssets() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode()); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - Source = "CurrentProjectId" - }; - - var assets = new[] { CreateAsset("index.html", "index.html", assetMode: StaticWebAsset.AssetModes.Reference) }; - var patterns = Array.Empty(); - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - - [Fact] - public void ComputeDevelopmentManifest_PrefersBuildAssetsOverAllAssets() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - ("index.html", CreateMatchNode(0, "index.build.html"))), - Environment.CurrentDirectory); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - Source = "CurrentProjectId" - }; - - var assets = new[] { - CreateAsset("index.build.html", "index.html", assetKind: StaticWebAsset.AssetKinds.Build), - CreateAsset("index.html", "index.html", assetKind: StaticWebAsset.AssetKinds.All) - }; - var patterns = Array.Empty(); - - var fileName = Path.Combine(Environment.CurrentDirectory, "index.build.html"); - try - { - File.WriteAllText(fileName, "content"); - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - finally - { - if (File.Exists(fileName)) - { - File.Delete(fileName); - } - } - } - - [Fact] - public void ComputeDevelopmentManifest_UsesIdentityWhenContentRootStartsByIdentity() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var filePath = Path.Combine("some", "subfolder", "index.build.html"); - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - ("index.html", CreateMatchNode(0, StaticWebAsset.Normalize(filePath)))), - Environment.CurrentDirectory); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - Source = "CurrentProjectId" - }; - - var assets = new[] { - CreateAsset(filePath, "index.html"), - }; - var patterns = Array.Empty(); - - try - { - Directory.CreateDirectory(Path.GetDirectoryName(filePath)); - File.WriteAllText(filePath, "content"); - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - finally - { - if (File.Exists(filePath)) - { - File.Delete(filePath); - } - } - } - - [Fact] - public void ComputeDevelopmentManifest_UsesRelativePathContentRootDoesNotStartByIdentity() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - ("index.html", CreateMatchNode(0, "index.html"))), - Path.GetFullPath(Path.Combine("bin", "debug", "wwwroot"))); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - Source = "CurrentProjectId" - }; - - var assets = new[] { - CreateAsset(Path.Combine("some", "subfolder", "index.build.html"), "index.html", contentRoot: Path.Combine("bin", "debug", "wwwroot")), - }; - var patterns = Array.Empty(); - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - - [Fact] - public void ComputeDevelopmentManifest_MapsPatternsFromCurrentProject() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode() - .AddPatterns((0, "**", 0)), - Path.GetFullPath("wwwroot")); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - Source = "CurrentProjectId" - }; - - var assets = Array.Empty(); - var patterns = new[] { CreatePattern() }; - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - - [Fact] - public void ComputeDevelopmentManifest_MapsPatternsFromOtherProjects() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - ("_other", CreateIntermediateNode( - ("_project", CreateIntermediateNode().AddPatterns((0, "**", 2)))))), - Path.GetFullPath("wwwroot")); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - Source = "CurrentProjectId" - }; - - var assets = Array.Empty(); - var patterns = new[] { CreatePattern(basePath: "_other/_project", source: "OtherProject") }; - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - - [Fact] - public void ComputeDevelopmentManifest_CanMapMultiplePatternsOnSameNode() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - ("_other", CreateIntermediateNode( - ("_project", CreateIntermediateNode().AddPatterns( - (0, "*.js", 2), - (0, "*.css", 2)))))), - Path.GetFullPath("wwwroot")); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - Source = "CurrentProjectId" - }; - - var assets = Array.Empty(); - var patterns = new[] - { - CreatePattern(basePath: "_other/_project", source: "OtherProject", pattern: "*.js"), - CreatePattern(basePath: "_other/_project", source: "OtherProject", pattern: "*.css") - }; - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - - [Fact] - public void ComputeDevelopmentManifest_CanMapMultiplePatternsOnSameNodeWithDifferentContentRoots() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - ("_other", CreateIntermediateNode( - ("_project", CreateIntermediateNode().AddPatterns( - (0, "*.css", 2), - (1, "*.js", 2)))))), - Path.GetFullPath("wwwroot"), - Path.GetFullPath("styles")); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - Source = "CurrentProjectId" - }; - - var assets = Array.Empty(); - var patterns = new[] - { - CreatePattern(basePath: "_other/_project", source: "OtherProject", pattern: "*.js"), - CreatePattern(basePath: "_other/_project", source: "OtherProject", pattern: "*.css", contentRoot: Path.GetFullPath("styles")) - }; - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - - [Fact] - public void ComputeDevelopmentManifest_MultipleAssetsSameContentRoot() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - ("css", CreateIntermediateNode(("site.css", CreateMatchNode(0, "css/site.css")))), - ("js", CreateIntermediateNode(("index.js", CreateMatchNode(0, "js/index.js"))))), - Environment.CurrentDirectory); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - Source = "CurrentProjectId" - }; - - var assets = new[] - { - CreateAsset(Path.Combine(Environment.CurrentDirectory, "css", "site.css"), "css/site.css"), - CreateAsset(Path.Combine(Environment.CurrentDirectory, "js", "index.js"), "js/index.js") - }; - - var patterns = Array.Empty(); - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - - [Fact] - public void ComputeDevelopmentManifest_DifferentCasingEndUpInDifferentNodes() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - ("css", CreateIntermediateNode(("site.css", CreateMatchNode(0, "css/site.css")))), - ("CSS", CreateIntermediateNode(("site.css", CreateMatchNode(0, "CSS/site.css"))))), - Environment.CurrentDirectory); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - Source = "CurrentProjectId" - }; - - var assets = new[] - { - CreateAsset(Path.Combine(Environment.CurrentDirectory, "css", "site.css"), "css/site.css"), - CreateAsset(Path.Combine(Environment.CurrentDirectory, "CSS", "site.css"), "CSS/site.css"), - }; - - var patterns = Array.Empty(); - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - - [Fact] - public void ComputeDevelopmentManifest_UsesBasePathForAssetsFromDifferentProjects() - { - // Arrange - var messages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogMessageEvent(It.IsAny())) - .Callback(args => messages.Add(args.Message)); - - var expectedManifest = CreateExpectedManifest( - CreateIntermediateNode( - ("css", CreateIntermediateNode(("site.css", CreateMatchNode(0, "css/site.css")))), - ("_content", CreateIntermediateNode( - ("OtherProject", CreateIntermediateNode( - ("CSS", CreateIntermediateNode(("site.css", CreateMatchNode(1, "CSS/site.css"))))))))), - Environment.CurrentDirectory, - Path.GetFullPath("otherProject")); - - var task = new GenerateStaticWebAssetsDevelopmentManifest() - { - BuildEngine = buildEngine.Object, - Source = "CurrentProjectId" - }; - - var assets = new[] - { - CreateAsset(Path.Combine(Environment.CurrentDirectory, "css", "site.css"), "css/site.css"), - CreateAsset( - Path.Combine(Environment.CurrentDirectory, "CSS", "site.css"), - "CSS/site.css", - basePath: "_content/OtherProject", - sourceType: "Project", - contentRoot: Path.GetFullPath("otherProject")), - }; - - var patterns = Array.Empty(); - - // Act - var manifest = task.ComputeDevelopmentManifest(assets, patterns); - - // Assert - manifest.Should().BeEquivalentTo(expectedManifest); - } - - private static StaticWebAssetsDiscoveryPattern CreatePattern( - string name = null, - string contentRoot = null, - string pattern = null, - string basePath = null, - string source = null) => - new() - { - Name = name ?? "CurrentProjectId\\wwwroot", - Pattern = pattern ?? "**", - BasePath = basePath ?? "_content/CurrentProjectId", - Source = source ?? "CurrentProjectId", - ContentRoot = StaticWebAsset.NormalizeContentRootPath(contentRoot ?? Path.Combine(Environment.CurrentDirectory, "wwwroot")) - }; - - private static StaticWebAssetsDevelopmentManifest CreateExpectedManifest(StaticWebAssetNode root, params string[] contentRoots) - { - return new StaticWebAssetsDevelopmentManifest() - { - ContentRoots = contentRoots.Select(cr => StaticWebAsset.NormalizeContentRootPath(cr)).ToArray(), - Root = root - }; - } - - private static StaticWebAssetNode CreateIntermediateNode(params (string key, StaticWebAssetNode node)[] children) => new() - { - Children = children.Length == 0 ? null : children.ToDictionary(pair => pair.key, pair => pair.node) - }; - - private static StaticWebAssetNode CreateMatchNode(int index, string subpath) => new() - { - Asset = new StaticWebAssetMatch { ContentRootIndex = index, SubPath = subpath } - }; - - private static StaticWebAsset CreateAsset( - string identity, - string relativePath, - string assetKind = default, - string assetMode = default, - string sourceId = default, - string sourceType = default, - string basePath = default, - string contentRoot = default) - { - return new StaticWebAsset() - { - Identity = Path.GetFullPath(identity), - SourceId = sourceId ?? "CurrentProjectId", - SourceType = sourceType ?? StaticWebAsset.SourceTypes.Discovered, - BasePath = basePath ?? "_content/Base", - RelativePath = relativePath, - AssetKind = assetKind ?? StaticWebAsset.AssetKinds.All, - AssetMode = assetMode ?? StaticWebAsset.AssetModes.All, - AssetRole = StaticWebAsset.AssetRoles.Primary, - Fingerprint = "fingerprint", - ContentRoot = StaticWebAsset.NormalizeContentRootPath(contentRoot ?? Environment.CurrentDirectory), - OriginalItemSpec = identity - }; - } - } - - internal static class StaticWebAssetNodeTestExtensions - { - public static StaticWebAssetNode AddPatterns(this StaticWebAssetNode node, params (int contentRoot, string pattern, int depth)[] patterns) - { - node.Patterns = patterns.Select(p => new StaticWebAssetPattern { ContentRootIndex = p.contentRoot, Pattern = p.pattern, Depth = p.depth }).ToArray(); - return node; - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetsManifestTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetsManifestTest.cs deleted file mode 100644 index 6a77cd67ec03..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetsManifestTest.cs +++ /dev/null @@ -1,460 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - public class GenerateStaticWebAssetsManifestTest - { - public GenerateStaticWebAssetsManifestTest() - { - Directory.CreateDirectory(Path.Combine(TestContext.Current.TestExecutionDirectory, nameof(GenerateStaticWebAssetsManifestTest))); - TempFilePath = Path.Combine(TestContext.Current.TestExecutionDirectory, nameof(GenerateStaticWebAssetsManifestTest), Guid.NewGuid().ToString("N") + ".json"); - } - - public string TempFilePath { get; } - - [Fact] - public void CanGenerateEmptyManifest() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - // GetTempFilePath automatically creates the file, which interferes with the test. - File.Delete(TempFilePath); - - var task = new GenerateStaticWebAssetsManifest - { - BuildEngine = buildEngine.Object, - Assets = Array.Empty(), - Endpoints = Array.Empty(), - ReferencedProjectsConfigurations = Array.Empty(), - DiscoveryPatterns = Array.Empty(), - BasePath = "/", - Source = "MyProject", - ManifestType = "Build", - Mode = "Default", - ManifestPath = TempFilePath, - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var manifest = StaticWebAssetsManifest.FromJsonString(File.ReadAllText(TempFilePath)); - manifest.Should().NotBeNull(); - manifest.Assets.Should().BeNullOrEmpty(); - manifest.Endpoints.Should().BeNullOrEmpty(); - manifest.DiscoveryPatterns.Should().BeNullOrEmpty(); - manifest.ReferencedProjectsConfiguration.Should().BeNullOrEmpty(); - manifest.Version.Should().Be(1); - manifest.Hash.Should().NotBeNullOrWhiteSpace(); - manifest.Mode.Should().Be("Default"); - manifest.ManifestType.Should().Be("Build"); - manifest.BasePath.Should().Be("/"); - manifest.Source.Should().Be("MyProject"); - } - - [Fact] - public void GeneratesManifestWithAssets() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - // GetTempFilePath automatically creates the file, which interferes with the test. - File.Delete(TempFilePath); - var asset = CreateAsset(Path.Combine("wwwroot", "candidate.js"), "MyProject", "Computed", "candidate.js", "All", "All"); - var endpoint = CreateEndpoint(asset); - var task = new GenerateStaticWebAssetsManifest - { - BuildEngine = buildEngine.Object, - Assets = new[] - { - asset.ToTaskItem() - }, - Endpoints = [endpoint.ToTaskItem()], - ReferencedProjectsConfigurations = Array.Empty(), - DiscoveryPatterns = Array.Empty(), - BasePath = "/", - Source = "MyProject", - ManifestType = "Build", - Mode = "Default", - ManifestPath = TempFilePath, - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var manifest = StaticWebAssetsManifest.FromJsonString(File.ReadAllText(TempFilePath)); - manifest.Should().NotBeNull(); - manifest.Assets.Should().HaveCount(1); - var newAsset = manifest.Assets[0]; - newAsset.Should().Be(asset); - manifest.Endpoints.Should().HaveCount(1); - var newEndpoint = manifest.Endpoints[0]; - newEndpoint.Should().Be(endpoint); - } - - private static StaticWebAssetEndpoint CreateEndpoint(StaticWebAsset asset) - { - return new StaticWebAssetEndpoint - { - Route = asset.ComputeTargetPath("", '/'), - AssetFile = asset.Identity, - Selectors = [], - EndpointProperties = [], - ResponseHeaders = - [ - new() - { - Name = "Content-Type", - Value = "__content-type__" - }, - new() - { - Name = "Content-Length", - Value = "__content-length__", - }, - new() - { - Name = "ETag", - Value = "__etag__", - }, - new() - { - Name = "Last-Modified", - Value = "__last-modified__" - }, - new() - { - Name = "Accept-Ranges", - Value = "bytes" - } - ] - }; - } - - public static TheoryData> GeneratesManifestFailsWhenInvalidAssetsAreProvidedData - { - get - { - var theoryData = new TheoryData> - { - a => a.SourceId = "", - a => a.SourceType = "", - a => a.RelativePath = "", - a => a.ContentRoot = "", - a => a.OriginalItemSpec = "", - a => a.AssetKind = "", - a => a.AssetRole = "", - a => a.AssetMode = "", - a => - { - a.AssetRole = "Related"; - a.RelatedAsset = ""; - }, - a => - { - a.AssetRole = "Alternative"; - a.RelatedAsset = ""; - } - }; - - return theoryData; - } - } - - [Theory] - [MemberData(nameof(GeneratesManifestFailsWhenInvalidAssetsAreProvidedData))] - public void GeneratesManifestFailsWhenInvalidAssetsAreProvided(Action change) - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - // GetTempFilePath automatically creates the file, which interferes with the test. - File.Delete(TempFilePath); - var asset = CreateAsset(Path.Combine("wwwroot", "candidate.js"), "MyProject", "Computed", "candidate.js", "All", "All"); - change(asset); - var task = new GenerateStaticWebAssetsManifest - { - BuildEngine = buildEngine.Object, - Assets = new[] - { - asset.ToTaskItem() - }, - Endpoints = Array.Empty(), - ReferencedProjectsConfigurations = Array.Empty(), - DiscoveryPatterns = Array.Empty(), - BasePath = "/", - Source = "MyProject", - ManifestType = "Build", - Mode = "Default", - ManifestPath = TempFilePath, - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(false); - } - - public static TheoryData GeneratesManifestFailsWhenTwoAssetsEndUpOnTheSamePathData - { - get - { - var data = new TheoryData - { - // Duplicate assets - { - CreateAsset(Path.Combine("wwwroot", "candidate.js"), "MyProject", "Computed", "candidate.js", "All", "All"), - CreateAsset(Path.Combine("wwwroot", "candidate.js"), "MyProject", "Computed", "candidate.js", "All", "All") - }, - - // Conflicting Build asssets from different projects - { - CreateAsset(Path.Combine("wwwroot", "candidate.js"), "Package", "Package", "candidate.js", "All", "Build"), - CreateAsset(Path.Combine("wwwroot", "candidate.js"), "OtherProject", "Project", "candidate.js", "All", "Build") - }, - - // Conflicting Publish asssets from different projects - { - CreateAsset(Path.Combine("wwwroot", "candidate.js"), "Package", "Package", "candidate.js", "All", "Publish"), - CreateAsset(Path.Combine("wwwroot", "candidate.js"), "OtherProject", "Project", "candidate.js", "All", "Publish") - }, - - // Conflicting All asssets from different projects - { - CreateAsset(Path.Combine("wwwroot", "candidate.js"), "Package", "Package", "candidate.js", "All", "All"), - CreateAsset(Path.Combine("wwwroot", "candidate.js"), "OtherProject", "Project", "candidate.js", "All", "All") - }, - - // Assets with compatible kinds but from different projects - { - CreateAsset(Path.Combine("wwwroot", "candidate.js"), "MyProject", "Computed", "candidate.js", "All", "Build"), - CreateAsset(Path.Combine("wwwroot", "candidate.js"), "Other", "Project", "candidate.js", "All", "Publish") - } - }; - - return data; - } - } - - [Theory] - [MemberData(nameof(GeneratesManifestFailsWhenTwoAssetsEndUpOnTheSamePathData))] - public void GeneratesManifestFailsWhenTwoAssetsEndUpOnTheSamePath(StaticWebAsset first, StaticWebAsset second) - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - // GetTempFilePath automatically creates the file, which interferes with the test. - File.Delete(TempFilePath); - var task = new GenerateStaticWebAssetsManifest - { - BuildEngine = buildEngine.Object, - Assets = new[] - { - first.ToTaskItem(), - second.ToTaskItem() - }, - Endpoints = Array.Empty(), - ReferencedProjectsConfigurations = Array.Empty(), - DiscoveryPatterns = Array.Empty(), - BasePath = "/", - Source = "MyProject", - ManifestType = "Build", - Mode = "Default", - ManifestPath = TempFilePath, - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(false); - } - - - [Fact] - public void GeneratesManifestWithReferencedProjectConfigurations() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - // GetTempFilePath automatically creates the file, which interferes with the test. - File.Delete(TempFilePath); - var projectReference = CreateProjectReferenceConfiguration(2, "Other"); - var task = new GenerateStaticWebAssetsManifest - { - BuildEngine = buildEngine.Object, - Assets = Array.Empty(), - Endpoints = Array.Empty(), - ReferencedProjectsConfigurations = new[] { projectReference.ToTaskItem() }, - DiscoveryPatterns = Array.Empty(), - BasePath = "/", - Source = "MyProject", - ManifestType = "Build", - Mode = "Default", - ManifestPath = TempFilePath, - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var manifest = StaticWebAssetsManifest.FromJsonString(File.ReadAllText(TempFilePath)); - manifest.Should().NotBeNull(); - manifest.ReferencedProjectsConfiguration.Should().HaveCount(1); - var newProjectConfig = manifest.ReferencedProjectsConfiguration[0]; - newProjectConfig.Should().Be(projectReference); - } - - [Fact] - public void GeneratesManifestWithDiscoveryPatterns() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - // GetTempFilePath automatically creates the file, which interferes with the test. - File.Delete(TempFilePath); - - var candidatePattern = CreatePatternCandidate(Path.Combine("MyProject", "wwwroot"), "base", "wwwroot/**", "MyProject"); - var task = new GenerateStaticWebAssetsManifest - { - BuildEngine = buildEngine.Object, - Assets = Array.Empty(), - Endpoints = Array.Empty(), - ReferencedProjectsConfigurations = Array.Empty(), - DiscoveryPatterns = new[] { candidatePattern.ToTaskItem() }, - BasePath = "/", - Source = "MyProject", - ManifestType = "Build", - Mode = "Default", - ManifestPath = TempFilePath, - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var manifest = StaticWebAssetsManifest.FromJsonString(File.ReadAllText(TempFilePath)); - manifest.Should().NotBeNull(); - manifest.DiscoveryPatterns.Should().HaveCount(1); - var newProjectConfig = manifest.DiscoveryPatterns[0]; - newProjectConfig.Should().Be(candidatePattern); - } - - private static StaticWebAssetsManifest.ReferencedProjectConfiguration CreateProjectReferenceConfiguration( - int version, - string source, - string publishTargets = "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - string additionalPublishProperties = ";", - string additionalPublishPropertiesToRemove = ";WebPublishProfileFile", - string buildTargets = "GetCurrentProjectBuildStaticWebAssetItems", - string additionalBuildProperties = ";", - string additionalBuildPropertiesToRemove = ";WebPublishProfileFile") - { - var result = new StaticWebAssetsManifest.ReferencedProjectConfiguration - { - Identity = Path.GetFullPath(Path.Combine(Directory.GetCurrentDirectory(), $"{source}.csproj")), - Version = version, - Source = source, - GetPublishAssetsTargets = publishTargets, - AdditionalPublishProperties = additionalPublishProperties, - AdditionalPublishPropertiesToRemove = additionalPublishPropertiesToRemove, - GetBuildAssetsTargets = buildTargets, - AdditionalBuildProperties = additionalBuildProperties, - AdditionalBuildPropertiesToRemove = additionalBuildPropertiesToRemove - }; - - return result; - } - - private static StaticWebAsset CreateAsset( - string itemSpec, - string sourceId, - string sourceType, - string relativePath, - string assetKind, - string assetMode, - string basePath = "base", - string assetRole = "Primary", - string relatedAsset = "", - string assetTraitName = "", - string assetTraitValue = "", - string copyToOutputDirectory = "Never", - string copytToPublishDirectory = "PreserveNewest") - { - var result = new StaticWebAsset() - { - Identity = Path.GetFullPath(itemSpec), - SourceId = sourceId, - SourceType = sourceType, - ContentRoot = Directory.GetCurrentDirectory(), - BasePath = basePath, - RelativePath = relativePath, - AssetKind = assetKind, - AssetMode = assetMode, - AssetRole = assetRole, - AssetMergeBehavior = StaticWebAsset.MergeBehaviors.PreferTarget, - AssetMergeSource = "", - RelatedAsset = relatedAsset, - AssetTraitName = assetTraitName, - AssetTraitValue = assetTraitValue, - CopyToOutputDirectory = copyToOutputDirectory, - CopyToPublishDirectory = copytToPublishDirectory, - OriginalItemSpec = itemSpec, - // Add these to avoid accessing the disk to compute them - Integrity = "integrity", - Fingerprint = "fingerprint", - LastWriteTime = new DateTimeOffset(2023, 10, 1, 0, 0, 0, TimeSpan.Zero), - FileLength = 10, - }; - - result.ApplyDefaults(); - result.Normalize(); - - return result; - } - - private static StaticWebAssetsDiscoveryPattern CreatePatternCandidate( - string name, - string basePath, - string pattern, - string source) - { - var result = new StaticWebAssetsDiscoveryPattern() - { - Name = name, - BasePath = basePath, - ContentRoot = Directory.GetCurrentDirectory(), - Pattern = pattern, - Source = source - }; - - return result; - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetsPropsFileTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetsPropsFileTest.cs deleted file mode 100644 index 4e083a3d64b7..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateStaticWebAssetsPropsFileTest.cs +++ /dev/null @@ -1,526 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; -using NuGet.Packaging.Core; - -namespace Microsoft.NET.Sdk.Razor.Test -{ - public class GenerateStaticWebAssetsPropsFileTest - { - [Fact] - public void Fails_WhenStaticWebAsset_DoesNotContainSourceType() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new GenerateStaticWebAssetsPropsFile - { - BuildEngine = buildEngine.Object, - StaticWebAssets = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary - { - ["SourceId"] = "MyLibrary", - ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", - ["BasePath"] = "_content/mylibrary", - ["RelativePath"] = Path.Combine("js", "sample.js"), - }) - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeFalse(); - var expectedError = $"Missing required metadata 'SourceType' for '{Path.Combine("wwwroot", "js", "sample.js")}'."; - errorMessages.Should().ContainSingle(message => message == expectedError); - } - - [Fact] - public void Fails_WhenStaticWebAsset_DoesNotContainSourceId() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new GenerateStaticWebAssetsPropsFile - { - BuildEngine = buildEngine.Object, - StaticWebAssets = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary - { - ["SourceType"] = "Discovered", - ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", - ["BasePath"] = "_content/mylibrary", - ["RelativePath"] = Path.Combine("js", "sample.js"), - }) - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeFalse(); - var expectedError = $"Missing required metadata 'SourceId' for '{Path.Combine("wwwroot", "js", "sample.js")}'."; - errorMessages.Should().ContainSingle(message => message == expectedError); - } - - [Fact] - public void Fails_WhenStaticWebAsset_DoesNotContainContentRoot() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new GenerateStaticWebAssetsPropsFile - { - BuildEngine = buildEngine.Object, - StaticWebAssets = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary - { - ["SourceType"] = "Discovered", - ["SourceId"] = "MyLibrary", - ["BasePath"] = "_content/mylibrary", - ["RelativePath"] = Path.Combine("js", "sample.js"), - }) - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeFalse(); - var expectedError = $"Missing required metadata 'ContentRoot' for '{Path.Combine("wwwroot", "js", "sample.js")}'."; - errorMessages.Should().ContainSingle(message => message == expectedError); - } - - [Fact] - public void Fails_WhenStaticWebAsset_DoesNotContainBasePath() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new GenerateStaticWebAssetsPropsFile - { - BuildEngine = buildEngine.Object, - StaticWebAssets = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary - { - ["SourceType"] = "Discovered", - ["SourceId"] = "MyLibrary", - ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", - ["RelativePath"] = Path.Combine("js", "sample.js"), - }) - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeFalse(); - var expectedError = $"Missing required metadata 'BasePath' for '{Path.Combine("wwwroot", "js", "sample.js")}'."; - errorMessages.Should().ContainSingle(message => message == expectedError); - } - - [Fact] - public void Fails_WhenStaticWebAsset_DoesNotContainRelativePath() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new GenerateStaticWebAssetsPropsFile - { - BuildEngine = buildEngine.Object, - StaticWebAssets = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary - { - ["SourceType"] = "Discovered", - ["SourceId"] = "MyLibrary", - ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", - ["BasePath"] = "_content/mylibrary", - ["AssetKind"] = "All", - ["AssetMode"] = "All", - ["AssetRole"] = "Primary", - ["RelatedAsset"] = "", - ["AssetTraitName"] = "", - ["AssetTraitValue"] = "", - ["CopyToOutputDirectory"] = "Never", - ["CopyToPublishDirectory"] = "PreserveNewest" - }) - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeFalse(); - var expectedError = $"Missing required metadata 'RelativePath' for '{Path.Combine("wwwroot", "js", "sample.js")}'."; - errorMessages.Should().ContainSingle(message => message == expectedError); - } - - [Fact] - public void Fails_WhenStaticWebAsset_HasInvalidSourceType() - { - // Arrange - - var expectedError = $"Static web asset '{Path.Combine("wwwroot", "css", "site.css")}' has invalid source type 'Package'."; - - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new GenerateStaticWebAssetsPropsFile - { - BuildEngine = buildEngine.Object, - StaticWebAssets = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary - { - ["SourceType"] = "Discovered", - ["SourceId"] = "MyLibrary", - ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", - ["BasePath"] = "_content/mylibrary", - ["RelativePath"] = Path.Combine("js", "sample.js"), - ["AssetKind"] = "All", - ["AssetMode"] = "All", - ["AssetRole"] = "Primary", - ["RelatedAsset"] = "", - ["AssetTraitName"] = "", - ["AssetTraitValue"] = "", - ["CopyToOutputDirectory"] = "Never", - ["CopyToPublishDirectory"] = "PreserveNewest" - }), - CreateItem(Path.Combine("wwwroot","css","site.css"), new Dictionary - { - ["SourceType"] = "Package", - ["SourceId"] = "MyLibrary", - ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", - ["BasePath"] = "_content/mylibrary", - ["RelativePath"] = Path.Combine("css", "site.css"), - ["AssetKind"] = "All", - ["AssetMode"] = "All", - ["AssetRole"] = "Primary", - ["RelatedAsset"] = "", - ["AssetTraitName"] = "", - ["AssetTraitValue"] = "", - ["CopyToOutputDirectory"] = "Never", - ["CopyToPublishDirectory"] = "PreserveNewest" - }) - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeFalse(); - errorMessages.Should().ContainSingle(message => message == expectedError); - } - - [Fact] - public void Fails_WhenStaticWebAsset_HaveDifferentSourceId() - { - // Arrange - var expectedError = "Static web assets have different 'SourceId' metadata values " + - "'MyLibrary' and 'MyLibrary2' " + - $"for '{Path.Combine("wwwroot", "js", "sample.js")}' and '{Path.Combine("wwwroot", "css", "site.css")}'."; - - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new GenerateStaticWebAssetsPropsFile - { - BuildEngine = buildEngine.Object, - StaticWebAssets = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary - { - ["SourceType"] = "Discovered", - ["SourceId"] = "MyLibrary", - ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", - ["BasePath"] = "_content/mylibrary", - ["RelativePath"] = Path.Combine("js", "sample.js"), - ["AssetKind"] = "All", - ["AssetMode"] = "All", - ["AssetRole"] = "Primary", - ["RelatedAsset"] = "", - ["AssetTraitName"] = "", - ["AssetTraitValue"] = "", - ["CopyToOutputDirectory"] = "Never", - ["CopyToPublishDirectory"] = "PreserveNewest" - }), - CreateItem(Path.Combine("wwwroot","css","site.css"), new Dictionary - { - ["SourceType"] = "Discovered", - ["SourceId"] = "MyLibrary2", - ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", - ["BasePath"] = "_content/mylibrary", - ["RelativePath"] = Path.Combine("css", "site.css"), - ["AssetKind"] = "All", - ["AssetMode"] = "All", - ["AssetRole"] = "Primary", - ["RelatedAsset"] = "", - ["AssetTraitName"] = "", - ["AssetTraitValue"] = "", - ["CopyToOutputDirectory"] = "Never", - ["CopyToPublishDirectory"] = "PreserveNewest" - }) - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeFalse(); - errorMessages.Should().ContainSingle(message => message == expectedError); - } - - [Fact] - public void WritesPropsFile_WhenThereIsAtLeastOneStaticAsset() - { - // Arrange - var file = Path.GetTempFileName(); - var expectedDocument = @" - - - Package - MyLibrary - $(MSBuildThisFileDirectory)..\staticwebassets\ - _content/mylibrary - js/sample.js - All - All - Primary - - - - sample-fingerprint - sample-integrity - Never - PreserveNewest - 10 - Thu, 15 Nov 1990 00:00:00 GMT - $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..\staticwebassets\js\sample.js')) - - -"; - - try - { - var buildEngine = new Mock(); - - var task = new GenerateStaticWebAssetsPropsFile - { - BuildEngine = buildEngine.Object, - TargetPropsFilePath = file, - StaticWebAssets = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary - { - ["SourceType"] = "Discovered", - ["SourceId"] = "MyLibrary", - ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", - ["BasePath"] = "_content/mylibrary", - ["RelativePath"] = Path.Combine("js", "sample.js").Replace("\\","/"), - ["AssetKind"] = "All", - ["AssetMode"] = "All", - ["AssetRole"] = "Primary", - ["RelatedAsset"] = "", - ["AssetTraitName"] = "", - ["AssetTraitValue"] = "", - ["Fingerprint"] = "sample-fingerprint", - ["Integrity"] = "sample-integrity", - ["OriginalItemSpec"] = Path.Combine("wwwroot","js","sample.js"), - ["CopyToOutputDirectory"] = "Never", - ["CopyToPublishDirectory"] = "PreserveNewest", - ["FileLength"] = "10", - ["LastWriteTime"] = new DateTimeOffset(new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc)).ToString(StaticWebAsset.DateTimeAssetFormat) - }), - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeTrue(); - var document = File.ReadAllText(file); - document.Should().Contain(expectedDocument); - } - finally - { - if (File.Exists(file)) - { - File.Delete(file); - } - } - } - - [Fact] - public void WritesIndividualItems_WithTheirRespectiveBaseAndRelativePaths() - { - // Arrange - var file = Path.GetTempFileName(); - var expectedDocument = @" - - - Package - MyLibrary - $(MSBuildThisFileDirectory)..\staticwebassets\ - / - App.styles.css - All - All - Primary - - - - styles-fingerprint - styles-integrity - Never - PreserveNewest - 10 - Thu, 15 Nov 1990 00:00:00 GMT - $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..\staticwebassets\App.styles.css')) - - - Package - MyLibrary - $(MSBuildThisFileDirectory)..\staticwebassets\ - _content/mylibrary - js/sample.js - All - All - Primary - - - - sample-fingerprint - sample-integrity - Never - PreserveNewest - 10 - Thu, 15 Nov 1990 00:00:00 GMT - $([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..\staticwebassets\js\sample.js')) - - -"; - - try - { - var buildEngine = new Mock(); - - var task = new GenerateStaticWebAssetsPropsFile - { - BuildEngine = buildEngine.Object, - TargetPropsFilePath = file, - StaticWebAssets = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","js","sample.js"), new Dictionary - { - ["SourceType"] = "Discovered", - ["SourceId"] = "MyLibrary", - ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", - ["BasePath"] = "_content/mylibrary", - ["RelativePath"] = Path.Combine("js", "sample.js").Replace("\\","/"), - ["AssetKind"] = "All", - ["AssetMode"] = "All", - ["AssetRole"] = "Primary", - ["RelatedAsset"] = "", - ["AssetTraitName"] = "", - ["AssetTraitValue"] = "", - ["OriginalItemSpec"] = Path.Combine("wwwroot","js","sample.js"), - ["Fingerprint"] = "sample-fingerprint", - ["Integrity"] = "sample-integrity", - ["CopyToOutputDirectory"] = "Never", - ["CopyToPublishDirectory"] = "PreserveNewest", - ["FileLength"] = "10", - ["LastWriteTime"] = new DateTimeOffset(new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc)).ToString(StaticWebAsset.DateTimeAssetFormat) - }), - CreateItem(Path.Combine("wwwroot","App.styles.css"), new Dictionary - { - ["SourceType"] = "Discovered", - ["SourceId"] = "MyLibrary", - ["ContentRoot"] = @"$(MSBuildThisFileDirectory)..\staticwebassets", - ["BasePath"] = "/", - ["RelativePath"] = "App.styles.css", - ["AssetKind"] = "All", - ["AssetMode"] = "All", - ["AssetRole"] = "Primary", - ["RelatedAsset"] = "", - ["AssetTraitName"] = "", - ["AssetTraitValue"] = "", - ["OriginalItemSpec"] = Path.Combine("wwwroot","App.styles.css"), - ["Fingerprint"] = "styles-fingerprint", - ["Integrity"] = "styles-integrity", - ["CopyToOutputDirectory"] = "Never", - ["CopyToPublishDirectory"] = "PreserveNewest", - ["FileLength"] = "10", - ["LastWriteTime"] = new DateTimeOffset(new DateTime(1990, 11, 15, 0, 0, 0, 0, DateTimeKind.Utc)).ToString(StaticWebAsset.DateTimeAssetFormat) - }), - } - }; - - // Act - var result = task.Execute(); - - // Assert - Assert.True(result); - var document = File.ReadAllText(file); - Assert.Equal(expectedDocument, document, ignoreLineEndingDifferences: true); - } - finally - { - if (File.Exists(file)) - { - File.Delete(file); - } - } - } - - private static TaskItem CreateItem( - string spec, - IDictionary metadata) - { - var result = new TaskItem(spec); - foreach (var (key, value) in metadata) - { - result.SetMetadata(key, value); - } - - return result; - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateV1StaticWebAssetsManifestTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateV1StaticWebAssetsManifestTest.cs deleted file mode 100644 index cf209c460cc0..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/GenerateV1StaticWebAssetsManifestTest.cs +++ /dev/null @@ -1,273 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Test -{ - public class GenerateV1StaticWebAssetsManifestTest - { - [Fact] - public void ReturnsError_WhenBasePathIsMissing() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new GenerateV1StaticWebAssetsManifest - { - BuildEngine = buildEngine.Object, - ContentRootDefinitions = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot", "sample.js"), new Dictionary - { - ["ContentRoot"] = "/" - }) - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeFalse(); - var expectedError = $"Missing required metadata 'BasePath' for '{Path.Combine("wwwroot", "sample.js")}'."; - errorMessages.Should().ContainSingle(message => message == expectedError); - } - - [Fact] - public void ReturnsError_WhenContentRootIsMissing() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new GenerateV1StaticWebAssetsManifest - { - BuildEngine = buildEngine.Object, - ContentRootDefinitions = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","sample.js"), new Dictionary - { - ["BasePath"] = "MyLibrary" - }) - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeFalse(); - var expectedError = $"Missing required metadata 'ContentRoot' for '{Path.Combine("wwwroot", "sample.js")}'."; - errorMessages.Should().ContainSingle(message => message == expectedError); - } - - [Fact] - public void AllowsMultipleContentRootsWithSameBasePath_ForTheSameSourceId() - { - // Arrange - var file = Path.GetTempFileName(); - var expectedDocument = $@" - - -"; - - var buildEngine = new Mock(); - - var task = new GenerateV1StaticWebAssetsManifest - { - BuildEngine = buildEngine.Object, - ContentRootDefinitions = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","sample.js"), new Dictionary - { - ["BasePath"] = "Blazor.Client", - ["ContentRoot"] = Path.Combine(".", "nuget","Blazor.Client"), - ["SourceId"] = "Blazor.Client" - }), - CreateItem(Path.Combine("wwwroot", "otherLib.js"), new Dictionary - { - ["BasePath"] = "Blazor.Client", - ["ContentRoot"] = Path.Combine(".", "nuget", "bin","debug","netstandard2.1"), - ["SourceId"] = "Blazor.Client" - }) - }, - TargetManifestPath = file - }; - - try - { - // Act - var result = task.Execute(); - - // Assert - result.Should().BeTrue(); - var document = File.ReadAllText(file); - document.Should().Contain(expectedDocument); - } - finally - { - if (File.Exists(file)) - { - File.Delete(file); - } - } - } - - [Fact] - public void Generates_EmptyManifest_WhenNoItems_Passed() - { - // Arrange - var file = Path.GetTempFileName(); - var expectedDocument = @""; - - try - { - var buildEngine = new Mock(); - - var task = new GenerateV1StaticWebAssetsManifest - { - BuildEngine = buildEngine.Object, - ContentRootDefinitions = new TaskItem[] { }, - TargetManifestPath = file - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeTrue(); - var document = File.ReadAllText(file); - document.Should().Contain(expectedDocument); - } - finally - { - if (File.Exists(file)) - { - File.Delete(file); - } - } - } - - [Fact] - public void Generates_Manifest_WhenContentRootsAvailable() - { - // Arrange - var file = Path.GetTempFileName(); - var expectedDocument = $@" - -"; - - try - { - var buildEngine = new Mock(); - - var task = new GenerateV1StaticWebAssetsManifest - { - BuildEngine = buildEngine.Object, - ContentRootDefinitions = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","sample.js"), new Dictionary - { - ["BasePath"] = "MyLibrary", - ["ContentRoot"] = Path.Combine(".", "nuget", "MyLibrary", "razorContent"), - ["SourceId"] = "MyLibrary" - }), - }, - TargetManifestPath = file - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeTrue(); - var document = File.ReadAllText(file); - document.Should().Contain(expectedDocument); - } - finally - { - if (File.Exists(file)) - { - File.Delete(file); - } - } - } - - [Fact] - public void SkipsAdditionalElements_WithSameBasePathAndSameContentRoot() - { - // Arrange - var file = Path.GetTempFileName(); - var expectedDocument = $@" - -"; - - try - { - var buildEngine = new Mock(); - - var task = new GenerateV1StaticWebAssetsManifest - { - BuildEngine = buildEngine.Object, - ContentRootDefinitions = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","sample.js"), new Dictionary - { - // Base path needs to be normalized to '/' as it goes in the url - ["BasePath"] = "Base\\MyLibrary", - ["SourceId"] = "MyLibrary", - ["ContentRoot"] = Path.Combine(".", "nuget", "MyLibrary", "razorContent") - }), - // Comparisons are case insensitive - CreateItem(Path.Combine("wwwroot, site.css"), new Dictionary - { - ["BasePath"] = "Base\\MyLIBRARY", - ["SourceId"] = "MyLibrary", - ["ContentRoot"] = Path.Combine(".", "nuget", "MyLIBRARY", "razorContent") - }), - }, - TargetManifestPath = file - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeTrue(); - var document = File.ReadAllText(file); - document.Should().Contain(expectedDocument); - } - finally - { - if (File.Exists(file)) - { - File.Delete(file); - } - } - } - - private static TaskItem CreateItem( - string spec, - IDictionary metadata) - { - var result = new TaskItem(spec); - foreach (var (key, value) in metadata) - { - result.SetMetadata(key, value); - } - - return result; - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/Globbing/PathTokenizerTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/Globbing/PathTokenizerTest.cs deleted file mode 100644 index ed77b13265c1..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/Globbing/PathTokenizerTest.cs +++ /dev/null @@ -1,133 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace Microsoft.AspNetCore.StaticWebAssets.Tasks.Test; - -public class PathTokenizerTest -{ - [Fact] - public void RootSeparator_ProducesEmptySegment() - { - var path = "/a/b/c"; - var tokenizer = new PathTokenizer(path.AsMemory().Span); - var segments = new List(); - var collection = tokenizer.Fill(segments); - Assert.Equal("a", collection[0]); - Assert.Equal("b", collection[1]); - Assert.Equal("c", collection[2]); - } - - [Fact] - public void NonRootSeparator_ProducesInitialSegment() - { - var path = "a/b/c"; - var tokenizer = new PathTokenizer(path.AsMemory().Span); - var segments = new List(); - var collection = tokenizer.Fill(segments); - Assert.Equal("a", collection[0]); - Assert.Equal("b", collection[1]); - Assert.Equal("c", collection[2]); - } - - [Fact] - public void NonRootSeparator_MatchesMultipleCharacters() - { - var path = "aa/b/c"; - var tokenizer = new PathTokenizer(path.AsMemory().Span); - var segments = new List(); - var collection = tokenizer.Fill(segments); - Assert.Equal("aa", collection[0]); - Assert.Equal("b", collection[1]); - Assert.Equal("c", collection[2]); - } - - [Fact] - public void NonRootSeparator_HandlesConsecutivePathSeparators() - { - var path = "aa//b/c"; - var tokenizer = new PathTokenizer(path.AsMemory().Span); - var segments = new List(); - var collection = tokenizer.Fill(segments); - Assert.Equal("aa", collection[0]); - Assert.Equal("b", collection[1]); - Assert.Equal("c", collection[2]); - } - - [Fact] - public void NonRootSeparator_HandlesFinalPathSeparator() - { - var path = "aa/b/c/"; - var tokenizer = new PathTokenizer(path.AsMemory().Span); - var segments = new List(); - var collection = tokenizer.Fill(segments); - Assert.Equal("aa", collection[0]); - Assert.Equal("b", collection[1]); - Assert.Equal("c", collection[2]); - } - - [Fact] - public void NonRootSeparator_HandlesAlternativePathSeparators() - { - var path = "aa\\b\\c\\"; - var tokenizer = new PathTokenizer(path.AsMemory().Span); - var segments = new List(); - var collection = tokenizer.Fill(segments); - Assert.Equal("aa", collection[0]); - Assert.Equal("b", collection[1]); - Assert.Equal("c", collection[2]); - } - - [Fact] - public void NonRootSeparator_HandlesMixedPathSeparators() - { - var path = "aa/b\\c/"; - var tokenizer = new PathTokenizer(path.AsMemory().Span); - var segments = new List(); - var collection = tokenizer.Fill(segments); - Assert.Equal("aa", collection[0]); - Assert.Equal("b", collection[1]); - Assert.Equal("c", collection[2]); - } - - [Fact] - public void Ignores_EmpySegments() - { - var path = "aa//b//c"; - var tokenizer = new PathTokenizer(path.AsMemory().Span); - var segments = new List(); - var collection = tokenizer.Fill(segments); - Assert.Equal("aa", collection[0]); - Assert.Equal("b", collection[1]); - Assert.Equal("c", collection[2]); - } - - [Fact] - public void Ignores_DotSegments() - { - var path = "./aa/./b/./c/."; - var tokenizer = new PathTokenizer(path.AsMemory().Span); - var segments = new List(); - var collection = tokenizer.Fill(segments); - Assert.Equal("aa", collection[0]); - Assert.Equal("b", collection[1]); - Assert.Equal("c", collection[2]); - } - - [Fact] - public void Ignores_DotDotSegments() - { - var path = "../aa/../b/../c/.."; - var tokenizer = new PathTokenizer(path.AsMemory().Span); - var segments = new List(); - var collection = tokenizer.Fill(segments); - Assert.Equal("aa", collection[0]); - Assert.Equal("b", collection[1]); - Assert.Equal("c", collection[2]); - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.Compatibility.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.Compatibility.cs deleted file mode 100644 index f68ea9169c4f..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.Compatibility.cs +++ /dev/null @@ -1,302 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -namespace Microsoft.AspNetCore.StaticWebAssets.Tasks.Test; - -public partial class StaticWebAssetGlobMatcherTest -{ - [Fact] - public void MatchingFileIsFound() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("alpha.txt"); - var globMatcher = matcher.Build(); - - var match = globMatcher.Match("alpha.txt"); - Assert.True(match.IsMatch); - Assert.Equal("alpha.txt", match.Pattern); - } - - [Fact] - public void MismatchedFileIsIgnored() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("alpha.txt"); - var globMatcher = matcher.Build(); - - var match = globMatcher.Match("omega.txt"); - Assert.False(match.IsMatch); - } - - [Fact] - public void FolderNamesAreTraversed() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("beta/alpha.txt"); - var globMatcher = matcher.Build(); - - var match = globMatcher.Match("beta/alpha.txt"); - Assert.True(match.IsMatch); - Assert.Equal("beta/alpha.txt", match.Pattern); - } - - [Theory] - [InlineData(@"beta/alpha.txt", @"beta/alpha.txt")] - [InlineData(@"beta\alpha.txt", @"beta/alpha.txt")] - [InlineData(@"beta/alpha.txt", @"beta\alpha.txt")] - [InlineData(@"beta\alpha.txt", @"beta\alpha.txt")] - [InlineData(@"\beta\alpha.txt", @"beta/alpha.txt")] - public void SlashPolarityIsIgnored(string includePattern, string filePath) - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns(includePattern); - var globMatcher = matcher.Build(); - - var match = globMatcher.Match(filePath); - Assert.True(match.IsMatch); - //Assert.Equal("beta/alpha.txt", match.Pattern); - } - - [Theory] - [InlineData(@"alpha.*", new[] { "alpha.txt" })] - [InlineData(@"*", new[] { "alpha.txt", "beta.txt", "gamma.dat" })] - [InlineData(@"*et*", new[] { "beta.txt" })] - [InlineData(@"*.*", new[] { "alpha.txt", "beta.txt", "gamma.dat" })] - [InlineData(@"b*et*x", new string[0])] - [InlineData(@"*.txt", new[] { "alpha.txt", "beta.txt" })] - [InlineData(@"b*et*t", new[] { "beta.txt" })] - public void CanPatternMatch(string includes, string[] expected) - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns(includes); - var globMatcher = matcher.Build(); - - var matches = new List { "alpha.txt", "beta.txt", "gamma.dat" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(expected, matches); - } - - [Theory] - [InlineData(@"12345*5678", new string[0])] - [InlineData(@"1234*5678", new[] { "12345678" })] - [InlineData(@"12*23*", new string[0])] - [InlineData(@"12*3456*78", new[] { "12345678" })] - [InlineData(@"*45*56", new string[0])] - [InlineData(@"*67*78", new string[0])] - public void PatternBeginAndEndCantOverlap(string includes, string[] expected) - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns(includes); - var globMatcher = matcher.Build(); - - var matches = new List { "12345678" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(expected, matches); - } - - [Theory] - [InlineData(@"*alpha*/*", new[] { "alpha/hello.txt" })] - [InlineData(@"/*/*", new[] { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" })] - [InlineData(@"*/*", new[] { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" })] - [InlineData(@"/*.*/*", new string[] { })] - [InlineData(@"*.*/*", new string[] { })] - [InlineData(@"/*mm*/*", new[] { "gamma/hello.txt" })] - [InlineData(@"*mm*/*", new[] { "gamma/hello.txt" })] - [InlineData(@"/*alpha*/*", new[] { "alpha/hello.txt" })] - public void PatternMatchingWorksInFolders(string includes, string[] expected) - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns(includes); - var globMatcher = matcher.Build(); - - var matches = new List { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(expected, matches); - } - - [Theory] - [InlineData(@"", new string[] { })] - [InlineData(@"./", new string[] { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" })] - [InlineData(@"./alpha/hello.txt", new string[] { "alpha/hello.txt" })] - [InlineData(@"./**/hello.txt", new string[] { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" })] - [InlineData(@"././**/hello.txt", new string[] { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" })] - [InlineData(@"././**/./hello.txt", new string[] { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" })] - [InlineData(@"././**/./**/hello.txt", new string[] { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" })] - [InlineData(@"./*mm*/hello.txt", new string[] { "gamma/hello.txt" })] - [InlineData(@"./*mm*/*", new string[] { "gamma/hello.txt" })] - public void PatternMatchingCurrent(string includePattern, string[] matchesExpected) - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns(includePattern); - var globMatcher = matcher.Build(); - - var matches = new List { "alpha/hello.txt", "beta/hello.txt", "gamma/hello.txt" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(matchesExpected, matches); - } - - [Fact] - public void StarDotStarIsSameAsStar() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("*.*"); - var globMatcher = matcher.Build(); - - var matches = new List { "alpha.txt", "alpha.", ".txt", ".", "alpha", "txt" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(new[] { "alpha.txt", "alpha.", ".txt" }, matches); - } - - [Fact] - public void IncompletePatternsDoNotInclude() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("*/*.txt"); - var globMatcher = matcher.Build(); - - var matches = new List { "one/x.txt", "two/x.txt", "x.txt" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(new[] { "one/x.txt", "two/x.txt" }, matches); - } - - [Fact] - public void IncompletePatternsDoNotExclude() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("*/*.txt"); - matcher.AddExcludePatterns("one/hello.txt"); - var globMatcher = matcher.Build(); - - var matches = new List { "one/x.txt", "two/x.txt" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(new[] { "one/x.txt", "two/x.txt" }, matches); - } - - [Fact] - public void TrailingRecursiveWildcardMatchesAllFiles() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("one/**"); - var globMatcher = matcher.Build(); - - var matches = new List { "one/x.txt", "two/x.txt", "one/x/y.txt" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(new[] { "one/x.txt", "one/x/y.txt" }, matches); - } - - [Fact] - public void LeadingRecursiveWildcardMatchesAllLeadingPaths() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("**/*.cs"); - var globMatcher = matcher.Build(); - - var matches = new List { "one/x.cs", "two/x.cs", "one/two/x.cs", "x.cs", "one/x.txt", "two/x.txt", "one/two/x.txt", "x.txt" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(new[] { "one/x.cs", "two/x.cs", "one/two/x.cs", "x.cs" }, matches); - } - - [Fact] - public void InnerRecursiveWildcardMustStartWithAndEndWith() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("one/**/*.cs"); - var globMatcher = matcher.Build(); - - var matches = new List { "one/x.cs", "two/x.cs", "one/two/x.cs", "x.cs", "one/x.txt", "two/x.txt", "one/two/x.txt", "x.txt" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(new[] { "one/x.cs", "one/two/x.cs" }, matches); - } - - [Fact] - public void ExcludeMayEndInDirectoryName() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("*.cs", "*/*.cs", "*/*/*.cs"); - matcher.AddExcludePatterns("bin/", "one/two/"); - var globMatcher = matcher.Build(); - - var matches = new List { "one/x.cs", "two/x.cs", "one/two/x.cs", "x.cs", "bin/x.cs", "bin/two/x.cs" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(new[] { "one/x.cs", "two/x.cs", "x.cs" }, matches); - } - - [Fact] - public void RecursiveWildcardSurroundingContainsWith() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("**/x/**"); - var globMatcher = matcher.Build(); - - var matches = new List { "x/1", "1/x/2", "1/x", "x", "1", "1/2" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(new[] { "x/1", "1/x/2", "1/x", "x" }, matches); - } - - [Fact] - public void SequentialFoldersMayBeRequired() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("a/b/**/1/2/**/2/3/**"); - var globMatcher = matcher.Build(); - - var matches = new List { "1/2/2/3/x", "1/2/3/y", "a/1/2/4/2/3/b", "a/2/3/1/2/b", "a/b/1/2/2/3/x", "a/b/1/2/3/y", "a/b/a/1/2/4/2/3/b", "a/b/a/2/3/1/2/b" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(new[] { "a/b/1/2/2/3/x", "a/b/a/1/2/4/2/3/b" }, matches); - } - - [Fact] - public void RecursiveAloneIncludesEverything() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("**"); - var globMatcher = matcher.Build(); - - var matches = new List { "1/2/2/3/x", "1/2/3/y" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(new[] { "1/2/2/3/x", "1/2/3/y" }, matches); - } - - [Fact] - public void ExcludeCanHaveSurroundingRecursiveWildcards() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("**"); - matcher.AddExcludePatterns("**/x/**"); - var globMatcher = matcher.Build(); - - var matches = new List { "x/1", "1/x/2", "1/x", "x", "1", "1/2" } - .Where(file => globMatcher.Match(file).IsMatch) - .ToArray(); - - Assert.Equal(new[] { "1", "1/2" }, matches); - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.cs deleted file mode 100644 index f8061c5d6ba1..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/Globbing/StaticWebAssetGlobMatcherTest.cs +++ /dev/null @@ -1,388 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace Microsoft.AspNetCore.StaticWebAssets.Tasks.Test; - -// Set of things to test: -// Literals 'a' -// Multiple literals 'a/b' -// Extensions '*.a' -// Longer extensions first '*.a', '*.b.a' -// Extensions at the beginning '*.a/b' -// Extensions at the end 'a/*.b' -// Extensions in the middle 'a/*.b/c' -// Wildcard '*' -// Wildcard at the beginning '*/a' -// Wildcard at the end 'a/*' -// Wildcard in the middle 'a/*/c' -// Recursive wildcard '**' -// Recursive wildcard at the beginning '**/a' -// Recursive wildcard at the end 'a/**' -// Recursive wildcard in the middle 'a/**/c' -public partial class StaticWebAssetGlobMatcherTest -{ - [Fact] - public void CanMatchLiterals() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("a"); - var globMatcher = matcher.Build(); - - var match = globMatcher.Match("a"); - Assert.True(match.IsMatch); - Assert.Equal("a", match.Pattern); - Assert.Equal("a", match.Stem); - } - - [Fact] - public void CanMatchMultipleLiterals() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("a/b"); - var globMatcher = matcher.Build(); - - var match = globMatcher.Match("a/b"); - Assert.True(match.IsMatch); - Assert.Equal("a/b", match.Pattern); - Assert.Equal("b", match.Stem); - } - - [Fact] - public void CanMatchExtensions() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("*.a"); - var globMatcher = matcher.Build(); - var match = globMatcher.Match("a.a"); - Assert.True(match.IsMatch); - Assert.Equal("*.a", match.Pattern); - Assert.Equal("a.a", match.Stem); - } - - [Fact] - public void MatchesLongerExtensionsFirst() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("*.a", "*.b.a"); - var globMatcher = matcher.Build(); - var match = globMatcher.Match("c.b.a"); - Assert.True(match.IsMatch); - Assert.Equal("*.b.a", match.Pattern); - Assert.Equal("c.b.a", match.Stem); - } - - [Fact] - public void CanMatchExtensionsAtTheBeginning() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("*.a/b"); - var globMatcher = matcher.Build(); - var match = globMatcher.Match("c.a/b"); - Assert.True(match.IsMatch); - Assert.Equal("*.a/b", match.Pattern); - Assert.Equal("b", match.Stem); - } - - [Fact] - public void CanMatchExtensionsAtTheEnd() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("a/*.b"); - var globMatcher = matcher.Build(); - var match = globMatcher.Match("a/c.b"); - Assert.True(match.IsMatch); - Assert.Equal("a/*.b", match.Pattern); - Assert.Equal("c.b", match.Stem); - } - - [Fact] - public void CanMatchExtensionsInMiddle() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("a/*.b/c"); - var globMatcher = matcher.Build(); - var match = globMatcher.Match("a/d.b/c"); - Assert.True(match.IsMatch); - Assert.Equal("a/*.b/c", match.Pattern); - Assert.Equal("c", match.Stem); - } - - [Theory] - [InlineData("a*")] - [InlineData("*a")] - [InlineData("?")] - [InlineData("*?")] - [InlineData("?*")] - [InlineData("**a")] - [InlineData("a**")] - [InlineData("**?")] - [InlineData("?**")] - public void CanMatchComplexSegments(string pattern) - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns(pattern); - var globMatcher = matcher.Build(); - var match = globMatcher.Match("a"); - Assert.True(match.IsMatch); - Assert.Equal(pattern, match.Pattern); - Assert.Equal("a", match.Stem); - } - - [Theory] - [InlineData("a?", "aa", true)] - [InlineData("a?", "a", false)] - [InlineData("a?", "aaa", false)] - [InlineData("?a", "aa", true)] - [InlineData("?a", "a", false)] - [InlineData("?a", "aaa", false)] - [InlineData("a?a", "aaa", true)] - [InlineData("a?a", "aba", true)] - [InlineData("a?a", "abaa", false)] - [InlineData("a?a", "ab", false)] - public void QuestionMarksMatchSingleCharacter(string pattern, string input, bool expectedMatchResult) - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns(pattern); - var globMatcher = matcher.Build(); - var match = globMatcher.Match(input); - Assert.Equal(expectedMatchResult, match.IsMatch); - if(expectedMatchResult) - { - Assert.Equal(pattern, match.Pattern); - Assert.Equal(input, match.Stem); - } - else - { - Assert.Null(match.Pattern); - Assert.Null(match.Stem); - } - } - - [Theory] - [InlineData("a??", "aaa", true)] - [InlineData("a??", "aa", false)] - [InlineData("a??", "aaaa", false)] - [InlineData("?a?", "aaa", true)] - [InlineData("?a?", "aa", false)] - [InlineData("?a?", "aaaa", false)] - [InlineData("??a", "aaa", true)] - [InlineData("??a", "aa", false)] - [InlineData("??a", "aaaa", false)] - [InlineData("a??a", "aaaa", true)] - [InlineData("a??a", "aaba", true)] - [InlineData("a??a", "aabaa", false)] - [InlineData("a??a", "aba", false)] - public void MultipleQuestionMarksMatchExactlyTheNumberOfCharacters(string pattern, string input, bool expectedMatchResult) - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns(pattern); - var globMatcher = matcher.Build(); - var match = globMatcher.Match(input); - Assert.Equal(expectedMatchResult, match.IsMatch); - if (expectedMatchResult) - { - Assert.Equal(pattern, match.Pattern); - Assert.Equal(input, match.Stem); - } - else - { - Assert.Null(match.Pattern); - Assert.Null(match.Stem); - } - } - - [Theory] - [InlineData("a*", "a", true)] - [InlineData("a*", "aa", true)] - [InlineData("a*", "aaa", true)] - [InlineData("a*", "aaaa", true)] - [InlineData("a*", "aaaaa", true)] - [InlineData("a*", "aaaaaa", true)] - [InlineData("*a", "a", true)] - [InlineData("*a", "aa", true)] - [InlineData("*a", "aaa", true)] - [InlineData("*a", "aaaa", true)] - [InlineData("*a", "aaaaa", true)] - [InlineData("a*a", "a", false)] - [InlineData("a*a", "aa", true)] - [InlineData("a*a", "aaa", true)] - [InlineData("a*a", "aaaaa", true)] - [InlineData("a*a", "aaaaaa", true)] - [InlineData("a*a", "aba", true)] - [InlineData("a*a", "abaa", true)] - [InlineData("a*a", "abba", true)] - [InlineData("a*b", "ab", true)] - public void WildCardsMatchZeroOrMoreCharacters(string pattern, string input, bool expectedMatchResult) - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns(pattern); - var globMatcher = matcher.Build(); - var match = globMatcher.Match(input); - Assert.Equal(expectedMatchResult, match.IsMatch); - if (expectedMatchResult) - { - Assert.Equal(pattern, match.Pattern); - Assert.Equal(input, match.Stem); - } - else - { - Assert.Null(match.Pattern); - Assert.Null(match.Stem); - } - } - - [Theory] - [InlineData("*?a", "a", false)] - [InlineData("*?a", "aa", true)] - [InlineData("*?a", "aaa", true)] - [InlineData("*?a", "aaaa", true)] - [InlineData("*?a", "aaaaa", true)] - [InlineData("*?a", "aaaaaa", true)] - [InlineData("*??a", "aa", false)] - [InlineData("*??a", "aaa", true)] - [InlineData("*???a", "aaa", false)] - [InlineData("*???a", "aaaa", true)] - [InlineData("*????a", "aaaa", false)] - [InlineData("*????a", "aaaaa", true)] - [InlineData("*?????a", "aaaaa", false)] - [InlineData("*?????a", "aaaaaa", true)] - [InlineData("*??????a", "aaaaaa", false)] - [InlineData("*??????a", "aaaaaaa", true)] - [InlineData("a*?", "a", false)] - [InlineData("a*?", "aa", true)] - [InlineData("a*?", "aaa", true)] - [InlineData("a*?", "aaaa", true)] - [InlineData("a*?", "aaaaa", true)] - [InlineData("a*?", "aaaaaa", true)] - [InlineData("a*??", "aa", false)] - [InlineData("a*??", "aaa", true)] - [InlineData("a*???", "aaa", false)] - [InlineData("a*???", "aaaa", true)] - [InlineData("a*????", "aaaa", false)] - [InlineData("a*????", "aaaaa", true)] - [InlineData("a*?????", "aaaaa", false)] - [InlineData("a*?????", "aaaaaa", true)] - [InlineData("a*??????", "aaaaaa", false)] - [InlineData("a*??????", "aaaaaaa", true)] - - public void SingleWildcardPrecededOrSucceededByQuestionMarkRequireMinimumNumberOfCharacters(string pattern, string input, bool expectedMatchResult) - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns(pattern); - var globMatcher = matcher.Build(); - var match = globMatcher.Match(input); - Assert.Equal(expectedMatchResult, match.IsMatch); - if (expectedMatchResult) - { - Assert.Equal(pattern, match.Pattern); - Assert.Equal(input, match.Stem); - } - else - { - Assert.Null(match.Pattern); - Assert.Null(match.Stem); - } - } - - [Fact] - public void CanMatchWildCard() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("*"); - var globMatcher = matcher.Build(); - var match = globMatcher.Match("a"); - Assert.True(match.IsMatch); - Assert.Equal("*", match.Pattern); - Assert.Equal("a", match.Stem); - } - - [Fact] - public void CanMatchWildCardAtTheBeginning() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("*/a"); - var globMatcher = matcher.Build(); - var match = globMatcher.Match("c/a"); - Assert.True(match.IsMatch); - Assert.Equal("*/a", match.Pattern); - Assert.Equal("a", match.Stem); - } - - [Fact] - public void CanMatchWildCardAtTheEnd() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("a/*"); - var globMatcher = matcher.Build(); - var match = globMatcher.Match("a/c"); - Assert.True(match.IsMatch); - Assert.Equal("a/*", match.Pattern); - Assert.Equal("c", match.Stem); - } - - [Fact] - public void CanMatchWildCardInMiddle() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("a/*/c"); - var globMatcher = matcher.Build(); - var match = globMatcher.Match("a/b/c"); - Assert.True(match.IsMatch); - Assert.Equal("a/*/c", match.Pattern); - Assert.Equal("c", match.Stem); - } - - [Fact] - public void CanMatchRecursiveWildCard() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("**"); - var globMatcher = matcher.Build(); - var match = globMatcher.Match("a/b/c"); - Assert.True(match.IsMatch); - Assert.Equal("**", match.Pattern); - Assert.Equal("a/b/c", match.Stem); - } - - [Fact] - public void CanMatchRecursiveWildCardAtTheBeginning() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("**/a"); - var globMatcher = matcher.Build(); - var match = globMatcher.Match("c/b/a"); - Assert.True(match.IsMatch); - Assert.Equal("**/a", match.Pattern); - Assert.Equal("c/b/a", match.Stem); - } - - [Fact] - public void CanMatchRecursiveWildCardAtTheEnd() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("a/**"); - var globMatcher = matcher.Build(); - var match = globMatcher.Match("a/b/c"); - Assert.True(match.IsMatch); - Assert.Equal("a/**", match.Pattern); - Assert.Equal("b/c", match.Stem); - } - - [Fact] - public void CanMatchRecursiveWildCardInMiddle() - { - var matcher = new StaticWebAssetGlobMatcherBuilder(); - matcher.AddIncludePatterns("a/**/c"); - var globMatcher = matcher.Build(); - var match = globMatcher.Match("a/b/c"); - Assert.True(match.IsMatch); - Assert.Equal("a/**/c", match.Pattern); - Assert.Equal("b/c", match.Stem); - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/MergeConfigurationPropertiesTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/MergeConfigurationPropertiesTest.cs deleted file mode 100644 index d36a37abf095..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/MergeConfigurationPropertiesTest.cs +++ /dev/null @@ -1,298 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - public class MergeConfigurationPropertiesTest - { - [Fact] - public void MergesProjectConfigurationWithProjectReferenceWhenMatchingReferenceFound() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var referenceProjectFile = Path.Combine("..", "reference", "myRcl.csproj"); - var task = new MergeConfigurationProperties - { - BuildEngine = buildEngine.Object, - CandidateConfigurations = new[] { CreateCandidateProjectConfiguration(Path.GetFullPath(referenceProjectFile)) }, - ProjectReferences = new[] { - CreateProjectReference( - project: Path.Combine("..", "myRcl", "myRcl.csproj"), - msBuildSourceProjectFile: Path.GetFullPath(referenceProjectFile), - undefineProperties: Path.Combine(";TargetFramework;RuntimeIdentifier")) - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.ProjectConfigurations.Should().HaveCount(1); - var config = task.ProjectConfigurations[0]; - config.GetMetadata("Source").Should().Be("myRcl"); - config.GetMetadata("GetBuildAssetsTargets").Should().Be("GetCurrentProjectBuildStaticWebAssetItems"); - config.GetMetadata("GetPublishAssetsTargets").Should() - .Be("ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems"); - config.GetMetadata("Version").Should().Be("2"); - config.GetMetadata("AdditionalBuildProperties").Should().Be(""); - config.GetMetadata("AdditionalBuildPropertiesToRemove").Should().Be("TargetFramework;RuntimeIdentifier"); - config.GetMetadata("AdditionalPublishProperties").Should().Be(""); - config.GetMetadata("AdditionalPublishPropertiesToRemove").Should().Be("TargetFramework;RuntimeIdentifier"); - } - - [Fact] - public void MergesProjectConfigurationWithProjectReference_UsesOSCasingForMatching() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var referenceProjectFile = Path.Combine("..", "reference", "myRcl.csproj"); - var task = new MergeConfigurationProperties - { - BuildEngine = buildEngine.Object, - CandidateConfigurations = new[] { CreateCandidateProjectConfiguration(Path.GetFullPath(referenceProjectFile)) }, - ProjectReferences = new[] - { - CreateProjectReference( - project: Path.Combine("..", "myRCL", "myRcl.csproj"), - msBuildSourceProjectFile: Path.GetFullPath(referenceProjectFile).ToUpperInvariant(), - undefineProperties: Path.Combine(";TargetFramework;RuntimeIdentifier")) - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(OperatingSystem.IsWindows()); - } - - [Fact] - public void FailswhenProjectReferenceNotFound() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var referenceProjectFile = Path.Combine("..", "reference", "myRcl.csproj"); - var task = new MergeConfigurationProperties - { - BuildEngine = buildEngine.Object, - CandidateConfigurations = new[] { CreateCandidateProjectConfiguration(Path.GetFullPath(referenceProjectFile)) }, - ProjectReferences = Array.Empty() - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(false); - } - - [Fact] - public void MergesProjectConfigurationRespectsSetTargetFramework() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var referenceProjectFile = Path.Combine("..", "reference", "myRcl.csproj"); - var task = new MergeConfigurationProperties - { - BuildEngine = buildEngine.Object, - CandidateConfigurations = new[] { CreateCandidateProjectConfiguration(Path.GetFullPath(referenceProjectFile)) }, - ProjectReferences = new[] { - CreateProjectReference( - project: Path.Combine("..", "myRcl", "myRcl.csproj"), - msBuildSourceProjectFile: Path.GetFullPath(referenceProjectFile), - setTargetFramework: $"TargetFramework={ToolsetInfo.CurrentTargetFramework}") - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.ProjectConfigurations.Should().HaveCount(1); - var config = task.ProjectConfigurations[0]; - config.GetMetadata("Source").Should().Be("myRcl"); - config.GetMetadata("GetBuildAssetsTargets").Should().Be("GetCurrentProjectBuildStaticWebAssetItems"); - config.GetMetadata("GetPublishAssetsTargets").Should() - .Be("ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems"); - config.GetMetadata("Version").Should().Be("2"); - config.GetMetadata("AdditionalBuildProperties").Should().Be($"TargetFramework={ToolsetInfo.CurrentTargetFramework}"); - config.GetMetadata("AdditionalBuildPropertiesToRemove").Should().Be(""); - config.GetMetadata("AdditionalPublishProperties").Should().Be($"TargetFramework={ToolsetInfo.CurrentTargetFramework}"); - config.GetMetadata("AdditionalPublishPropertiesToRemove").Should().Be(""); - } - - [Fact] - public void MergesProjectConfigurationRespectsSetPlatform() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var referenceProjectFile = Path.Combine("..", "reference", "myRcl.csproj"); - var task = new MergeConfigurationProperties - { - BuildEngine = buildEngine.Object, - CandidateConfigurations = new[] { CreateCandidateProjectConfiguration(Path.GetFullPath(referenceProjectFile)) }, - ProjectReferences = new[] { - CreateProjectReference( - project: Path.Combine("..", "myRcl", "myRcl.csproj"), - msBuildSourceProjectFile: Path.GetFullPath(referenceProjectFile), - setPlatform: "RuntimeIdentifier=win-x64") - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.ProjectConfigurations.Should().HaveCount(1); - var config = task.ProjectConfigurations[0]; - config.GetMetadata("Source").Should().Be("myRcl"); - config.GetMetadata("GetBuildAssetsTargets").Should().Be("GetCurrentProjectBuildStaticWebAssetItems"); - config.GetMetadata("GetPublishAssetsTargets").Should() - .Be("ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems"); - config.GetMetadata("Version").Should().Be("2"); - config.GetMetadata("AdditionalBuildProperties").Should().Be("RuntimeIdentifier=win-x64"); - config.GetMetadata("AdditionalBuildPropertiesToRemove").Should().Be(""); - config.GetMetadata("AdditionalPublishProperties").Should().Be("RuntimeIdentifier=win-x64"); - config.GetMetadata("AdditionalPublishPropertiesToRemove").Should().Be(""); - } - - [Fact] - public void MergesProjectConfigurationRespectsSetConfiguration() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var referenceProjectFile = Path.Combine("..", "reference", "myRcl.csproj"); - var task = new MergeConfigurationProperties - { - BuildEngine = buildEngine.Object, - CandidateConfigurations = new[] { CreateCandidateProjectConfiguration(Path.GetFullPath(referenceProjectFile)) }, - ProjectReferences = new[] { - CreateProjectReference( - project: Path.Combine("..", "myRcl", "myRcl.csproj"), - msBuildSourceProjectFile: Path.GetFullPath(referenceProjectFile), - setConfiguration: "Configuration=Release") - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.ProjectConfigurations.Should().HaveCount(1); - var config = task.ProjectConfigurations[0]; - config.GetMetadata("Source").Should().Be("myRcl"); - config.GetMetadata("GetBuildAssetsTargets").Should().Be("GetCurrentProjectBuildStaticWebAssetItems"); - config.GetMetadata("GetPublishAssetsTargets").Should() - .Be("ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems"); - config.GetMetadata("Version").Should().Be("2"); - config.GetMetadata("AdditionalBuildProperties").Should().Be("Configuration=Release"); - config.GetMetadata("AdditionalBuildPropertiesToRemove").Should().Be(""); - config.GetMetadata("AdditionalPublishProperties").Should().Be("Configuration=Release"); - config.GetMetadata("AdditionalPublishPropertiesToRemove").Should().Be(""); - } - - [Fact] - public void MergesProjectConfigurationRespectsGlobalPropertiesToRemove() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var referenceProjectFile = Path.Combine("..", "reference", "myRcl.csproj"); - var task = new MergeConfigurationProperties - { - BuildEngine = buildEngine.Object, - CandidateConfigurations = new[] { CreateCandidateProjectConfiguration(Path.GetFullPath(referenceProjectFile)) }, - ProjectReferences = new[] { - CreateProjectReference( - project: Path.Combine("..", "myRcl", "myRcl.csproj"), - msBuildSourceProjectFile: Path.GetFullPath(referenceProjectFile), - undefineProperties: "TargetFramework", - globalPropertiesToRemove: "RuntimeIdentifier") - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.ProjectConfigurations.Should().HaveCount(1); - var config = task.ProjectConfigurations[0]; - config.GetMetadata("Source").Should().Be("myRcl"); - config.GetMetadata("GetBuildAssetsTargets").Should().Be("GetCurrentProjectBuildStaticWebAssetItems"); - config.GetMetadata("GetPublishAssetsTargets").Should() - .Be("ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems"); - config.GetMetadata("Version").Should().Be("2"); - config.GetMetadata("AdditionalBuildProperties").Should().Be(""); - config.GetMetadata("AdditionalBuildPropertiesToRemove").Should().Be("RuntimeIdentifier;TargetFramework"); - config.GetMetadata("AdditionalPublishProperties").Should().Be(""); - config.GetMetadata("AdditionalPublishPropertiesToRemove").Should().Be("RuntimeIdentifier;TargetFramework"); - } - - private static ITaskItem CreateCandidateProjectConfiguration(string project) - { - return new TaskItem(Path.GetFullPath(project), new Dictionary - { - ["AdditionalPublishProperties"] = "", - ["GetBuildAssetsTargets"] = "GetCurrentProjectBuildStaticWebAssetItems", - ["GetPublishAssetsTargets"] = "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - ["Version"] = "2", - ["AdditionalBuildProperties"] = "", - ["Source"] = "myRcl", - ["AdditionalPublishPropertiesToRemove"] = "", - ["AdditionalBuildPropertiesToRemove"] = "", - }); - } - - private static ITaskItem CreateProjectReference( - string project, - string msBuildSourceProjectFile, - string undefineProperties = "", - string setConfiguration = "", - string setPlatform = "", - string setTargetFramework = "", - string globalPropertiesToRemove = "") - { - return new TaskItem(project, new Dictionary - { - ["MSBuildSourceProjectFile"] = msBuildSourceProjectFile, - ["UndefineProperties"] = undefineProperties, - ["SetConfiguration"] = setConfiguration, - ["SetPlatform"] = setPlatform, - ["SetTargetFramework"] = setTargetFramework, - ["GlobalPropertiesToRemove"] = globalPropertiesToRemove, - }); - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/OverrideHtmlAssetPlaceholdersTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/OverrideHtmlAssetPlaceholdersTest.cs deleted file mode 100644 index 31e709b85f12..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/OverrideHtmlAssetPlaceholdersTest.cs +++ /dev/null @@ -1,290 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using System.Text.RegularExpressions; - -namespace Microsoft.AspNetCore.Razor.Tasks; - -public class OverrideHtmlAssetPlaceholdersTest -{ - [Theory] - [InlineData( - """ - - """, - true, - "main.js" - )] - [InlineData( - """ - - """, - true, - "main.js" - )] - [InlineData( - """ - - """, - true, - "main.js" - )] - [InlineData( - """ - - """, - true, - "./main.js" - )] - [InlineData( - """ - - """, - true, - "./folder/folder/file.name.something.js" - )] - [InlineData( - """ - - """, - true, - "main.suffix.js" - )] - [InlineData( - """ - - """, - true, - "/root/main.suffix.js" - )] - [InlineData( - """ - - """, - false - )] - [InlineData( - """ - - """, - false - )] - [InlineData( - """ - - """, - false - )] - [InlineData( - """ -

main#[.{fingerprint}].js

- """, - false - )] - [InlineData( - """ - - """, - true, - "main.js" - )] - [InlineData( - """ - - """, - true, - "./main.js" - )] - [InlineData( - """ - - """, - true, - "main.js" - )] - public void ValidateAssetsRegex(string input, bool shouldMatch, string fileName = null) - { - var match = OverrideHtmlAssetPlaceholders._assetsRegex.Match(input); - Assert.Equal(shouldMatch, match.Success); - - if (fileName != null) - { - Assert.Equal(fileName, match.Groups["fileName"].Value + match.Groups["fileExtension"].Value); - } - } - - [Theory] - [InlineData( - """ - - """, - true - )] - [InlineData( - """ - - """, - true - )] - [InlineData( - """ - - """, - true - )] - [InlineData( - """ - - """, - true - )] - [InlineData( - """ - - """, - false - )] - [InlineData( - """ - - """, - false - )] - [InlineData( - """ - - """, - false - )] - public void ValidateImportMapRegex(string input, bool shouldMatch) - { - Assert.Equal(shouldMatch, OverrideHtmlAssetPlaceholders._importMapRegex.Match(input).Success); - } - - [Theory] - [InlineData( - """ - - """, - true - )] - [InlineData( - """ - - """, - true - )] - [InlineData( - """ - - """, - true - )] - [InlineData( - """ - - """, - false - )] - [InlineData( - """ - - """, - false - )] - [InlineData( - """ - " - """, - false - )] - [InlineData( - """ - " - """, - false - )] - [InlineData( - """ - - """, - false - )] - [InlineData( - """ - - """, - true, - "webassembly" - )] - [InlineData( - """ - - """, - true, - "webassembly" - )] - [InlineData( - """ - - """, - false - )] - [InlineData( - """ - - """, - false - )] - [InlineData( - """ - - """, - false - )] - [InlineData( - """ - - """, - true, - "webassembly" - )] - public void ValidatePreloadRegex(string input, bool shouldMatch, string group = null) - { - var match = OverrideHtmlAssetPlaceholders._preloadRegex.Match(input); - Assert.Equal(shouldMatch, match.Success); - - if (group != null) - { - Assert.Equal(group, match.Groups["group"]?.Value); - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ReadStaticWebAssetsManifestFileTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ReadStaticWebAssetsManifestFileTest.cs deleted file mode 100644 index cf0a2da930ef..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ReadStaticWebAssetsManifestFileTest.cs +++ /dev/null @@ -1,383 +0,0 @@ -// 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 System.Text.Json; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - public class ReadStaticWebAssetsManifestFileTest - { - public ReadStaticWebAssetsManifestFileTest() - { - Directory.CreateDirectory(Path.Combine(TestContext.Current.TestExecutionDirectory, nameof(ReadStaticWebAssetsManifestFileTest))); - TempFilePath = Path.Combine(TestContext.Current.TestExecutionDirectory, nameof(ReadStaticWebAssetsManifestFileTest), Guid.NewGuid().ToString("N") + ".json"); - } - - public string TempFilePath { get; } - - [Fact] - public void CanReadManifestWithoutProperties() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var emptyManifest = "{}"; - File.WriteAllText(TempFilePath, emptyManifest); - - var task = new ReadStaticWebAssetsManifestFile - { - BuildEngine = buildEngine.Object, - ManifestPath = TempFilePath - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.Assets.Should().BeEmpty(); - task.Endpoints.Should().BeEmpty(); - task.DiscoveryPatterns.Should().BeEmpty(); - task.ReferencedProjectsConfiguration.Should().BeEmpty(); - } - - [Fact] - public void CanReadEmptyManifest() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var emptyManifest = @"{ - ""Version"": 1, - ""Hash"": ""__hash__"", - ""Source"": ""ComponentApp"", - ""BasePath"": ""_content/ComponentApp"", - ""Mode"": ""Default"", - ""ManifestType"": ""Build"", - ""ReferencedProjectsConfiguration"": [], - ""DiscoveryPatterns"": [], - ""Assets"": [], - ""Endpoints"": [] -}"; - File.WriteAllText(TempFilePath, emptyManifest); - - var task = new ReadStaticWebAssetsManifestFile - { - BuildEngine = buildEngine.Object, - ManifestPath = TempFilePath - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.Assets.Should().BeEmpty(); - task.Endpoints.Should().BeEmpty(); - task.DiscoveryPatterns.Should().BeEmpty(); - task.ReferencedProjectsConfiguration.Should().BeEmpty(); - } - - [Fact] - public void ConvertsAssetsToTaskItems() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var contentRoot = Path.GetFullPath("."); - var encodedContentRoot = JsonEncodedText.Encode(contentRoot); - var identity = Path.Combine(contentRoot, "ComponentApp.styles.css"); - var encodedIdentity = JsonEncodedText.Encode(identity); - var manifest = $@"{{ - ""Version"": 1, - ""Hash"": ""__hash__"", - ""Source"": ""ComponentApp"", - ""BasePath"": ""_content/ComponentApp"", - ""Mode"": ""Default"", - ""ManifestType"": ""Build"", - ""ReferencedProjectsConfiguration"": [], - ""DiscoveryPatterns"": [], - ""Assets"": [ - {{ - ""Identity"": ""{encodedIdentity}"", - ""SourceId"": ""ComponentApp"", - ""SourceType"": ""Computed"", - ""ContentRoot"": ""{encodedContentRoot}"", - ""BasePath"": ""_content/ComponentApp"", - ""RelativePath"": ""ComponentApp.styles.css"", - ""AssetKind"": ""All"", - ""AssetMode"": ""CurrentProject"", - ""AssetRole"": ""Primary"", - ""RelatedAsset"": """", - ""AssetTraitName"": ""ScopedCss"", - ""AssetTraitValue"": ""ApplicationBundle"", - ""CopyToOutputDirectory"": ""Never"", - ""CopyToPublishDirectory"": ""PreserveNewest"", - ""OriginalItemSpec"": ""{encodedIdentity}"" - }} - ], -""Endpoints"": [ - {{ - ""AssetFile"": ""{encodedIdentity}"", - ""Route"": ""_content/ComponentApp/ComponentApp.styles.css"", - ""Selectors"": [ - {{ - ""Name"": ""Content-Encoding"", - ""Value"": ""gzip"", - ""Quality"": ""0.9"" - }} - ], - ""ResponseHeaders"": [ - {{ - ""Name"": ""Accept-Ranges"", - ""Value"": ""bytes"" - }}, - {{ - ""Name"": ""Content-Length"", - ""Value"": ""__content-length__"" - }}, - {{ - ""Name"": ""Content-Type"", - ""Value"": ""text/css"" - }}, - {{ - ""Name"": ""ETag"", - ""Value"": ""__etag__"" - }}, - {{ - ""Name"": ""Last-Modified"", - ""Value"": ""__last-modified__"" - }} - ] - }} - ] -}}"; - File.WriteAllText(TempFilePath, manifest); - - var task = new ReadStaticWebAssetsManifestFile - { - BuildEngine = buildEngine.Object, - ManifestPath = TempFilePath - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.ReferencedProjectsConfiguration.Should().BeEmpty(); - task.DiscoveryPatterns.Should().BeEmpty(); - task.Assets.Length.Should().Be(1); - var asset = task.Assets[0]; - asset.GetMetadata(nameof(StaticWebAsset.Identity)).Should().BeEquivalentTo($"{identity}"); - asset.GetMetadata(nameof(StaticWebAsset.SourceId)).Should().BeEquivalentTo("ComponentApp"); - asset.GetMetadata(nameof(StaticWebAsset.SourceType)).Should().BeEquivalentTo("Computed"); - asset.GetMetadata(nameof(StaticWebAsset.ContentRoot)).Should().BeEquivalentTo($"{contentRoot}"); - asset.GetMetadata(nameof(StaticWebAsset.BasePath)).Should().BeEquivalentTo("_content/ComponentApp"); - asset.GetMetadata(nameof(StaticWebAsset.RelativePath)).Should().BeEquivalentTo("ComponentApp.styles.css"); - asset.GetMetadata(nameof(StaticWebAsset.AssetKind)).Should().BeEquivalentTo("All"); - asset.GetMetadata(nameof(StaticWebAsset.AssetMode)).Should().BeEquivalentTo("CurrentProject"); - asset.GetMetadata(nameof(StaticWebAsset.AssetRole)).Should().BeEquivalentTo("Primary"); - asset.GetMetadata(nameof(StaticWebAsset.RelatedAsset)).Should().BeEquivalentTo(""); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitName)).Should().BeEquivalentTo("ScopedCss"); - asset.GetMetadata(nameof(StaticWebAsset.AssetTraitValue)).Should().BeEquivalentTo("ApplicationBundle"); - asset.GetMetadata(nameof(StaticWebAsset.CopyToOutputDirectory)).Should().BeEquivalentTo("Never"); - asset.GetMetadata(nameof(StaticWebAsset.CopyToPublishDirectory)).Should().BeEquivalentTo("PreserveNewest"); - asset.GetMetadata(nameof(StaticWebAsset.OriginalItemSpec)).Should().BeEquivalentTo($"{identity}"); - - task.Endpoints.Length.Should().Be(1); - var endpoint = task.Endpoints[0]; - endpoint.ItemSpec.Should().BeEquivalentTo("_content/ComponentApp/ComponentApp.styles.css"); - endpoint.GetMetadata(nameof(StaticWebAssetEndpoint.AssetFile)).Should().BeEquivalentTo($"{identity}"); - endpoint.GetMetadata(nameof(StaticWebAssetEndpoint.Selectors)).Should().BeEquivalentTo("""[{"Name":"Content-Encoding","Value":"gzip","Quality":"0.9"}]"""); - endpoint.GetMetadata(nameof(StaticWebAssetEndpoint.ResponseHeaders)) - .Should() - .BeEquivalentTo("""[{"Name":"Accept-Ranges","Value":"bytes"},{"Name":"Content-Length","Value":"__content-length__"},{"Name":"Content-Type","Value":"text/css"},{"Name":"ETag","Value":"__etag__"},{"Name":"Last-Modified","Value":"__last-modified__"}]"""); - } - - [Fact] - public void ConvertsReferencedProjectsConfigurationsToTaskItems() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var contentRoot = Path.GetFullPath("."); - var identity = Path.Combine(contentRoot, "AnotherClassLib", "AnotherClassLib.csproj"); - var encodedIdentity = JsonEncodedText.Encode(identity); - var manifest = $@"{{ - ""Version"": 1, - ""Hash"": ""__hash__"", - ""Source"": ""ComponentApp"", - ""BasePath"": ""_content/ComponentApp"", - ""Mode"": ""Default"", - ""ManifestType"": ""Build"", - ""ReferencedProjectsConfiguration"": [ - {{ - ""Identity"": ""{encodedIdentity}"", - ""Version"": 2, - ""Source"": ""AnotherClassLib"", - ""GetPublishAssetsTargets"": ""ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems"", - ""AdditionalPublishProperties"": "";"", - ""AdditionalPublishPropertiesToRemove"": "";WebPublishProfileFile"", - ""GetBuildAssetsTargets"": ""GetCurrentProjectBuildStaticWebAssetItems"", - ""AdditionalBuildProperties"": "";"", - ""AdditionalBuildPropertiesToRemove"": "";WebPublishProfileFile"" - }} -], - ""DiscoveryPatterns"": [], - ""Assets"": [], - ""Endpoints"": [] -}}"; - File.WriteAllText(TempFilePath, manifest); - - var task = new ReadStaticWebAssetsManifestFile - { - BuildEngine = buildEngine.Object, - ManifestPath = TempFilePath - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.ReferencedProjectsConfiguration.Length.Should().Be(1); - task.Assets.Should().BeEmpty(); - task.Endpoints.Should().BeEmpty(); - task.DiscoveryPatterns.Should().BeEmpty(); - var projectConfiguration = task.ReferencedProjectsConfiguration[0]; - projectConfiguration.ItemSpec.Should().BeEquivalentTo(identity); - projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.Version)).Should().BeEquivalentTo("2"); - projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.Source)).Should().BeEquivalentTo("AnotherClassLib"); - projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.GetPublishAssetsTargets)).Should().BeEquivalentTo("ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems"); - projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.AdditionalPublishProperties)).Should().BeEquivalentTo(";"); - projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.AdditionalPublishPropertiesToRemove)).Should().BeEquivalentTo(";WebPublishProfileFile"); - projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.GetBuildAssetsTargets)).Should().BeEquivalentTo("GetCurrentProjectBuildStaticWebAssetItems"); - projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.AdditionalBuildProperties)).Should().BeEquivalentTo(";"); - projectConfiguration.GetMetadata(nameof(StaticWebAssetsManifest.ReferencedProjectConfiguration.AdditionalBuildPropertiesToRemove)).Should().BeEquivalentTo(";WebPublishProfileFile"); - } - - [Fact] - public void ConvertsDiscoveryPatternsToTaskItems() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var contentRoot = Path.Combine(Path.GetFullPath("."), "AnotherClassLib", "wwwroot"); - var encodedContentRoot = JsonEncodedText.Encode(contentRoot); - var manifest = $@"{{ - ""Version"": 1, - ""Hash"": ""__hash__"", - ""Source"": ""ComponentApp"", - ""BasePath"": ""_content/ComponentApp"", - ""Mode"": ""Default"", - ""ManifestType"": ""Build"", - ""ReferencedProjectsConfiguration"": [ ], - ""DiscoveryPatterns"": [ - {{ - ""Name"": ""AnotherClassLib\\wwwroot"", - ""Source"": ""AnotherClassLib"", - ""ContentRoot"": ""{encodedContentRoot}"", - ""BasePath"": ""_content/AnotherClassLib"", - ""Pattern"": ""**"" - }} -], - ""Assets"": [], - ""Endpoints"": [] -}}"; - File.WriteAllText(TempFilePath, manifest); - - var task = new ReadStaticWebAssetsManifestFile - { - BuildEngine = buildEngine.Object, - ManifestPath = TempFilePath - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - task.DiscoveryPatterns.Length.Should().Be(1); - task.ReferencedProjectsConfiguration.Should().BeEmpty(); - task.Assets.Should().BeEmpty(); - task.Endpoints.Should().BeEmpty(); - var discoveryPattern = task.DiscoveryPatterns[0]; - - discoveryPattern.ItemSpec.Should().BeEquivalentTo(Path.Combine("AnotherClassLib", "wwwroot")); - discoveryPattern.GetMetadata(nameof(StaticWebAssetsDiscoveryPattern.Source)).Should().BeEquivalentTo("AnotherClassLib"); - discoveryPattern.GetMetadata(nameof(StaticWebAssetsDiscoveryPattern.ContentRoot)).Should().BeEquivalentTo($"{contentRoot}"); - discoveryPattern.GetMetadata(nameof(StaticWebAssetsDiscoveryPattern.BasePath)).Should().BeEquivalentTo("_content/AnotherClassLib"); - discoveryPattern.GetMetadata(nameof(StaticWebAssetsDiscoveryPattern.Pattern)).Should().BeEquivalentTo("**"); - } - - [Fact] - public void ReturnsErrorwhenManifestDoesNotExist() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ReadStaticWebAssetsManifestFile - { - BuildEngine = buildEngine.Object, - ManifestPath = "nonexisting.staticwebassets.json" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(false); - errorMessages.Count.Should().Be(1); - errorMessages[0].Should().Be("Manifest file at 'nonexisting.staticwebassets.json' not found."); - task.Assets.Should().BeNull(); - task.DiscoveryPatterns.Should().BeNull(); - task.ReferencedProjectsConfiguration.Should().BeNull(); - } - - [Fact] - public void ReturnsErrorwhenManifestIsMalformed() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var manifest = "{"; - File.WriteAllText(TempFilePath, manifest); - var task = new ReadStaticWebAssetsManifestFile - { - BuildEngine = buildEngine.Object, - ManifestPath = TempFilePath - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(false); - errorMessages.Count.Should().Be(1); - task.Assets.Should().BeNull(); - task.Endpoints.Should().BeNull(); - task.DiscoveryPatterns.Should().BeNull(); - task.ReferencedProjectsConfiguration.Should().BeNull(); - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ResolveAllScopedCssAssetsTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ResolveAllScopedCssAssetsTest.cs deleted file mode 100644 index f6261ae15561..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ResolveAllScopedCssAssetsTest.cs +++ /dev/null @@ -1,122 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Utilities; - -namespace Microsoft.NET.Sdk.Razor.Test -{ - public class ResolveAllScopedCssAssetsTest - { - [Fact] - public void ResolveAllScopedCssAssets_IgnoresRegularCssFiles() - { - // Arrange - var taskInstance = new ResolveAllScopedCssAssets() - { - StaticWebAssets = new[] - { - new TaskItem("TestFiles/Pages/Counter.razor.rz.scp.css", new Dictionary - { - ["RelativePath"] = "Pages/Counter.razor.rz.scp.css" - }), - new TaskItem("site.css", new Dictionary - { - ["RelativePath"] = "site.css" - }), - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.ScopedCssAssets.Should().ContainSingle(); - taskInstance.ScopedCssAssets.Should().NotContain(scopedCssAsset => scopedCssAsset.ItemSpec == "site.css"); - } - - [Fact] - public void ResolveAllScopedCssAssets_DetectsScopedCssFiles() - { - // Arrange - var taskInstance = new ResolveAllScopedCssAssets() - { - StaticWebAssets = new[] - { - new TaskItem("TestFiles/Pages/Counter.razor.rz.scp.css", new Dictionary - { - ["RelativePath"] = "Pages/Counter.razor.rz.scp.css" - }), - new TaskItem("site.css", new Dictionary - { - ["RelativePath"] = "site.css" - }), - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.ScopedCssAssets.Should().ContainSingle(); - taskInstance.ScopedCssAssets.Should().Contain(scopedCssAsset => scopedCssAsset.ItemSpec == "TestFiles/Pages/Counter.razor.rz.scp.css"); - } - - [Fact] - public void ResolveAllScopedCssAssets_DetectsScopedCssProjectBundleFiles() - { - // Arrange - var taskInstance = new ResolveAllScopedCssAssets() - { - StaticWebAssets = new[] - { - new TaskItem("Folder/Project.bundle.scp.css", new Dictionary - { - ["RelativePath"] = "Project.bundle.scp.css" - }), - new TaskItem("site.css", new Dictionary - { - ["RelativePath"] = "site.css" - }), - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.ScopedCssProjectBundles.Should().ContainSingle(); - taskInstance.ScopedCssProjectBundles.Should().Contain(scopedCssBundle => scopedCssBundle.ItemSpec == "Folder/Project.bundle.scp.css"); - } - - [Fact] - public void ResolveAllScopedCssAssets_IgnoresScopedCssApplicationBundleFiles() - { - // Arrange - var taskInstance = new ResolveAllScopedCssAssets() - { - StaticWebAssets = new[] - { - new TaskItem("Folder/Project.styles.css", new Dictionary - { - ["RelativePath"] = "Project.styles.css" - }), - new TaskItem("site.css", new Dictionary - { - ["RelativePath"] = "site.css" - }), - } - }; - - // Act - var result = taskInstance.Execute(); - - // Assert - result.Should().BeTrue(); - taskInstance.ScopedCssProjectBundles.Should().BeEmpty(); - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ResolveCompressedAssetsTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ResolveCompressedAssetsTest.cs deleted file mode 100644 index 57f92d3e3f03..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ResolveCompressedAssetsTest.cs +++ /dev/null @@ -1,475 +0,0 @@ -// 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 System.Diagnostics.Metrics; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; -using NuGet.ContentModel; -using NuGet.Packaging.Core; - -namespace Microsoft.NET.Sdk.Razor.Tests; - -public class ResolveCompressedAssetsTest -{ - public string ItemSpec { get; } - - public string OriginalItemSpec { get; } - - public string OutputBasePath { get; } - - public ResolveCompressedAssetsTest() - { - OutputBasePath = Path.Combine(TestContext.Current.TestExecutionDirectory, nameof(ResolveCompressedAssetsTest)); - ItemSpec = Path.Combine(OutputBasePath, Guid.NewGuid().ToString("N") + ".tmp"); - OriginalItemSpec = Path.Combine(OutputBasePath, Guid.NewGuid().ToString("N") + ".tmp"); - } - - [Fact] - public void ResolvesExplicitlyProvidedAssets() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var asset = new StaticWebAsset() - { - Identity = ItemSpec, - OriginalItemSpec = OriginalItemSpec, - RelativePath = Path.GetFileName(ItemSpec), - ContentRoot = Path.GetDirectoryName(ItemSpec), - SourceType = StaticWebAsset.SourceTypes.Discovered, - SourceId = "App", - AssetKind = StaticWebAsset.AssetKinds.All, - AssetMode = StaticWebAsset.AssetModes.All, - AssetRole = StaticWebAsset.AssetRoles.Primary, - Fingerprint = "v1", - Integrity = "abc", - FileLength = 10, - LastWriteTime = DateTime.UtcNow - }.ToTaskItem(); - - var gzipExplicitAsset = new TaskItem(asset.ItemSpec, asset.CloneCustomMetadata()); - var brotliExplicitAsset = new TaskItem(asset.ItemSpec, asset.CloneCustomMetadata()); - - var task = new ResolveCompressedAssets() - { - OutputPath = OutputBasePath, - BuildEngine = buildEngine.Object, - CandidateAssets = new[] { asset }, - Formats = "gzip;brotli", - ExplicitAssets = new[] { gzipExplicitAsset, brotliExplicitAsset }, - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeTrue(); - task.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(2); - task.AssetsToCompress[0].ItemSpec.Should().EndWith(".gz"); - task.AssetsToCompress[1].ItemSpec.Should().EndWith(".br"); - } - - [Fact] - public void InfersPreCompressedAssetsCorrectly() - { - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var uncompressedCandidate = new StaticWebAsset - { - Identity = Path.Combine(Environment.CurrentDirectory, "wwwroot", "js", "site.js"), - RelativePath = "js/site#[.{fingerprint}]?.js", - BasePath = "_content/Test", - AssetMode = StaticWebAsset.AssetModes.All, - AssetKind = StaticWebAsset.AssetKinds.All, - AssetMergeSource = string.Empty, - SourceId = "Test", - CopyToOutputDirectory = StaticWebAsset.AssetCopyOptions.Never, - Fingerprint = "xtxxf3hu2r", - RelatedAsset = string.Empty, - ContentRoot = Path.Combine(Environment.CurrentDirectory,"wwwroot"), - SourceType = StaticWebAsset.SourceTypes.Discovered, - Integrity = "hRQyftXiu1lLX2P9Ly9xa4gHJgLeR1uGN5qegUobtGo=", - FileLength = 10, - LastWriteTime = DateTime.UtcNow, - AssetRole = StaticWebAsset.AssetRoles.Primary, - AssetMergeBehavior = string.Empty, - AssetTraitValue = string.Empty, - AssetTraitName = string.Empty, - OriginalItemSpec = Path.Combine("wwwroot", "js", "site.js"), - CopyToPublishDirectory = StaticWebAsset.AssetCopyOptions.PreserveNewest - }; - - var compressedCandidate = new StaticWebAsset - { - Identity = Path.Combine(Environment.CurrentDirectory, "wwwroot", "js", "site.js.gz"), - RelativePath = "js/site.js#[.{fingerprint}]?.gz", - BasePath = "_content/Test", - AssetMode = StaticWebAsset.AssetModes.All, - AssetKind = StaticWebAsset.AssetKinds.All, - AssetMergeSource = string.Empty, - SourceId = "Test", - CopyToOutputDirectory = StaticWebAsset.AssetCopyOptions.Never, - Fingerprint = "es13vhk42b", - RelatedAsset = string.Empty, - ContentRoot = Path.Combine(Environment.CurrentDirectory, "wwwroot"), - SourceType = StaticWebAsset.SourceTypes.Discovered, - Integrity = "zs5Fd3XI6+g9f4N1SFLVdgghuiqdvq+nETAjTbvVxx4=", - AssetRole = StaticWebAsset.AssetRoles.Primary, - AssetMergeBehavior = string.Empty, - AssetTraitValue = string.Empty, - AssetTraitName = string.Empty, - OriginalItemSpec = Path.Combine("wwwroot", "js", "site.js.gz"), - CopyToPublishDirectory = StaticWebAsset.AssetCopyOptions.PreserveNewest, - FileLength = 10, - LastWriteTime = DateTime.UtcNow - }; - - var task = new ResolveCompressedAssets - { - OutputPath = OutputBasePath, - CandidateAssets = [uncompressedCandidate.ToTaskItem(), compressedCandidate.ToTaskItem()], - Formats = "gzip", - BuildEngine = buildEngine.Object - }; - - var result = task.Execute(); - - result.Should().BeTrue(); - task.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(0); - } - - [Fact] - public void ResolvesAssetsMatchingIncludePattern() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var asset = new StaticWebAsset() - { - Identity = ItemSpec, - OriginalItemSpec = OriginalItemSpec, - RelativePath = Path.GetFileName(ItemSpec), - ContentRoot = Path.GetDirectoryName(ItemSpec), - SourceType = StaticWebAsset.SourceTypes.Discovered, - SourceId = "App", - AssetKind = StaticWebAsset.AssetKinds.All, - AssetMode = StaticWebAsset.AssetModes.All, - AssetRole = StaticWebAsset.AssetRoles.Primary, - Fingerprint = "v1", - Integrity = "abc", - FileLength = 10, - LastWriteTime = DateTime.UtcNow - }.ToTaskItem(); - - var task = new ResolveCompressedAssets() - { - OutputPath = OutputBasePath, - BuildEngine = buildEngine.Object, - CandidateAssets = new[] { asset }, - IncludePatterns = "**\\*.tmp", - Formats = "gzip;brotli", - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeTrue(); - task.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(2); - task.AssetsToCompress[0].ItemSpec.Should().EndWith(".gz"); - task.AssetsToCompress[1].ItemSpec.Should().EndWith(".br"); - } - - [Fact] - public void ResolvesAssets_WithFingerprint_MatchingIncludePattern() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var asset = new StaticWebAsset() - { - Identity = ItemSpec, - OriginalItemSpec = OriginalItemSpec, - RelativePath = Path.GetFileNameWithoutExtension(ItemSpec)+"#[.{fingerprint}]" + Path.GetExtension(ItemSpec), - ContentRoot = Path.GetDirectoryName(ItemSpec), - SourceType = StaticWebAsset.SourceTypes.Discovered, - SourceId = "App", - AssetKind = StaticWebAsset.AssetKinds.All, - AssetMode = StaticWebAsset.AssetModes.All, - AssetRole = StaticWebAsset.AssetRoles.Primary, - Fingerprint = "v1", - Integrity = "abc", - FileLength = 10, - LastWriteTime = DateTime.UtcNow - }.ToTaskItem(); - - var task = new ResolveCompressedAssets() - { - OutputPath = OutputBasePath, - BuildEngine = buildEngine.Object, - CandidateAssets = new[] { asset }, - IncludePatterns = "**\\*.tmp", - Formats = "gzip;brotli", - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeTrue(); - task.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(2); - task.AssetsToCompress[0].ItemSpec.Should().EndWith(".gz"); - var relativePath = task.AssetsToCompress[0].GetMetadata("RelativePath"); - relativePath.Should().EndWith(".gz"); - relativePath = Path.GetFileNameWithoutExtension(relativePath); - relativePath.Should().EndWith(".tmp"); - relativePath = Path.GetFileNameWithoutExtension(relativePath); - relativePath.Should().EndWith("#[.{fingerprint=v1}]"); - task.AssetsToCompress[1].ItemSpec.Should().EndWith(".br"); - relativePath = task.AssetsToCompress[1].GetMetadata("RelativePath"); - relativePath.Should().EndWith(".br"); - relativePath = Path.GetFileNameWithoutExtension(relativePath); - relativePath.Should().EndWith(".tmp"); - relativePath = Path.GetFileNameWithoutExtension(relativePath); - relativePath.Should().EndWith("#[.{fingerprint=v1}]"); - } - - [Fact] - public void ExcludesAssetsMatchingExcludePattern() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var asset = new StaticWebAsset() - { - Identity = ItemSpec, - OriginalItemSpec = OriginalItemSpec, - RelativePath = Path.GetFileName(ItemSpec), - ContentRoot = Path.GetDirectoryName(ItemSpec), - SourceType = StaticWebAsset.SourceTypes.Discovered, - SourceId = "App", - AssetKind = StaticWebAsset.AssetKinds.All, - AssetMode = StaticWebAsset.AssetModes.All, - AssetRole = StaticWebAsset.AssetRoles.Primary, - Fingerprint = "v1", - Integrity = "abc", - FileLength = 10, - LastWriteTime = DateTime.UtcNow - }.ToTaskItem(); - - var task = new ResolveCompressedAssets() - { - OutputPath = OutputBasePath, - BuildEngine = buildEngine.Object, - IncludePatterns = "**\\*", - ExcludePatterns = "**\\*.tmp", - CandidateAssets = new[] { asset }, - Formats = "gzip;brotli" - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeTrue(); - task.AssetsToCompress.Should().HaveCount(0); - } - - [Fact] - public void DeduplicatesAssetsResolvedBothExplicitlyAndFromPattern() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var asset = new StaticWebAsset() - { - Identity = ItemSpec, - OriginalItemSpec = OriginalItemSpec, - RelativePath = Path.GetFileName(ItemSpec), - ContentRoot = Path.GetDirectoryName(ItemSpec), - SourceType = StaticWebAsset.SourceTypes.Discovered, - SourceId = "App", - AssetKind = StaticWebAsset.AssetKinds.All, - AssetMode = StaticWebAsset.AssetModes.All, - AssetRole = StaticWebAsset.AssetRoles.Primary, - Fingerprint = "v1", - Integrity = "abc", - FileLength = 10, - LastWriteTime = DateTime.UtcNow - }.ToTaskItem(); - - var gzipExplicitAsset = new TaskItem(asset.ItemSpec, asset.CloneCustomMetadata()); - var brotliExplicitAsset = new TaskItem(asset.ItemSpec, asset.CloneCustomMetadata()); - - var buildTask = new ResolveCompressedAssets() - { - OutputPath = OutputBasePath, - BuildEngine = buildEngine.Object, - CandidateAssets = new[] { asset }, - IncludePatterns = "**\\*.tmp", - ExplicitAssets = new[] { gzipExplicitAsset, brotliExplicitAsset }, - Formats = "gzip;brotli" - }; - - // Act - var buildResult = buildTask.Execute(); - - // Assert - buildResult.Should().BeTrue(); - buildTask.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(2); - buildTask.AssetsToCompress[0].ItemSpec.Should().EndWith(".gz"); - buildTask.AssetsToCompress[1].ItemSpec.Should().EndWith(".br"); - } - - [Fact] - public void IgnoresAssetsCompressedInPreviousTaskRun_Gzip() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var asset = new StaticWebAsset() - { - Identity = ItemSpec, - OriginalItemSpec = OriginalItemSpec, - RelativePath = Path.GetFileName(ItemSpec), - ContentRoot = Path.GetDirectoryName(ItemSpec), - SourceType = StaticWebAsset.SourceTypes.Discovered, - SourceId = "App", - AssetKind = StaticWebAsset.AssetKinds.All, - AssetMode = StaticWebAsset.AssetModes.All, - AssetRole = StaticWebAsset.AssetRoles.Primary, - Fingerprint = "v1", - Integrity = "abc", - FileLength = 10, - LastWriteTime = DateTime.UtcNow - }.ToTaskItem(); - - // Act/Assert - var task1 = new ResolveCompressedAssets() - { - OutputPath = OutputBasePath, - BuildEngine = buildEngine.Object, - CandidateAssets = new[] { asset }, - IncludePatterns = "**\\*.tmp", - Formats = "gzip", - }; - - var result1 = task1.Execute(); - - result1.Should().BeTrue(); - task1.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(1); - task1.AssetsToCompress[0].ItemSpec.Should().EndWith(".gz"); - task1.AssetsToCompress[0].SetMetadata("Fingerprint", "v1gz"); - task1.AssetsToCompress[0].SetMetadata("Integrity", "abcgz"); - - var brotliExplicitAsset = new TaskItem(asset.ItemSpec, asset.CloneCustomMetadata()); - brotliExplicitAsset.SetMetadata("Fingerprint", "v2"); - brotliExplicitAsset.SetMetadata("Integrity", "def"); - - var task2 = new ResolveCompressedAssets() - { - OutputPath = OutputBasePath, - BuildEngine = buildEngine.Object, - CandidateAssets = new[] { asset, task1.AssetsToCompress[0] }, - IncludePatterns = "**\\*.tmp", - ExplicitAssets = new[] { brotliExplicitAsset }, - Formats = "gzip;brotli" - }; - - var result2 = task2.Execute(); - - result2.Should().BeTrue(); - task2.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(1); - task2.AssetsToCompress[0].ItemSpec.Should().EndWith(".br"); - } - - [Fact] - public void IgnoresAssetsCompressedInPreviousTaskRun_Brotli() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var asset = new StaticWebAsset() - { - Identity = ItemSpec, - OriginalItemSpec = OriginalItemSpec, - RelativePath = Path.GetFileName(ItemSpec), - ContentRoot = Path.GetDirectoryName(ItemSpec), - SourceType = StaticWebAsset.SourceTypes.Discovered, - SourceId = "App", - AssetKind = StaticWebAsset.AssetKinds.All, - AssetMode = StaticWebAsset.AssetModes.All, - AssetRole = StaticWebAsset.AssetRoles.Primary, - Fingerprint = "v1", - Integrity = "abc", - FileLength = 10, - LastWriteTime = DateTime.UtcNow - }.ToTaskItem(); - - // Act/Assert - var task1 = new ResolveCompressedAssets() - { - OutputPath = OutputBasePath, - BuildEngine = buildEngine.Object, - CandidateAssets = new[] { asset }, - IncludePatterns = "**\\*.tmp", - Formats = "brotli", - }; - - var result1 = task1.Execute(); - - result1.Should().BeTrue(); - task1.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(1); - task1.AssetsToCompress[0].ItemSpec.Should().EndWith(".br"); - task1.AssetsToCompress[0].SetMetadata("Fingerprint", "v1br"); - task1.AssetsToCompress[0].SetMetadata("Integrity", "abcbr"); - - var gzipExplicitAsset = new TaskItem(asset.ItemSpec, asset.CloneCustomMetadata()); - gzipExplicitAsset.SetMetadata("Fingerprint", "v2"); - gzipExplicitAsset.SetMetadata("Integrity", "def"); - - var task2 = new ResolveCompressedAssets() - { - OutputPath = OutputBasePath, - BuildEngine = buildEngine.Object, - CandidateAssets = new[] { asset, task1.AssetsToCompress[0] }, - IncludePatterns = "**\\*.tmp", - ExplicitAssets = new[] { gzipExplicitAsset }, - Formats = "gzip;brotli" - }; - - var result2 = task2.Execute(); - - result2.Should().BeTrue(); - task2.AssetsToCompress.TakeWhile(a => a != null).Should().HaveCount(1); - task2.AssetsToCompress[0].ItemSpec.Should().EndWith(".gz"); - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ResolveFingerprintedStaticWebAssetEndpointsForAssetsTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ResolveFingerprintedStaticWebAssetEndpointsForAssetsTest.cs deleted file mode 100644 index 95e0f87a0bc5..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ResolveFingerprintedStaticWebAssetEndpointsForAssetsTest.cs +++ /dev/null @@ -1,295 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests.StaticWebAssets; - -public class ResolveFingerprintedStaticWebAssetEndpointsForAssetsTest -{ - [Theory] - [InlineData("candidate#[.{fingerprint}]?.js", "candidate.js")] - [InlineData("candidate#[.{fingerprint}]!.js", "candidate.asdf1234.js")] - public void Standalone_Selects_EndpointMatching_FilePath(string pattern, string expectedRoute) - { - var now = DateTime.Now; - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - List candidateAssets = [ - CreateCandidate( - Path.Combine("wwwroot", "candidate.js"), - "MyPackage", - "Discovered", - pattern, - "All", - "All", - "asdf1234", - "integrity" - ) - ]; - - var endpoints = CreateEndpoints(candidateAssets.Select(a => StaticWebAsset.FromTaskItem(a)).ToArray()); - - var resolvedEndpoints = new ResolveFingerprintedStaticWebAssetEndpointsForAssets - { - CandidateAssets = [.. candidateAssets], - CandidateEndpoints = [..endpoints.Select(e => e.ToTaskItem())], - IsStandalone = true, - BuildEngine = buildEngine.Object - }; - - // Act - var result = resolvedEndpoints.Execute(); - result.Should().BeTrue(); - - // Assert - resolvedEndpoints.ResolvedEndpoints.Should().HaveCount(1); - var endpoint = StaticWebAssetEndpoint.FromTaskItem(resolvedEndpoints.ResolvedEndpoints[0]); - - endpoint.Route.Should().Be(expectedRoute); - } - - [Fact] - public void StandaloneFails_MatchingEndpointNotFound() - { - var now = DateTime.Now; - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - List candidateAssets = [ - CreateCandidate( - Path.Combine("wwwroot", "candidate.js"), - "MyPackage", - "Discovered", - "candidate#[.{fingerprint}]!.js", - "All", - "All", - "asdf1234", - "integrity" - ) - ]; - - var endpoints = CreateEndpoints(candidateAssets.Select(a => StaticWebAsset.FromTaskItem(a)).ToArray()); - endpoints = endpoints.Where(e => !e.Route.Contains("asdf1234")).ToArray(); - - var resolvedEndpoints = new ResolveFingerprintedStaticWebAssetEndpointsForAssets - { - CandidateAssets = [.. candidateAssets], - CandidateEndpoints = [.. endpoints.Select(e => e.ToTaskItem())], - IsStandalone = true, - BuildEngine = buildEngine.Object - }; - - // Act - var result = resolvedEndpoints.Execute(); - result.Should().BeFalse(); - } - - [Theory] - [InlineData("candidate#[.{fingerprint}]?.js", "candidate.asdf1234.js")] - [InlineData("candidate#[.{fingerprint}]!.js", "candidate.asdf1234.js")] - public void Hosted_AlwaysPrefers_FingerprintedEndpoint(string pattern, string expectedRoute) - { - var now = DateTime.Now; - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - List candidateAssets = [ - CreateCandidate( - Path.Combine("wwwroot", "candidate.js"), - "MyPackage", - "Discovered", - pattern, - "All", - "All", - "asdf1234", - "integrity" - ) - ]; - - var endpoints = CreateEndpoints(candidateAssets.Select(a => StaticWebAsset.FromTaskItem(a)).ToArray()); - - var resolvedEndpoints = new ResolveFingerprintedStaticWebAssetEndpointsForAssets - { - CandidateAssets = [.. candidateAssets], - CandidateEndpoints = [.. endpoints.Select(e => e.ToTaskItem())], - IsStandalone = false, - BuildEngine = buildEngine.Object - }; - - // Act - var result = resolvedEndpoints.Execute(); - result.Should().BeTrue(); - - // Assert - resolvedEndpoints.ResolvedEndpoints.Should().HaveCount(1); - var endpoint = StaticWebAssetEndpoint.FromTaskItem(resolvedEndpoints.ResolvedEndpoints[0]); - - endpoint.Route.Should().Be(expectedRoute); - } - - [Fact] - public void Hosted_FallsBackToNonFingerprintedEndpoint_WhenFingerprintedVersionNotAvailable() - { - var now = DateTime.Now; - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - List candidateAssets = [ - CreateCandidate( - Path.Combine("wwwroot", "candidate.js"), - "MyPackage", - "Discovered", - "candidate.js", - "All", - "All", - "asdf1234", - "integrity" - ) - ]; - - var endpoints = CreateEndpoints(candidateAssets.Select(a => StaticWebAsset.FromTaskItem(a)).ToArray()); - - var resolvedEndpoints = new ResolveFingerprintedStaticWebAssetEndpointsForAssets - { - CandidateAssets = [.. candidateAssets], - CandidateEndpoints = [.. endpoints.Select(e => e.ToTaskItem())], - IsStandalone = false, - BuildEngine = buildEngine.Object - }; - - // Act - var result = resolvedEndpoints.Execute(); - result.Should().BeTrue(); - - // Assert - resolvedEndpoints.ResolvedEndpoints.Should().HaveCount(1); - var endpoint = StaticWebAssetEndpoint.FromTaskItem(resolvedEndpoints.ResolvedEndpoints[0]); - - endpoint.Route.Should().Be("candidate.js"); - } - - [Fact] - public void Hosted_FailsWhen_DoesnotFindMatchingEndpoint() - { - var now = DateTime.Now; - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - List candidateAssets = [ - CreateCandidate( - Path.Combine("wwwroot", "candidate.js"), - "MyPackage", - "Discovered", - "candidate.js", - "All", - "All", - "asdf1234", - "integrity" - ) - ]; - - var endpoints = CreateEndpoints(candidateAssets.Select(a => StaticWebAsset.FromTaskItem(a)).ToArray()); - endpoints = endpoints.Where(e => !e.Route.Contains("asdf1234")).ToArray(); - endpoints[0].AssetFile = Path.GetFullPath("other.js"); - - var resolvedEndpoints = new ResolveFingerprintedStaticWebAssetEndpointsForAssets - { - CandidateAssets = [.. candidateAssets], - CandidateEndpoints = [.. endpoints.Select(e => e.ToTaskItem())], - IsStandalone = false, - BuildEngine = buildEngine.Object - }; - - // Act - var result = resolvedEndpoints.Execute(); - result.Should().BeFalse(); - } - - private static ITaskItem CreateCandidate( - string itemSpec, - string sourceId, - string sourceType, - string relativePath, - string assetKind, - string assetMode, - string fingerprint = "", - string integrity = "", - string relatedAsset = "", - string assetTraitName = "", - string assetTraitValue = "") - { - var result = new StaticWebAsset() - { - Identity = Path.GetFullPath(itemSpec), - SourceId = sourceId, - SourceType = sourceType, - ContentRoot = Directory.GetCurrentDirectory(), - BasePath = "base", - RelativePath = relativePath, - AssetKind = assetKind, - AssetMode = assetMode, - AssetRole = "Primary", - RelatedAsset = relatedAsset, - AssetTraitName = assetTraitName, - AssetTraitValue = assetTraitValue, - CopyToOutputDirectory = "", - CopyToPublishDirectory = "", - OriginalItemSpec = itemSpec, - // Add these to avoid accessing the disk to compute them - Integrity = integrity, - Fingerprint = fingerprint, - FileLength = 10, - LastWriteTime = DateTime.UtcNow, - }; - - result.ApplyDefaults(); - result.Normalize(); - - return result.ToTaskItem(); - } - - private StaticWebAssetEndpoint[] CreateEndpoints(StaticWebAsset[] assets) - { - var defineStaticWebAssetEndpoints = new DefineStaticWebAssetEndpoints - { - CandidateAssets = assets.Select(a => a.ToTaskItem()).ToArray(), - ExistingEndpoints = [], - ContentTypeMappings = - [ - CreateContentMapping("*.html", "text/html"), - CreateContentMapping("*.js", "application/javascript"), - CreateContentMapping("*.css", "text/css"), - ] - }; - defineStaticWebAssetEndpoints.BuildEngine = Mock.Of(); - - defineStaticWebAssetEndpoints.Execute(); - return StaticWebAssetEndpoint.FromItemGroup(defineStaticWebAssetEndpoints.Endpoints); - } - - private static TaskItem CreateContentMapping(string pattern, string contentType) - { - return new TaskItem(contentType, new Dictionary - { - { "Pattern", pattern }, - { "Priority", "0" } - }); - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/RewriteCssTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/RewriteCssTest.cs deleted file mode 100644 index 084cb68dbece..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/RewriteCssTest.cs +++ /dev/null @@ -1,389 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using Microsoft.AspNetCore.StaticWebAssets.Tasks; - -namespace Microsoft.NET.Sdk.Razor.Tests; - -public class RewriteCssTest -{ - [Fact] - public void HandlesEmptyFile() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", string.Empty, "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(string.Empty, result); - } - - [Fact] - public void AddsScopeAfterSelector() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - .myclass { color: red; } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - .myclass[TestScope] { color: red; } -", result); - } - - [Fact] - public void HandlesMultipleSelectors() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - .first, .second { color: red; } - .third { color: blue; } - :root { color: green; } - * { color: white; } - #some-id { color: yellow; } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - .first[TestScope], .second[TestScope] { color: red; } - .third[TestScope] { color: blue; } - :root[TestScope] { color: green; } - *[TestScope] { color: white; } - #some-id[TestScope] { color: yellow; } -", result); - } - - [Fact] - public void HandlesComplexSelectors() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - .first div > li, body .second:not(.fancy)[attr~=whatever] { color: red; } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - .first div > li[TestScope], body .second:not(.fancy)[attr~=whatever][TestScope] { color: red; } -", result); - } - - [Fact] - public void HandlesSpacesAndCommentsWithinSelectors() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - .first /* space at end {} */ div , .myclass /* comment at end */ { color: red; } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - .first /* space at end {} */ div[TestScope] , .myclass[TestScope] /* comment at end */ { color: red; } -", result); - } - - [Fact] - public void HandlesPseudoClasses() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - a:fake-pseudo-class { color: red; } - a:focus b:hover { color: green; } - tr:nth-child(4n + 1) { color: blue; } - a:has(b > c) { color: yellow; } - a:last-child > ::deep b { color: pink; } - a:not(#something) { color: purple; } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - a:fake-pseudo-class[TestScope] { color: red; } - a:focus b:hover[TestScope] { color: green; } - tr:nth-child(4n + 1)[TestScope] { color: blue; } - a:has(b > c)[TestScope] { color: yellow; } - a:last-child[TestScope] > b { color: pink; } - a:not(#something)[TestScope] { color: purple; } -", result); - } - - [Fact] - public void HandlesPseudoElements() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - a::before { content: ""✋""; } - a::after::placeholder { content: ""🐯""; } - custom-element::part(foo) { content: ""🤷‍""; } - a::before > ::deep another { content: ""👞""; } - a::fake-PsEuDo-element { content: ""🐔""; } - ::selection { content: ""😾""; } - other, ::selection { content: ""👂""; } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - a[TestScope]::before { content: ""✋""; } - a[TestScope]::after::placeholder { content: ""🐯""; } - custom-element[TestScope]::part(foo) { content: ""🤷‍""; } - a[TestScope]::before > another { content: ""👞""; } - a[TestScope]::fake-PsEuDo-element { content: ""🐔""; } - [TestScope]::selection { content: ""😾""; } - other[TestScope], [TestScope]::selection { content: ""👂""; } -", result); - } - - [Fact] - public void HandlesSingleColonPseudoElements() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - a:after { content: ""x""; } - a:before { content: ""x""; } - a:first-letter { content: ""x""; } - a:first-line { content: ""x""; } - a:AFTER { content: ""x""; } - a:not(something):before { content: ""x""; } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - a[TestScope]:after { content: ""x""; } - a[TestScope]:before { content: ""x""; } - a[TestScope]:first-letter { content: ""x""; } - a[TestScope]:first-line { content: ""x""; } - a[TestScope]:AFTER { content: ""x""; } - a:not(something)[TestScope]:before { content: ""x""; } -", result); - } - - [Fact] - public void RespectsDeepCombinator() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - .first ::deep .second { color: red; } - a ::deep b, c ::deep d { color: blue; } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - .first[TestScope] .second { color: red; } - a[TestScope] b, c[TestScope] d { color: blue; } -", result); - } - - [Fact] - public void RespectsDeepCombinatorWithDirectDescendant() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - a > ::deep b { color: red; } - c ::deep > d { color: blue; } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - a[TestScope] > b { color: red; } - c[TestScope] > d { color: blue; } -", result); - } - - [Fact] - public void RespectsDeepCombinatorWithAdjacentSibling() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - a + ::deep b { color: red; } - c ::deep + d { color: blue; } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - a[TestScope] + b { color: red; } - c[TestScope] + d { color: blue; } -", result); - } - - [Fact] - public void RespectsDeepCombinatorWithGeneralSibling() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - a ~ ::deep b { color: red; } - c ::deep ~ d { color: blue; } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - a[TestScope] ~ b { color: red; } - c[TestScope] ~ d { color: blue; } -", result); - } - - [Fact] - public void IgnoresMultipleDeepCombinators() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - .first ::deep .second ::deep .third { color:red; } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - .first[TestScope] .second ::deep .third { color:red; } -", result); - } - - [Fact] - public void RespectsDeepCombinatorWithSpacesAndComments() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - .a .b /* comment ::deep 1 */ ::deep /* comment ::deep 2 */ .c /* ::deep */ .d { color: red; } - ::deep * { color: blue; } /* Leading deep combinator */ - another ::deep { color: green } /* Trailing deep combinator */ -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - .a .b[TestScope] /* comment ::deep 1 */ /* comment ::deep 2 */ .c /* ::deep */ .d { color: red; } - [TestScope] * { color: blue; } /* Leading deep combinator */ - another[TestScope] { color: green } /* Trailing deep combinator */ -", result); - } - - [Fact] - public void HandlesAtBlocks() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - .myclass { color: red; } - - @media only screen and (max-width: 600px) { - .another .thing { - content: 'This should not be a selector: .fake-selector { color: red }' - } - } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - .myclass[TestScope] { color: red; } - - @media only screen and (max-width: 600px) { - .another .thing[TestScope] { - content: 'This should not be a selector: .fake-selector { color: red }' - } - } -", result); - } - - [Fact] - public void AddsScopeToKeyframeNames() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - @keyframes my-animation { /* whatever */ } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - @keyframes my-animation-TestScope { /* whatever */ } -", result); - } - - [Fact] - public void RewritesAnimationNamesWhenMatchingKnownKeyframes() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - .myclass { - color: red; - animation: /* ignore comment */ my-animation 1s infinite; - } - - .another-thing { animation-name: different-animation; } - - h1 { animation: unknown-animation; } /* Should not be scoped */ - - @keyframes my-animation { /* whatever */ } - @keyframes different-animation { /* whatever */ } - @keyframes unused-animation { /* whatever */ } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - .myclass[TestScope] { - color: red; - animation: /* ignore comment */ my-animation-TestScope 1s infinite; - } - - .another-thing[TestScope] { animation-name: different-animation-TestScope; } - - h1[TestScope] { animation: unknown-animation; } /* Should not be scoped */ - - @keyframes my-animation-TestScope { /* whatever */ } - @keyframes different-animation-TestScope { /* whatever */ } - @keyframes unused-animation-TestScope { /* whatever */ } -", result); - } - - [Fact] - public void RewritesMultipleAnimationNames() - { - // Arrange/act - var result = RewriteCss.AddScopeToSelectors("file.css", @" - .myclass1 { animation-name: my-animation , different-animation } - .myclass2 { animation: 4s linear 0s alternate my-animation infinite, different-animation 0s } - @keyframes my-animation { } - @keyframes different-animation { } -", "TestScope", out var errors); - - // Assert - Assert.Empty(errors); - Assert.Equal(@" - .myclass1[TestScope] { animation-name: my-animation-TestScope , different-animation-TestScope } - .myclass2[TestScope] { animation: 4s linear 0s alternate my-animation-TestScope infinite, different-animation-TestScope 0s } - @keyframes my-animation-TestScope { } - @keyframes different-animation-TestScope { } -", result); - } - - [Fact] - public void RejectsImportStatements() - { - // Arrange/act - RewriteCss.AddScopeToSelectors("file.css", @" - @import ""basic-import.css""; - @import ""import-with-media-type.css"" print; - @import ""import-with-media-query.css"" screen and (orientation:landscape); - @ImPoRt /* comment */ ""scheme://path/to/complex-import"" /* another-comment */ screen; - @otheratrule ""should-not-cause-error.css""; - /* @import ""should-be-ignored-because-it-is-in-a-comment.css""; */ - .myclass { color: red; } -", "TestScope", out var errors); - - // Assert - Assert.Collection(errors, - error => Assert.Equal("file.css(2,5): @import rules are not supported within scoped CSS files because the loading order would be undefined. @import may only be placed in non-scoped CSS files.", error.ToString()), - error => Assert.Equal("file.css(3,5): @import rules are not supported within scoped CSS files because the loading order would be undefined. @import may only be placed in non-scoped CSS files.", error.ToString()), - error => Assert.Equal("file.css(4,5): @import rules are not supported within scoped CSS files because the loading order would be undefined. @import may only be placed in non-scoped CSS files.", error.ToString()), - error => Assert.Equal("file.css(5,5): @import rules are not supported within scoped CSS files because the loading order would be undefined. @import may only be placed in non-scoped CSS files.", error.ToString())); - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/StaticWebAssetPathPatternTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/StaticWebAssetPathPatternTest.cs deleted file mode 100644 index 0ca64833fb23..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/StaticWebAssetPathPatternTest.cs +++ /dev/null @@ -1,724 +0,0 @@ -// 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 System.Globalization; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; - -namespace Microsoft.NET.Sdk.Razor.Tests.StaticWebAssets; - -public class StaticWebAssetPathPatternTest -{ - [Fact] - public void CanParse_PathWithNoExpressions() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site.css", "MyApp"); - var expected = new StaticWebAssetPathPattern("css/site.css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "css/site.css".AsMemory(), IsLiteral = true }] } - ] - }; - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_ComplexFingerprintExpression_Middle() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}].css", "MyApp"); - var expected = new StaticWebAssetPathPattern("css/site#[.{fingerprint}].css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "css/site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, - new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_ComplexFingerprintExpression_Start() - { - var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}].css", "MyApp"); - var expected = new StaticWebAssetPathPattern("#[.{fingerprint}].css") - { - Segments = - [ - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, - new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_ComplexFingerprintExpression_End() - { - var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]", "MyApp"); - var expected = new StaticWebAssetPathPattern("site#[.{fingerprint}]") - { - Segments = - [ - new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_ComplexFingerprintExpression_Only() - { - var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}]", "MyApp"); - var expected = new StaticWebAssetPathPattern("#[.{fingerprint}]") - { - Segments = - [ - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_ComplexFingerprintExpression_Multiple() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}]-#[.{version}].css", "MyApp"); - var expected = new StaticWebAssetPathPattern("css/site#[.{fingerprint}]-#[.{version}].css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "css/site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, - new (){ Parts = [ new() { Name = "-".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "version".AsMemory(), IsLiteral = false }] }, - new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_ComplexFingerprintExpression_ConsecutiveExpressions() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}]#[.{version}].css", "MyApp"); - var expected = new StaticWebAssetPathPattern("css/site#[.{fingerprint}]#[.{version}].css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "css/site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "version".AsMemory(), IsLiteral = false }] }, - new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_SimpleFingerprintExpression_Start() - { - var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint}].css", "MyApp"); - var expected = new StaticWebAssetPathPattern("#[{fingerprint}].css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, - new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_SimpleFingerprintExpression_Middle() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[{fingerprint}].css", "MyApp"); - var expected = new StaticWebAssetPathPattern("css/site#[{fingerprint}].css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "css/site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, - new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_SimpleFingerprintExpression_End() - { - var pattern = StaticWebAssetPathPattern.Parse("site#[{fingerprint}]", "MyApp"); - var expected = new StaticWebAssetPathPattern("site#[{fingerprint}]") - { - Segments = - [ - new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_SimpleFingerprintExpression_Only() - { - var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint}]", "MyApp"); - var expected = new StaticWebAssetPathPattern("#[{fingerprint}]") - { - Segments = - [ - new (){ Parts = [ new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_SimpleFingerprintExpression_WithEmbeddedValues() - { - var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint=value}]", "MyApp"); - var expected = new StaticWebAssetPathPattern("#[{fingerprint=value}]") - { - Segments = - [ - new (){ Parts = [ new() { Name = "fingerprint".AsMemory(), Value = "value".AsMemory(), IsLiteral = false }] } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_ComplexExpression_MultipleVariables() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}-{version}].css", "MyApp"); - var expected = new StaticWebAssetPathPattern("css/site#[.{fingerprint}-{version}].css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "css/site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ - new() { Name = ".".AsMemory(), IsLiteral = true }, - new() { Name = "fingerprint".AsMemory(), IsLiteral = false }, - new() { Name = "-".AsMemory(), IsLiteral = true }, - new() { Name = "version".AsMemory(), IsLiteral = false } - ] }, - new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_ComplexExpression_MultipleConsecutiveVariables() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}{version}].css", "MyApp"); - var expected = new StaticWebAssetPathPattern("css/site#[.{fingerprint}{version}].css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "css/site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ - new() { Name = ".".AsMemory(), IsLiteral = true }, - new() { Name = "fingerprint".AsMemory(), IsLiteral = false }, - new() { Name = "version".AsMemory(), IsLiteral = false } - ] }, - new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_ComplexExpression_StartsWithVariable() - { - var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint}.]css", "MyApp"); - var expected = new StaticWebAssetPathPattern("#[{fingerprint}.]css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "fingerprint".AsMemory(), IsLiteral = false }, new() { Name = ".".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = "css".AsMemory(), IsLiteral = true }] } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_OptionalExpressions_End() - { - var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]?", "MyApp"); - var expected = new StaticWebAssetPathPattern("site#[.{fingerprint}]?") - { - Segments = - [ - new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }], IsOptional = true } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_OptionalPreferredExpressions() - { - var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]!", "MyApp"); - var expected = new StaticWebAssetPathPattern("site#[.{fingerprint}]!") - { - Segments = - [ - new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }], IsOptional = true, IsPreferred = true } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_OptionalExpressions_Start() - { - var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}]?site", "MyApp"); - var expected = new StaticWebAssetPathPattern("#[.{fingerprint}]?site") - { - Segments = - [ - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }], IsOptional = true }, - new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] - }] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_OptionalExpressions_Middle() - { - var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]?site", "MyApp"); - var expected = new StaticWebAssetPathPattern("site#[.{fingerprint}]?site") - { - Segments = - [ - new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }], IsOptional = true }, - new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] - }] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_OptionalExpressions_Only() - { - var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}]?", "MyApp"); - var expected = new StaticWebAssetPathPattern("#[.{fingerprint}]?") - { - Segments = - [ - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }], IsOptional = true } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_MultipleOptionalExpressions() - { - var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}]?site#[.{version}]?", "MyApp"); - var expected = new StaticWebAssetPathPattern("#[.{fingerprint}]?site#[.{version}]?") - { - Segments = - [ - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }], IsOptional = true }, - new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }], IsOptional = false }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "version".AsMemory(), IsLiteral = false }], IsOptional = true } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanParse_ConsecutiveOptionalExpressions() - { - var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}]?#[.{version}]?", "MyApp"); - var expected = new StaticWebAssetPathPattern("#[.{fingerprint}]?#[.{version}]?") - { - Segments = - [ - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }], IsOptional = true }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "version".AsMemory(), IsLiteral = false }], IsOptional = true } - ] - }; - - Assert.Equal(expected, pattern); - } - - [Fact] - public void CanReplaceTokens_PathWithNoExpressions() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site.css", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234" - }; - var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); - - Assert.Equal("css/site.css", path); - } - - [Fact] - public void CanReplaceTokens_ComplexFingerprintExpression_Middle() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}].css", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234" - }; - var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); - - Assert.Equal("css/site.asdf1234.css", path); - } - - [Fact] - public void CanReplaceTokens_ComplexFingerprintExpression_Start() - { - var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}].css", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234" - }; - var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); - - Assert.Equal(".asdf1234.css", path); - } - - [Fact] - public void CanReplaceTokens_ComplexFingerprintExpression_End() - { - var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234" - }; - var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); - - Assert.Equal("site.asdf1234", path); - } - - [Fact] - public void CanReplaceTokens_ComplexFingerprintExpression_Only() - { - var pattern = StaticWebAssetPathPattern.Parse("#[.{fingerprint}]", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234" - }; - var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); - - Assert.Equal(".asdf1234", path); - } - - [Fact] - public void CanReplaceTokens_ComplexFingerprintExpression_Multiple() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}]-#[.{version}].css", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234", - }; - var (path, _) = pattern.ReplaceTokens( - tokens, - CreateTestResolver(new Dictionary(StringComparer.OrdinalIgnoreCase) { ["version"] = "v1" })); - - Assert.Equal("css/site.asdf1234-.v1.css", path); - } - - [Fact] - public void CanReplaceTokens_ComplexFingerprintExpression_ConsecutiveExpressions() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}]#[.{version}].css", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234", - }; - var (path, _) = pattern.ReplaceTokens( - tokens, - CreateTestResolver(new Dictionary(StringComparer.OrdinalIgnoreCase) { ["version"] = "v1" })); - - Assert.Equal("css/site.asdf1234.v1.css", path); - } - - [Fact] - public void CanReplaceTokens_SimpleFingerprintExpression_Start() - { - var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint}].css", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234" - }; - var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); - - Assert.Equal("asdf1234.css", path); - } - - [Fact] - public void CanReplaceTokens_SimpleFingerprintExpression_Middle() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[{fingerprint}].css", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234" - }; - var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); - - Assert.Equal("css/siteasdf1234.css", path); - } - - [Fact] - public void CanReplaceTokens_SimpleFingerprintExpression_End() - { - var pattern = StaticWebAssetPathPattern.Parse("site#[{fingerprint}]", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234" - }; - var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); - - Assert.Equal("siteasdf1234", path); - } - - [Fact] - public void CanReplaceTokens_SimpleFingerprintExpression_Only() - { - var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint}]", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234" - }; - var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); - - Assert.Equal("asdf1234", path); - } - - [Fact] - public void CanReplaceTokens_SimpleFingerprintExpression_WithEmbeddedValues() - { - var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint=embedded}]", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234" - }; - var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); - - Assert.Equal("embedded", path); - } - - [Fact] - public void CanReplaceTokens_ComplexExpression_MultipleVariables() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}-{version}].css", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234", - }; - var (path, _) = pattern.ReplaceTokens( - tokens, - CreateTestResolver(new Dictionary(StringComparer.OrdinalIgnoreCase) { ["version"] = "v1" })); - - Assert.Equal("css/site.asdf1234-v1.css", path); - } - - [Fact] - public void CanReplaceTokens_ComplexExpression_MultipleConsecutiveVariables() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}{version}].css", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234", - }; - var (path, _) = pattern.ReplaceTokens( - tokens, - CreateTestResolver(new Dictionary(StringComparer.OrdinalIgnoreCase) { ["version"] = "v1" })); - - Assert.Equal("css/site.asdf1234v1.css", path); - } - - [Fact] - public void CanReplaceTokens_ComplexExpression_StartsWithVariable() - { - var pattern = StaticWebAssetPathPattern.Parse("#[{fingerprint}.]css", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234" - }; - var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); - - Assert.Equal("asdf1234.css", path); - } - - [Fact] - public void CanReplaceTokens_ThrowsException_IfRequiredExpressionIsValue() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}].css", "MyApp"); - var tokens = new StaticWebAsset(); - var exception = Assert.Throws(() => pattern.ReplaceTokens(tokens, CreateTestResolver())); - Assert.Equal("Token 'fingerprint' not provided for 'css/site#[.{fingerprint}].css'.", exception.Message); - } - - [Fact] - public void CanReplaceTokens_ThrowsException_MultipleTokenComplexExpression_MissingAtLeastOneValue() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}-{version}].css", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234" - }; - var exception = Assert.Throws(() => pattern.ReplaceTokens(tokens, CreateTestResolver())); - Assert.Equal("Token 'version' not provided for 'css/site#[.{fingerprint}-{version}].css'.", exception.Message); - } - - [Fact] - public void CanReplaceTokens_OptionalExpression_OmittedWhenValueNotProvided() - { - var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]?", "MyApp"); - var tokens = new StaticWebAsset(); - var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); - - Assert.Equal("site", path); - } - - [Fact] - public void CanReplaceTokens_OptionalMultipleTokenComplexExpression_OmittedWhenMissingAtLeastOneValue() - { - var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}.{version}]?", "MyApp"); - var tokens = new StaticWebAsset - { - Fingerprint = "asdf1234" - }; - var (path, _) = pattern.ReplaceTokens(tokens, CreateTestResolver()); - - Assert.Equal("site", path); - } - - [Fact] - public void CanExpandRoutes_LiteralPatterns() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site.css", "MyApp"); - var routePatterns = pattern.ExpandPatternExpression(); - - Assert.Equal([pattern], routePatterns); - } - - [Fact] - public void CanExpandRoutes_SingleRequiredExpression() - { - var pattern = StaticWebAssetPathPattern.Parse("css/site#[.{fingerprint}].css", "MyApp"); - var routePatterns = pattern.ExpandPatternExpression(); - - Assert.Equal([pattern], routePatterns); - } - - [Fact] - public void CanExpandRoutes_SingleOptionalExpression() - { - var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]?.css", "MyApp"); - var routePatterns = pattern.ExpandPatternExpression(); - - var expected = new[] - { - new StaticWebAssetPathPattern("site.css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } - ] - }, - new StaticWebAssetPathPattern("site#[.{fingerprint}].css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, - new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } - ] - } - }; - - Assert.Equal(expected, routePatterns); - } - - [Fact] - public void CanExpandRoutes_MultipleOptionalExpressions() - { - var pattern = StaticWebAssetPathPattern.Parse("site#[.{fingerprint}]?#[.{version}]?.css", "MyApp"); - var routePatterns = pattern.ExpandPatternExpression(); - - var expected = new[] - { - new StaticWebAssetPathPattern("site.css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } - ] - }, - new StaticWebAssetPathPattern("site#[.{fingerprint}].css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, - new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } - ] - }, - new StaticWebAssetPathPattern("site#[.{version}].css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "version".AsMemory(), IsLiteral = false }] }, - new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } - ] - }, - new StaticWebAssetPathPattern("site#[.{fingerprint}]#[.{version}].css") - { - Segments = - [ - new (){ Parts = [ new() { Name = "site".AsMemory(), IsLiteral = true }] }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "fingerprint".AsMemory(), IsLiteral = false }] }, - new (){ Parts = [ new() { Name = ".".AsMemory(), IsLiteral = true }, new() { Name = "version".AsMemory(), IsLiteral = false }] }, - new (){ Parts = [ new() { Name = ".css".AsMemory(), IsLiteral = true }] } - ] - } - }; - - Assert.Equal(expected, routePatterns); - } - - private static StaticWebAssetTokenResolver CreateTestResolver(Dictionary additionalTokens = null) => new(additionalTokens); -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/StaticWebAssetsGeneratePackagePropsFileTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/StaticWebAssetsGeneratePackagePropsFileTest.cs deleted file mode 100644 index 713cb9b87318..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/StaticWebAssetsGeneratePackagePropsFileTest.cs +++ /dev/null @@ -1,49 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Moq; - -namespace Microsoft.AspNetCore.Razor.Tasks -{ - public class StaticWebAssetsGeneratePackagePropsFileTest - { - [Fact] - public void WritesPropsFile_WithProvidedImportPath() - { - // Arrange - var file = Path.GetTempFileName(); - var expectedDocument = @" - -"; - - try - { - var buildEngine = new Mock(); - - var task = new StaticWebAssetsGeneratePackagePropsFile - { - BuildEngine = buildEngine.Object, - PropsFileImport = "Microsoft.AspNetCore.StaticWebAssets.props", - BuildTargetPath = file - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - var document = File.ReadAllText(file); - document.Should().Contain(expectedDocument); - } - finally - { - if (File.Exists(file)) - { - File.Delete(file); - } - } - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/UpdateExternallyDefinedStaticWebAssetsTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/UpdateExternallyDefinedStaticWebAssetsTest.cs deleted file mode 100644 index 6cd487227761..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/UpdateExternallyDefinedStaticWebAssetsTest.cs +++ /dev/null @@ -1,257 +0,0 @@ -// 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; -using Microsoft.Build.Utilities; -using Moq; - -namespace Microsoft.AspNetCore.StaticWebAssets.Tasks; - -public class UpdateExternallyDefinedStaticWebAssetsTest -{ - [Fact] - public void Execute_UpdatesAssetsWithoutFingerprint() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - Directory.CreateDirectory(Path.Combine(AppContext.BaseDirectory, "dist", "assets")); - File.WriteAllText(Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"), "body { color: red; }"); - File.WriteAllText(Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), ""); - var assets = new ITaskItem [] { - new TaskItem( - Path.Combine(AppContext.BaseDirectory, @"dist\assets\index-C5tBAdQX.css"), - new Dictionary - { - ["RelativePath"] = "assets/index-C5tBAdQX.css", - ["BasePath"] = "", - ["AssetMode"] = "All", - ["AssetKind"] = "Publish", - ["SourceId"] = "MyProject", - ["CopyToOutputDirectory"] = "PreserveNewest", - ["RelatedAsset"] = "", - ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "dist"), - ["SourceType"] = "Discovered", - ["AssetRole"] = "Primary", - ["AssetTraitValue"] = "", - ["AssetTraitName"] = "", - ["OriginalItemSpec"] = Path.Combine(AppContext.BaseDirectory, @"dist\assets\index-C5tBAdQX.css"), - ["CopyToPublishDirectory"] = "PreserveNewest" - }), - new TaskItem( - Path.Combine(AppContext.BaseDirectory, @"dist\index.html"), - new Dictionary - { - ["RelativePath"] = "index.html", - ["BasePath"] = "", - ["AssetMode"] = "All", - ["AssetKind"] = "Publish", - ["SourceId"] = "MyProject", - ["CopyToOutputDirectory"] = "PreserveNewest", - ["RelatedAsset"] = "", - ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "dist"), - ["SourceType"] = "Discovered", - ["AssetRole"] = "Primary", - ["AssetTraitValue"] = "", - ["AssetTraitName"] = "", - ["OriginalItemSpec"] = Path.Combine(AppContext.BaseDirectory, @"dist\index.html"), - ["CopyToPublishDirectory"] = "PreserveNewest" - }) - }; - - var task = new UpdateExternallyDefinedStaticWebAssets - { - Assets = assets, - Endpoints = [], - BuildEngine = buildEngine.Object - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeTrue(); - - task.UpdatedAssets.Should().HaveCount(2); - task.AssetsWithoutEndpoints.Should().HaveCount(2); - task.UpdatedAssets[0].GetMetadata("Fingerprint").Should().NotBeNullOrEmpty(); - task.UpdatedAssets[1].GetMetadata("Fingerprint").Should().NotBeNullOrEmpty(); - task.UpdatedAssets[0].GetMetadata("Integrity").Should().NotBeNullOrEmpty(); - task.UpdatedAssets[1].GetMetadata("Integrity").Should().NotBeNullOrEmpty(); - } - - [Fact] - public void Execute_DoesNotAddAssets_WithEndpointsTo_AssetsWithoutEndpoints() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - Directory.CreateDirectory(Path.Combine(AppContext.BaseDirectory, "dist", "assets")); - File.WriteAllText(Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"), "body { color: red; }"); - File.WriteAllText(Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), ""); - var assets = new ITaskItem[] { - new TaskItem( - Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"), - new Dictionary - { - ["RelativePath"] = "assets/index-C5tBAdQX.css", - ["BasePath"] = "", - ["AssetMode"] = "All", - ["AssetKind"] = "Publish", - ["SourceId"] = "MyProject", - ["CopyToOutputDirectory"] = "PreserveNewest", - ["RelatedAsset"] = "", - ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "dist"), - ["SourceType"] = "Discovered", - ["AssetRole"] = "Primary", - ["AssetTraitValue"] = "", - ["AssetTraitName"] = "", - ["OriginalItemSpec"] = Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"), - ["CopyToPublishDirectory"] = "PreserveNewest" - }), - new TaskItem( - Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), - new Dictionary - { - ["RelativePath"] = "index.html", - ["BasePath"] = "", - ["AssetMode"] = "All", - ["AssetKind"] = "Publish", - ["SourceId"] = "MyProject", - ["CopyToOutputDirectory"] = "PreserveNewest", - ["RelatedAsset"] = "", - ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "dist"), - ["SourceType"] = "Discovered", - ["AssetRole"] = "Primary", - ["AssetTraitValue"] = "", - ["AssetTraitName"] = "", - ["OriginalItemSpec"] = Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), - ["CopyToPublishDirectory"] = "PreserveNewest" - }) - }; - - var task = new UpdateExternallyDefinedStaticWebAssets - { - Assets = assets, - Endpoints = [ - new TaskItem( - "index.html", - new Dictionary - { - ["Route"] = "/index.html", - ["AssetFile"] = Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), - ["Selectors"] = "[]", - ["ResponseHeaders"] = "[]", - ["EndpointProperties"] = "[]" - }) - ], - BuildEngine = buildEngine.Object - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeTrue(); - - task.UpdatedAssets.Should().HaveCount(2); - task.AssetsWithoutEndpoints.Should().HaveCount(1); - task.AssetsWithoutEndpoints[0].ItemSpec.Should().Be(Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css")); - task.UpdatedAssets[0].GetMetadata("Fingerprint").Should().NotBeNullOrEmpty(); - task.UpdatedAssets[1].GetMetadata("Fingerprint").Should().NotBeNullOrEmpty(); - task.UpdatedAssets[0].GetMetadata("Integrity").Should().NotBeNullOrEmpty(); - task.UpdatedAssets[1].GetMetadata("Integrity").Should().NotBeNullOrEmpty(); - } - - [Fact] - public void Execute_InfersFingerprint_ForMatchingAssets() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - Directory.CreateDirectory(Path.Combine(AppContext.BaseDirectory, "dist", "assets")); - File.WriteAllText(Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"), "body { color: red; }"); - File.WriteAllText(Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), ""); - var assets = new ITaskItem[] { - new TaskItem( - Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"), - new Dictionary - { - ["RelativePath"] = "assets/index-C5tBAdQX.css", - ["BasePath"] = "", - ["AssetMode"] = "All", - ["AssetKind"] = "Publish", - ["SourceId"] = "MyProject", - ["CopyToOutputDirectory"] = "PreserveNewest", - ["RelatedAsset"] = "", - ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "dist"), - ["SourceType"] = "Discovered", - ["AssetRole"] = "Primary", - ["AssetTraitValue"] = "", - ["AssetTraitName"] = "", - ["OriginalItemSpec"] = Path.Combine(AppContext.BaseDirectory, "dist", "assets", "index-C5tBAdQX.css"), - ["CopyToPublishDirectory"] = "PreserveNewest" - }), - new TaskItem( - Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), - new Dictionary - { - ["RelativePath"] = "index.html", - ["BasePath"] = "", - ["AssetMode"] = "All", - ["AssetKind"] = "Publish", - ["SourceId"] = "MyProject", - ["CopyToOutputDirectory"] = "PreserveNewest", - ["RelatedAsset"] = "", - ["ContentRoot"] = Path.Combine(AppContext.BaseDirectory, "dist"), - ["SourceType"] = "Discovered", - ["AssetRole"] = "Primary", - ["AssetTraitValue"] = "", - ["AssetTraitName"] = "", - ["OriginalItemSpec"] = Path.Combine(AppContext.BaseDirectory, "dist", "index.html"), - ["CopyToPublishDirectory"] = "PreserveNewest" - }) - }; - - var fingerprintExpressions = new TaskItem[] - { - new TaskItem( - "React", - new Dictionary - { - ["Pattern"] = "assets/.*-(?.+)\\..*", - }) - }; - - var task = new UpdateExternallyDefinedStaticWebAssets - { - FingerprintInferenceExpressions = fingerprintExpressions, - Assets = assets, - Endpoints = [], - BuildEngine = buildEngine.Object - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().BeTrue(); - task.UpdatedAssets.Should().HaveCount(2); - task.UpdatedAssets[0].GetMetadata("Fingerprint").Should().Be("C5tBAdQX"); - task.UpdatedAssets[0].GetMetadata("RelativePath").Should().Be("assets/index-#[{fingerprint}].css"); - task.UpdatedAssets[1].GetMetadata("Fingerprint").Should().NotBeNullOrEmpty(); - task.UpdatedAssets[0].GetMetadata("Integrity").Should().NotBeNullOrEmpty(); - task.UpdatedAssets[1].GetMetadata("Integrity").Should().NotBeNullOrEmpty(); - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/UpdateStaticWebAssetEndpointsTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/UpdateStaticWebAssetEndpointsTest.cs deleted file mode 100644 index 26bff5f8c353..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/UpdateStaticWebAssetEndpointsTest.cs +++ /dev/null @@ -1,381 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; - -namespace Microsoft.NET.Sdk.Razor.Tests.StaticWebAssets; - -public class UpdateStaticWebAssetEndpointsTest -{ - [Fact] - public void CanUpdateEndpoint_AppendResponseHeaders() - { - // Arrrange - var assets = new[] { - CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), - CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), - CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), - CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), - CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), - CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), - }; - Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); - - var endpoints = CreateEndpoints(assets); - var fingerprintedEndpoints = endpoints.Where(e => e.EndpointProperties.Any(p => string.Equals(p.Name, "fingerprint", StringComparison.Ordinal))).ToArray(); - foreach (var endpoint in fingerprintedEndpoints) - { - endpoint.ResponseHeaders = endpoint.ResponseHeaders.Where(h => !string.Equals(h.Name, "Cache-Control", StringComparison.Ordinal)).ToArray(); - } - - var filterStaticWebAssetEndpoints = new UpdateStaticWebAssetEndpoints - { - EndpointsToUpdate = fingerprintedEndpoints.Select(e => e.ToTaskItem()).ToArray(), - AllEndpoints = endpoints.Select(e => e.ToTaskItem()).ToArray(), - Operations = - [ - CreateOperation("Append", "Header", "Cache-Control", "immutable") - ], - BuildEngine = Mock.Of() - }; - - // Act - var result = filterStaticWebAssetEndpoints.Execute(); - result.Should().BeTrue(); - - // Assert - var updatedEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterStaticWebAssetEndpoints.UpdatedEndpoints); - updatedEndpoints.Should().HaveCount(fingerprintedEndpoints.Length); - foreach (var updatedEndpoint in updatedEndpoints) - { - updatedEndpoint.ResponseHeaders.Should().ContainSingle(h => string.Equals(h.Name, "Cache-Control", StringComparison.Ordinal) && string.Equals(h.Value, "immutable")); - } - } - - [Fact] - public void CanUpdateEndpoint_RemoveResponseHeaders() - { - // Arrrange - var assets = new[] { - CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), - CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), - CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), - CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), - CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), - CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), - }; - Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); - - var endpoints = CreateEndpoints(assets); - var fingerprintedEndpoints = endpoints.Where(e => e.EndpointProperties.Any(p => string.Equals(p.Name, "fingerprint", StringComparison.Ordinal))).ToArray(); - - var filterStaticWebAssetEndpoints = new UpdateStaticWebAssetEndpoints - { - EndpointsToUpdate = fingerprintedEndpoints.Select(e => e.ToTaskItem()).ToArray(), - AllEndpoints = endpoints.Select(e => e.ToTaskItem()).ToArray(), - Operations = - [ - CreateOperation("Remove", "Header", "Cache-Control", null) - ], - BuildEngine = Mock.Of() - }; - - // Act - var result = filterStaticWebAssetEndpoints.Execute(); - result.Should().BeTrue(); - - // Assert - var updatedEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterStaticWebAssetEndpoints.UpdatedEndpoints); - updatedEndpoints.Should().HaveCount(fingerprintedEndpoints.Length); - foreach (var updatedEndpoint in updatedEndpoints) - { - updatedEndpoint.ResponseHeaders.Should().NotContain(h => string.Equals(h.Name, "Cache-Control", StringComparison.Ordinal)); - } - } - - [Fact] - public void CanUpdateEndpoint_RemoveAllResponseHeaders() - { - // Arrrange - var assets = new[] { - CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), - CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), - CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), - CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), - CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), - CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), - }; - Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); - - var endpoints = CreateEndpoints(assets); - var fingerprintedEndpoints = endpoints.Where(e => e.EndpointProperties.Any(p => string.Equals(p.Name, "fingerprint", StringComparison.Ordinal))).ToArray(); - foreach (var endpoint in fingerprintedEndpoints) - { - endpoint.ResponseHeaders = [.. endpoint.ResponseHeaders, new StaticWebAssetEndpointResponseHeader { Name = "ETag", Value = "W/\"integrity\"" }]; - } - - var filterStaticWebAssetEndpoints = new UpdateStaticWebAssetEndpoints - { - EndpointsToUpdate = fingerprintedEndpoints.Select(e => e.ToTaskItem()).ToArray(), - AllEndpoints = endpoints.Select(e => e.ToTaskItem()).ToArray(), - Operations = - [ - CreateOperation("RemoveAll", "Header", "ETag", null) - ], - BuildEngine = Mock.Of() - }; - - // Act - var result = filterStaticWebAssetEndpoints.Execute(); - result.Should().BeTrue(); - - // Assert - var updatedEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterStaticWebAssetEndpoints.UpdatedEndpoints); - updatedEndpoints.Should().HaveCount(fingerprintedEndpoints.Length); - foreach (var updatedEndpoint in updatedEndpoints) - { - updatedEndpoint.ResponseHeaders.Should().NotContain(h => string.Equals(h.Name, "ETag", StringComparison.Ordinal)); - } - } - - [Fact] - public void CanUpdateEndpoint_RemoveAllResponseHeadersWithValue() - { - // Arrrange - var assets = new[] { - CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), - CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), - CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), - CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), - CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), - CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), - }; - Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); - - var endpoints = CreateEndpoints(assets); - var fingerprintedEndpoints = endpoints.Where(e => e.EndpointProperties.Any(p => string.Equals(p.Name, "fingerprint", StringComparison.Ordinal))).ToArray(); - foreach (var endpoint in fingerprintedEndpoints) - { - endpoint.ResponseHeaders = [.. endpoint.ResponseHeaders, new StaticWebAssetEndpointResponseHeader { Name = "ETag", Value = "W/\"integrity\"" }]; - } - - var filterStaticWebAssetEndpoints = new UpdateStaticWebAssetEndpoints - { - EndpointsToUpdate = fingerprintedEndpoints.Select(e => e.ToTaskItem()).ToArray(), - AllEndpoints = endpoints.Select(e => e.ToTaskItem()).ToArray(), - Operations = - [ - CreateOperation("RemoveAll", "Header", "ETag", "W/\"integrity\"") - ], - BuildEngine = Mock.Of() - }; - - // Act - var result = filterStaticWebAssetEndpoints.Execute(); - result.Should().BeTrue(); - - // Assert - var updatedEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterStaticWebAssetEndpoints.UpdatedEndpoints); - updatedEndpoints.Should().HaveCount(fingerprintedEndpoints.Length); - foreach (var updatedEndpoint in updatedEndpoints) - { - updatedEndpoint.ResponseHeaders.Should().ContainSingle(h => string.Equals(h.Name, "ETag", StringComparison.Ordinal) && string.Equals(h.Value, "\"integrity\"", StringComparison.Ordinal)); - updatedEndpoint.ResponseHeaders.Should().NotContain(h => string.Equals(h.Name, "ETag", StringComparison.Ordinal) && string.Equals(h.Value, "W/\"integrity\"", StringComparison.Ordinal)); - } - } - - [Fact] - public void CanUpdateEndpoint_ReplaceResponseHeaders() - { - // Arrrange - var assets = new[] { - CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), - CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), - CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), - CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), - CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), - CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), - }; - Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); - - var endpoints = CreateEndpoints(assets); - var fingerprintedEndpoints = endpoints.Where(e => e.EndpointProperties.Any(p => string.Equals(p.Name, "fingerprint", StringComparison.Ordinal))).ToArray(); - - var filterStaticWebAssetEndpoints = new UpdateStaticWebAssetEndpoints - { - EndpointsToUpdate = endpoints.Select(e => e.ToTaskItem()).ToArray(), - AllEndpoints = endpoints.Select(e => e.ToTaskItem()).ToArray(), - Operations = - [ - CreateOperation("Replace", "Header", "Cache-Control", "max-age=31536000, immutable", "immutable") - ], - BuildEngine = Mock.Of() - }; - - // Act - var result = filterStaticWebAssetEndpoints.Execute(); - result.Should().BeTrue(); - - // Assert - var updatedEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterStaticWebAssetEndpoints.UpdatedEndpoints); - updatedEndpoints.Should().HaveCount(fingerprintedEndpoints.Length); - foreach (var updatedEndpoint in updatedEndpoints) - { - updatedEndpoint.ResponseHeaders.Should().ContainSingle(h => string.Equals(h.Name, "Cache-Control", StringComparison.Ordinal) && string.Equals(h.Value, "immutable")); - } - } - - [Fact] - public void CanUpdateEndpoint_RetainsNonModifiedEndpointsWithSameRoute() - { - // Arrrange - var assets = new[] { - CreateAsset("index.html", relativePath: "index#[.{fingerprint}]?.html"), - CreateAsset("index.js", relativePath: "index#[.{fingerprint}]?.js"), - CreateAsset("index.css", relativePath: "index#[.{fingerprint}]?.css"), - CreateAsset("other.html", relativePath: "other#[.{fingerprint}]?.html"), - CreateAsset("other.js", relativePath: "other#[.{fingerprint}]?.js"), - CreateAsset("other.css", relativePath: "other#[.{fingerprint}]?.css"), - }; - Array.Sort(assets, (l, r) => string.Compare(l.Identity, r.Identity, StringComparison.Ordinal)); - - var endpoints = CreateEndpoints(assets); - var fingerprintedEndpoints = endpoints.Where(e => e.EndpointProperties.Any(p => string.Equals(p.Name, "fingerprint", StringComparison.Ordinal))).ToArray(); - - var unmodifiedEndpoint = new StaticWebAssetEndpoint - { - Route = fingerprintedEndpoints[0].Route, - AssetFile = fingerprintedEndpoints[0].AssetFile + ".gz", - Selectors = [new StaticWebAssetEndpointSelector { Name = "Content-Encoding", Value = "gzip" }], - ResponseHeaders = [.. fingerprintedEndpoints[0].ResponseHeaders], - EndpointProperties = [.. fingerprintedEndpoints[0].EndpointProperties] - }; - - endpoints = [..endpoints, unmodifiedEndpoint]; - - foreach (var endpoint in fingerprintedEndpoints) - { - endpoint.ResponseHeaders = endpoint.ResponseHeaders.Where(h => !string.Equals(h.Name, "Cache-Control", StringComparison.Ordinal)).ToArray(); - } - - var filterStaticWebAssetEndpoints = new UpdateStaticWebAssetEndpoints - { - EndpointsToUpdate = fingerprintedEndpoints.Select(e => e.ToTaskItem()).ToArray(), - AllEndpoints = endpoints.Select(e => e.ToTaskItem()).ToArray(), - Operations = - [ - CreateOperation("Append", "Header", "Cache-Control", "immutable") - ], - BuildEngine = Mock.Of() - }; - - // Act - var result = filterStaticWebAssetEndpoints.Execute(); - result.Should().BeTrue(); - - // Assert - var updatedEndpoints = StaticWebAssetEndpoint.FromItemGroup(filterStaticWebAssetEndpoints.UpdatedEndpoints); - updatedEndpoints.Should().HaveCount(fingerprintedEndpoints.Length + 1); - var updatedUnmodifiedEndpoint = updatedEndpoints.Where(e => e.AssetFile.EndsWith(".gz")); - updatedUnmodifiedEndpoint.Should().HaveCount(1); - - var updatedModifiedEndpoints = updatedEndpoints.Where(e => !e.AssetFile.EndsWith(".gz")); - updatedModifiedEndpoints.Should().HaveCount(fingerprintedEndpoints.Length); - foreach (var updatedEndpoint in updatedModifiedEndpoints) - { - updatedEndpoint.ResponseHeaders.Should().ContainSingle(h => string.Equals(h.Name, "Cache-Control", StringComparison.Ordinal) && string.Equals(h.Value, "immutable")); - } - } - - private static ITaskItem CreateOperation(string type, string target, string name, string value, string newValue = null) - { - return new TaskItem(type, new Dictionary - { - { "UpdateTarget", target }, - { "Name", name }, - { "Value", value }, - { "NewValue", newValue } - }); - } - - private StaticWebAssetEndpoint[] CreateEndpoints(StaticWebAsset[] assets) - { - var defineStaticWebAssetEndpoints = new DefineStaticWebAssetEndpoints - { - CandidateAssets = assets.Select(a => a.ToTaskItem()).ToArray(), - ExistingEndpoints = [], - ContentTypeMappings = - [ - CreateContentMapping("*.html", "text/html"), - CreateContentMapping("*.js", "application/javascript"), - CreateContentMapping("*.css", "text/css"), - ] - }; - defineStaticWebAssetEndpoints.BuildEngine = Mock.Of(); - - defineStaticWebAssetEndpoints.Execute(); - return StaticWebAssetEndpoint.FromItemGroup(defineStaticWebAssetEndpoints.Endpoints); - } - - private static TaskItem CreateContentMapping(string pattern, string contentType) - { - return new TaskItem(contentType, new Dictionary - { - { "Pattern", pattern }, - { "Priority", "0" } - }); - } - - - private static StaticWebAsset CreateAsset( - string itemSpec, - string sourceId = "MyApp", - string sourceType = "Discovered", - string relativePath = null, - string assetKind = "All", - string assetMode = "All", - string basePath = "base", - string assetRole = "Primary", - string relatedAsset = "", - string assetTraitName = "", - string assetTraitValue = "", - string copyToOutputDirectory = "Never", - string copytToPublishDirectory = "PreserveNewest") - { - var result = new StaticWebAsset() - { - Identity = Path.GetFullPath(itemSpec), - SourceId = sourceId, - SourceType = sourceType, - ContentRoot = Directory.GetCurrentDirectory(), - BasePath = basePath, - RelativePath = relativePath ?? itemSpec, - AssetKind = assetKind, - AssetMode = assetMode, - AssetRole = assetRole, - AssetMergeBehavior = StaticWebAsset.MergeBehaviors.PreferTarget, - AssetMergeSource = "", - RelatedAsset = relatedAsset, - AssetTraitName = assetTraitName, - AssetTraitValue = assetTraitValue, - CopyToOutputDirectory = copyToOutputDirectory, - CopyToPublishDirectory = copytToPublishDirectory, - OriginalItemSpec = itemSpec, - // Add these to avoid accessing the disk to compute them - Integrity = "integrity", - Fingerprint = "fingerprint", - FileLength = 10, - LastWriteTime = DateTimeOffset.UtcNow, - }; - - result.ApplyDefaults(); - result.Normalize(); - - return result; - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ValidateStaticWebAssetsUniquePathsTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ValidateStaticWebAssetsUniquePathsTest.cs deleted file mode 100644 index fe6518ed6bda..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssets/ValidateStaticWebAssetsUniquePathsTest.cs +++ /dev/null @@ -1,216 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.Build.Framework; -using Microsoft.Build.Utilities; -using Moq; - -namespace Microsoft.AspNetCore.Razor.Tasks -{ - public class ValidateStaticWebAssetsUniquePathsTest - { - [Fact] - public void ReturnsError_WhenStaticWebAssetsWebRootPathMatchesExistingContentItemPath() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ValidateStaticWebAssetsUniquePaths - { - BuildEngine = buildEngine.Object, - StaticWebAssets = new TaskItem[] - { - CreateItem(Path.Combine("wwroot", "js", "project-transitive-dep.js"), new Dictionary - { - ["BasePath"] = "_content/ClassLibrary", - ["RelativePath"] = "js/project-transitive-dep.js", - ["SourceId"] = "ClassLibrary", - ["SourceType"] = "Project", - }), - }, - WebRootFiles = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot", "_content", "ClassLibrary", "js", "project-transitive-dep.js"), new Dictionary - { - ["CopyToPublishDirectory"] = "PreserveNewest", - ["ExcludeFromSingleFile"] = "true", - ["OriginalItemSpec"] = Path.Combine("wwwroot", "_content", "ClassLibrary", "js", "project-transitive-dep.js"), - ["TargetPath"] = Path.Combine("wwwroot", "_content", "ClassLibrary", "js", "project-transitive-dep.js"), - }) - } - }; - - var expectedMessage = $"The static web asset '{Path.Combine("wwroot", "js", "project-transitive-dep.js")}' " + - "has a conflicting web root path '/wwwroot/_content/ClassLibrary/js/project-transitive-dep.js' with the " + - $"project file '{Path.Combine("wwwroot", "_content", "ClassLibrary", "js", "project-transitive-dep.js")}'."; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(false); - errorMessages.Should().NotBeEmpty().And.HaveCount(1); - errorMessages.Should().Contain(expectedMessage); - } - - [Fact] - public void AllowsAssetsHavingTheSameBasePathAcrossDifferentSources_WhenTheirFinalDestinationPathIsDifferent() - { - // Arrange - var task = new ValidateStaticWebAssetsUniquePaths - { - StaticWebAssets = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","sample.js"), new Dictionary - { - ["BasePath"] = "MyLibrary", - ["ContentRoot"] = Path.Combine("nuget", "MyLibrary"), - ["RelativePath"] = "sample.js", - ["SourceId"] = "MyLibrary" - }), - CreateItem(Path.Combine("wwwroot", "otherLib.js"), new Dictionary - { - ["BasePath"] = "MyLibrary", - ["ContentRoot"] = Path.Combine("nuget", "MyOtherLibrary"), - ["RelativePath"] = "otherLib.js", - ["SourceId"] = "MyOtherLibrary" - }) - }, - WebRootFiles = Array.Empty() - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - } - - [Fact] - public void AllowsAssetsHavingTheSameContentRootAndDifferentBasePathsAcrossDifferentSources_WhenTheirFinalDestinationPathIsDifferent() - { - // Arrange - var task = new ValidateStaticWebAssetsUniquePaths - { - StaticWebAssets = new TaskItem[] - { - CreateItem(Path.Combine("wwwroot","sample.js"), new Dictionary - { - ["BasePath"] = "MyLibrary", - ["SourceId"] = "MyLibrary", - ["RelativePath"] = "sample.js", - ["ContentRoot"] = Path.Combine(".", "MyLibrary") - }), - CreateItem(Path.Combine("wwwroot", "otherLib.js"), new Dictionary - { - ["BasePath"] = "MyOtherLibrary", - ["SourceId"] = "MyOtherLibrary", - ["RelativePath"] = "otherlib.js", - ["ContentRoot"] = Path.Combine(".", "MyLibrary") - }) - }, - WebRootFiles = Array.Empty() - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - } - - [Fact] - public void ReturnsError_WhenMultipleStaticWebAssetsHaveTheSameWebRootPath() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - buildEngine.Setup(e => e.LogErrorEvent(It.IsAny())) - .Callback(args => errorMessages.Add(args.Message)); - - var task = new ValidateStaticWebAssetsUniquePaths - { - BuildEngine = buildEngine.Object, - StaticWebAssets = new TaskItem[] - { - CreateItem(Path.Combine(".", "Library", "wwwroot", "sample.js"), new Dictionary - { - ["BasePath"] = "/", - ["RelativePath"] = "/sample.js", - }), - CreateItem(Path.Combine(".", "Library", "bin", "dist", "sample.js"), new Dictionary - { - ["BasePath"] = "/", - ["RelativePath"] = "/sample.js", - }) - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(false); - errorMessages.Should().NotBeEmpty().And.HaveCount(1); - errorMessages.Should().Contain($"Conflicting assets with the same path '/wwwroot/sample.js' for content root paths '{Path.Combine(".", "Library", "bin", "dist", "sample.js")}' and '{Path.Combine(".", "Library", "wwwroot", "sample.js")}'."); - } - - [Fact] - public void ReturnsSuccess_WhenStaticWebAssetsDontConflictWithApplicationContentItems() - { - // Arrange - var errorMessages = new List(); - var buildEngine = new Mock(); - - var task = new ValidateStaticWebAssetsUniquePaths - { - BuildEngine = buildEngine.Object, - StaticWebAssets = new TaskItem[] - { - CreateItem(Path.Combine(".", "Library", "wwwroot", "sample.js"), new Dictionary - { - ["BasePath"] = "/_library", - ["RelativePath"] = "/sample.js", - }), - CreateItem(Path.Combine(".", "Library", "wwwroot", "sample.js"), new Dictionary - { - ["BasePath"] = "/_library", - ["RelativePath"] = "/sample.js", - }) - }, - WebRootFiles = new TaskItem[] - { - CreateItem(Path.Combine(".", "App", "wwwroot", "sample.js"), new Dictionary - { - ["TargetPath"] = "/SAMPLE.js", - }) - } - }; - - // Act - var result = task.Execute(); - - // Assert - result.Should().Be(true); - } - - private static TaskItem CreateItem( - string spec, - IDictionary metadata) - { - var result = new TaskItem(spec); - foreach (var (key, value) in metadata) - { - result.SetMetadata(key, value); - } - - return result; - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselineComparer.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselineComparer.cs deleted file mode 100644 index 0110d47f6a10..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselineComparer.cs +++ /dev/null @@ -1,517 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using System.Diagnostics; -using System.Linq; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; - -namespace Microsoft.NET.Sdk.Razor.Tests; - -public class StaticWebAssetsBaselineComparer -{ - private static readonly string BaselineGenerationInstructions = - @"If the difference in baselines is expected, please re-generate the baselines. -Start by ensuring you're dogfooding the SDK from the current branch (dotnet --version should be '*.0.0-dev'). - If you're not on the dogfood sdk, from the root of the repository run: - 1. dotnet clean - 2. .\restore.cmd or ./restore.sh - 3. .\build.cmd ./build.sh - 4. .\eng\dogfood.cmd or . ./eng/dogfood.sh - -Then, using the dogfood SDK run the .\src\RazorSdk\update-test-baselines.ps1 script."; - - public static StaticWebAssetsBaselineComparer Instance { get; } = new(); - - internal void AssertManifest(StaticWebAssetsManifest expected, StaticWebAssetsManifest actual) - { - //Many of the properties in the manifest contain full paths, to avoid flakiness on the tests, we don't compare the full paths. - actual.Version.Should().Be(expected.Version); - actual.Source.Should().Be(expected.Source); - actual.BasePath.Should().Be(expected.BasePath); - actual.Mode.Should().Be(expected.Mode); - actual.ManifestType.Should().Be(expected.ManifestType); - - actual.ReferencedProjectsConfiguration.Should().HaveSameCount(expected.ReferencedProjectsConfiguration); - - // Relax the check for project reference configuration items see - // https://github.com/dotnet/sdk/pull/27381#issuecomment-1228764471 - // for details. - //manifest.ReferencedProjectsConfiguration.OrderBy(cm => cm.Identity) - // .Should() - // .BeEquivalentTo(expected.ReferencedProjectsConfiguration.OrderBy(cm => cm.Identity)); - - actual.DiscoveryPatterns.OrderBy(dp => dp.Name).Should().BeEquivalentTo(expected.DiscoveryPatterns.OrderBy(dp => dp.Name)); - - var actualAssets = actual.Assets - .OrderBy(a => a.BasePath) - .ThenBy(a => a.RelativePath) - .ThenBy(a => a.AssetKind) - .GroupBy(a => GetAssetGroup(a)) - .ToDictionary(a => a.Key, a => a.Order().ToArray()); - - var duplicateAssets = actual.Assets - .GroupBy(a => a) - .ToDictionary(a => a.Key, a => a.Order().ToArray()); - - var foundDuplicateAssetss = duplicateAssets.Where(a => a.Value.Length > 1).ToArray(); - duplicateAssets.Where(a => a.Value.Length > 1).Should().BeEmpty($@"no duplicate assets should exist. But found: - {string.Join($"{Environment.NewLine} ", foundDuplicateAssetss.Select(a => @$"{a.Key.Identity} - {a.Value.Length}"))}{Environment.NewLine}"); - - var expectedAssets = expected.Assets - .OrderBy(a => a.BasePath) - .ThenBy(a => a.RelativePath) - .ThenBy(a => a.AssetKind) - .GroupBy(a => GetAssetGroup(a)) - .ToDictionary(a => a.Key, a => a.Order().ToArray()); - - var actualAssetsByIdentity = actual.Assets.GroupBy(a => a.Identity).ToDictionary(a => a.Key, a => a.Order().ToArray()); - foreach (var asset in actual.Assets) - { - if (!string.IsNullOrEmpty(asset.RelatedAsset)) - { - actualAssetsByIdentity.Should().ContainKey(asset.RelatedAsset); - } - } - - foreach (var (group, actualAssetsGroup) in actualAssets) - { - var expectedAssetsGroup = expectedAssets[group]; - CompareAssetGroup(group, actualAssetsGroup, expectedAssetsGroup); - } - - var actualEndpoints = actual.Endpoints - .OrderBy(a => a.Route) - .ThenBy(a => a.AssetFile) - .GroupBy(a => GetEndpointGroup(a)) - .ToDictionary(a => a.Key, a => a.Order().ToArray()); - - SortEndpointProperties(actualEndpoints); - - var duplicateEndpoints = actual.Endpoints - .GroupBy(a => a) - .ToDictionary(a => a.Key, a => a.Order().ToArray()); - - var foundDuplicateEndpoints = duplicateEndpoints.Where(a => DuplicatesExist(a)).ToArray(); - - duplicateEndpoints.Where(a => DuplicatesExist(a)).Should().BeEmpty($@"no duplicate endpoints should exist. But found: - {string.Join($"{Environment.NewLine} ", foundDuplicateEndpoints.Select(a => @$"{a.Key.Route} - {a.Key.AssetFile} - {a.Key.Selectors.Length} - {a.Value.Length}"))}{Environment.NewLine}"); - - foreach (var endpoint in actual.Endpoints) - { - actualAssetsByIdentity.Should().ContainKey(endpoint.AssetFile); - } - - var expectedEndpoints = expected.Endpoints - .OrderBy(a => a.Route) - .ThenBy(a => a.AssetFile) - .GroupBy(a => GetEndpointGroup(a)) - .ToDictionary(a => a.Key, a => a.Order().ToArray()); - - SortEndpointProperties(expectedEndpoints); - - foreach (var (group, actualEndpointsGroup) in actualEndpoints) - { - var expectedEndpointsGroup = expectedEndpoints[group]; - CompareEndpointGroup(group, actualEndpointsGroup, expectedEndpointsGroup); - } - - static bool DuplicatesExist(KeyValuePair a) - { - var endpoint = a.Key; - if (endpoint.Route.EndsWith(".gz") || endpoint.Route.EndsWith(".br") || endpoint.Selectors.Length == 1) - { - // This is not exact, but there are situations in which our templatization process is not biyective and Build and Publish assets defined during build for - // the same asset end up having the same endpoint. To avoid issues with this, we relax the check to support finding more than one. - return a.Value.Length > 2; - } - else - { - return a.Value.Length > 1; - } - } - } - - private static void SortEndpointProperties(Dictionary endpoints) - { - foreach (var endpointGroup in endpoints.Values) - { - foreach (var endpoint in endpointGroup) - { - Array.Sort(endpoint.Selectors, (a, b) => (a.Name, a.Value).CompareTo((b.Name, b.Value))); - Array.Sort(endpoint.ResponseHeaders, (a, b) => (a.Name, a.Value).CompareTo((b.Name, b.Value))); - Array.Sort(endpoint.EndpointProperties, (a, b) => (a.Name, a.Value).CompareTo((b.Name, b.Value))); - } - } - } - - protected virtual void CompareAssetGroup(string group, StaticWebAsset[] manifestAssets, StaticWebAsset[] expectedAssets) - { - var comparisonMode = CompareAssetCounts(group, manifestAssets, expectedAssets); - Array.Sort(manifestAssets, (a, b) => a.Identity.CompareTo(b.Identity)); - Array.Sort(expectedAssets, (a, b) => a.Identity.CompareTo(b.Identity)); - - // Otherwise, do a property level comparison of all assets - switch (comparisonMode) - { - case GroupComparisonMode.Exact: - break; - case GroupComparisonMode.AllowAdditionalAssets: - break; - default: - break; - } - - var differences = new List(); - var assetDifferences = new List(); - var groupLength = Math.Min(manifestAssets.Length, expectedAssets.Length); - for (var i = 0; i < groupLength; i++) - { - var manifestAsset = manifestAssets[i]; - var expectedAsset = expectedAssets[i]; - - ComputeAssetDifferences(assetDifferences, manifestAsset, expectedAsset); - - if (assetDifferences.Any()) - { - differences.Add(@$" -================================================== - -For {expectedAsset.Identity}: - -{string.Join(Environment.NewLine, assetDifferences)} - -=================================================="); - } - - assetDifferences.Clear(); - } - - differences.Should().BeEmpty( - @$" the generated manifest should match the expected baseline. - -{BaselineGenerationInstructions} - -"); - } - - private GroupComparisonMode CompareAssetCounts(string group, StaticWebAsset[] manifestAssets, StaticWebAsset[] expectedAssets) - { - var comparisonMode = GetGroupComparisonMode(group); - - // If there's a mismatch in the number of assets, just print the strict difference in the asset `Identity` - switch (comparisonMode) - { - case GroupComparisonMode.Exact: - if (manifestAssets.Length != expectedAssets.Length) - { - ThrowAssetCountMismatchError(manifestAssets, expectedAssets); - } - break; - case GroupComparisonMode.AllowAdditionalAssets: - if (expectedAssets.Except(manifestAssets).Any()) - { - ThrowAssetCountMismatchError(manifestAssets, expectedAssets); - } - break; - default: - break; - } - - return comparisonMode; - - static void ThrowAssetCountMismatchError(StaticWebAsset[] manifestAssets, StaticWebAsset[] expectedAssets) - { - var missingAssets = expectedAssets.Except(manifestAssets); - var unexpectedAssets = manifestAssets.Except(expectedAssets); - - var differences = new List(); - - if (missingAssets.Any()) - { - differences.Add($@"The following expected assets weren't found in the manifest: - {string.Join($"{Environment.NewLine}\t", missingAssets.Select(a => a.Identity))}"); - } - - if (unexpectedAssets.Any()) - { - differences.Add($@"The following additional unexpected assets were found in the manifest: - {string.Join($"{Environment.NewLine}\t", unexpectedAssets.Select(a => a.Identity))}"); - } - - throw new Exception($@"{string.Join(Environment.NewLine, differences)} - -{BaselineGenerationInstructions}"); - } - } - - protected virtual GroupComparisonMode GetGroupComparisonMode(string group) - { - return GroupComparisonMode.Exact; - } - - private static void ComputeAssetDifferences(List assetDifferences, StaticWebAsset manifestAsset, StaticWebAsset expectedAsset) - { - if (manifestAsset.Identity != expectedAsset.Identity) - { - assetDifferences.Add($"Expected manifest Identity of {expectedAsset.Identity} but found {manifestAsset.Identity}."); - } - if (manifestAsset.SourceType != expectedAsset.SourceType) - { - assetDifferences.Add($"Expected manifest SourceType of {expectedAsset.SourceType} but found {manifestAsset.SourceType}."); - } - if (manifestAsset.SourceId != expectedAsset.SourceId) - { - assetDifferences.Add($"Expected manifest SourceId of {expectedAsset.SourceId} but found {manifestAsset.SourceId}."); - } - if (manifestAsset.ContentRoot != expectedAsset.ContentRoot) - { - assetDifferences.Add($"Expected manifest ContentRoot of {expectedAsset.ContentRoot} but found {manifestAsset.ContentRoot}."); - } - if (manifestAsset.BasePath != expectedAsset.BasePath) - { - assetDifferences.Add($"Expected manifest BasePath of {expectedAsset.BasePath} but found {manifestAsset.BasePath}."); - } - if (manifestAsset.RelativePath != expectedAsset.RelativePath) - { - assetDifferences.Add($"Expected manifest RelativePath of {expectedAsset.RelativePath} but found {manifestAsset.RelativePath}."); - } - if (manifestAsset.AssetKind != expectedAsset.AssetKind) - { - assetDifferences.Add($"Expected manifest AssetKind of {expectedAsset.AssetKind} but found {manifestAsset.AssetKind}."); - } - if (manifestAsset.AssetMode != expectedAsset.AssetMode) - { - assetDifferences.Add($"Expected manifest AssetMode of {expectedAsset.AssetMode} but found {manifestAsset.AssetMode}."); - } - if (manifestAsset.AssetRole != expectedAsset.AssetRole) - { - assetDifferences.Add($"Expected manifest AssetRole of {expectedAsset.AssetRole} but found {manifestAsset.AssetRole}."); - } - if (manifestAsset.RelatedAsset != expectedAsset.RelatedAsset) - { - assetDifferences.Add($"Expected manifest RelatedAsset of {expectedAsset.RelatedAsset} but found {manifestAsset.RelatedAsset}."); - } - if (manifestAsset.AssetTraitName != expectedAsset.AssetTraitName) - { - assetDifferences.Add($"Expected manifest AssetTraitName of {expectedAsset.AssetTraitName} but found {manifestAsset.AssetTraitName}."); - } - if (manifestAsset.AssetTraitValue != expectedAsset.AssetTraitValue) - { - assetDifferences.Add($"Expected manifest AssetTraitValue of {expectedAsset.AssetTraitValue} but found {manifestAsset.AssetTraitValue}."); - } - if (manifestAsset.CopyToOutputDirectory != expectedAsset.CopyToOutputDirectory) - { - assetDifferences.Add($"Expected manifest CopyToOutputDirectory of {expectedAsset.CopyToOutputDirectory} but found {manifestAsset.CopyToOutputDirectory}."); - } - if (manifestAsset.CopyToPublishDirectory != expectedAsset.CopyToPublishDirectory) - { - assetDifferences.Add($"Expected manifest CopyToPublishDirectory of {expectedAsset.CopyToPublishDirectory} but found {manifestAsset.CopyToPublishDirectory}."); - } - if (manifestAsset.OriginalItemSpec != expectedAsset.OriginalItemSpec) - { - assetDifferences.Add($"Expected manifest OriginalItemSpec of {expectedAsset.OriginalItemSpec} but found {manifestAsset.OriginalItemSpec}."); - } - } - - protected virtual string GetAssetGroup(StaticWebAsset asset) - { - return Path.GetExtension(asset.Identity.TrimEnd(']')); - } - - protected virtual void CompareEndpointGroup(string group, StaticWebAssetEndpoint[] manifestAssets, StaticWebAssetEndpoint[] expectedAssets) - { - var comparisonMode = CompareEndpointCounts(group, manifestAssets, expectedAssets); - Array.Sort(manifestAssets); - Array.Sort(expectedAssets); - - // Otherwise, do a property level comparison of all assets - switch (comparisonMode) - { - case GroupComparisonMode.Exact: - break; - case GroupComparisonMode.AllowAdditionalAssets: - break; - default: - break; - } - - var differences = new List(); - var assetDifferences = new List(); - var groupLength = Math.Min(manifestAssets.Length, expectedAssets.Length); - for (var i = 0; i < groupLength; i++) - { - var manifestAsset = manifestAssets[i]; - var expectedAsset = expectedAssets[i]; - - ComputeEndpointDifferences(assetDifferences, manifestAsset, expectedAsset); - - if (assetDifferences.Any()) - { - differences.Add(@$" -================================================== - -For {expectedAsset.AssetFile}: - -{string.Join(Environment.NewLine, assetDifferences)} - -=================================================="); - } - - assetDifferences.Clear(); - } - - differences.Should().BeEmpty( - @$" the generated manifest should match the expected baseline. - -{BaselineGenerationInstructions} - -"); - } - - private GroupComparisonMode CompareEndpointCounts(string group, StaticWebAssetEndpoint[] manifestEndpoints, StaticWebAssetEndpoint[] expectedEndpoints) - { - var comparisonMode = GetGroupComparisonMode(group); - - // If there's a mismatch in the number of assets, just print the strict difference in the asset `Identity` - switch (comparisonMode) - { - case GroupComparisonMode.Exact: - if (manifestEndpoints.Length != expectedEndpoints.Length) - { - ThrowEndpointCountMismatchError(group, manifestEndpoints, expectedEndpoints); - } - break; - case GroupComparisonMode.AllowAdditionalAssets: - if (expectedEndpoints.Except(manifestEndpoints).Any()) - { - ThrowEndpointCountMismatchError(group, manifestEndpoints, expectedEndpoints); - } - break; - default: - break; - } - - return comparisonMode; - - static void ThrowEndpointCountMismatchError(string group, StaticWebAssetEndpoint[] manifestEndpoints, StaticWebAssetEndpoint[] expectedEndpoints) - { - var missingEndpoints = expectedEndpoints.Except(manifestEndpoints); - var unexpectedEndpoints = manifestEndpoints.Except(expectedEndpoints); - - var differences = new List - { - $"Expected group '{group}' to have '{expectedEndpoints.Length}' endpoints but found '{manifestEndpoints.Length}'.", - "Expected Endpoints:", - string.Join($"{Environment.NewLine}\t", expectedEndpoints.Select(a => $"{a.Route} - {a.Selectors.Length} - {a.AssetFile}")), - "Actual Endpoints:", - string.Join($"{Environment.NewLine}\t", manifestEndpoints.Select(a => $"{a.Route} - {a.Selectors.Length} - {a.AssetFile}")) - }; - - if (missingEndpoints.Any()) - { - differences.Add($@"The following expected assets weren't found in the manifest: - {string.Join($"{Environment.NewLine}\t", missingEndpoints.Select(a => $"{a.Route} - {a.AssetFile}"))}"); - } - - if (unexpectedEndpoints.Any()) - { - differences.Add($@"The following additional unexpected assets were found in the manifest: - {string.Join($"{Environment.NewLine}\t", unexpectedEndpoints.Select(a => $"{a.Route} - {a.AssetFile}"))}"); - } - - throw new Exception($@"{string.Join(Environment.NewLine, differences)} - -{BaselineGenerationInstructions}"); - } - } - - protected virtual GroupComparisonMode GetAssetGroupComparisonMode(string group) - { - return GroupComparisonMode.Exact; - } - - private static void ComputeEndpointDifferences(List assetDifferences, StaticWebAssetEndpoint manifestAsset, StaticWebAssetEndpoint expectedAsset) - { - if (manifestAsset.Route != expectedAsset.Route) - { - assetDifferences.Add($"Expected manifest Identity of {expectedAsset.Route} but found {manifestAsset.Route}."); - } - if (manifestAsset.AssetFile != expectedAsset.AssetFile) - { - assetDifferences.Add($"Expected manifest SourceType of {expectedAsset.AssetFile} but found {manifestAsset.AssetFile}."); - } - - ComputeSelectorDifferences(assetDifferences, manifestAsset.Selectors, expectedAsset.Selectors); - ComputeResponseHeaderDifferences(assetDifferences, manifestAsset.ResponseHeaders, expectedAsset.ResponseHeaders); - } - - private static void ComputeResponseHeaderDifferences( - List assetDifferences, - StaticWebAssetEndpointResponseHeader[] manifestResponseHeaders, - StaticWebAssetEndpointResponseHeader[] expectedResponseHeaders) - { - if (manifestResponseHeaders.Length != expectedResponseHeaders.Length) - { - assetDifferences.Add($"Expected manifest to have {expectedResponseHeaders.Length} response headers but found {manifestResponseHeaders.Length}."); - } - - var manifest = new HashSet(manifestResponseHeaders); - var differences = new HashSet(manifestResponseHeaders); - var expected = new HashSet(expectedResponseHeaders); - differences.SymmetricExceptWith(expected); - - foreach (var difference in differences) - { - if (!manifest.Contains(difference)) - { - assetDifferences.Add($"Expected manifest to have response header '{difference.Name}={difference.Value}' but it was not found."); - } - else - { - assetDifferences.Add($"Found unexpected response header '{difference.Name}={difference.Value}'."); - } - } - } - - private static void ComputeSelectorDifferences( - List assetDifferences, - StaticWebAssetEndpointSelector[] manifestSelectors, - StaticWebAssetEndpointSelector[] expectedSelectors) - { - if (manifestSelectors.Length != expectedSelectors.Length) - { - assetDifferences.Add($"Expected manifest to have {expectedSelectors.Length} selectors but found {manifestSelectors.Length}."); - } - - var manifest = new HashSet(manifestSelectors); - var differences = new HashSet(manifestSelectors); - var expected = new HashSet(expectedSelectors); - differences.SymmetricExceptWith(expected); - - foreach (var difference in differences) - { - if (!manifest.Contains(difference)) - { - assetDifferences.Add($"Expected manifest to have selector '{difference.Name}={difference.Value};q={difference.Quality}' but it was not found."); - } - else - { - assetDifferences.Add($"Found unexpected selector '{difference.Name}={difference.Value};q={difference.Quality}'."); - } - } - } - - protected virtual string GetEndpointGroup(StaticWebAssetEndpoint asset) - { - return Path.GetExtension(asset.AssetFile.TrimEnd(']')); - } -} - -public enum GroupComparisonMode -{ - // We require the same number of assets in a group for the baseline and the template. - Exact, - - // We won't fail when we check against the baseline if additional assets are present for a group. - AllowAdditionalAssets -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselineFactory.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselineFactory.cs deleted file mode 100644 index aada23bdd62a..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselineFactory.cs +++ /dev/null @@ -1,452 +0,0 @@ -// 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 System.Runtime.Versioning; -using System.Text.RegularExpressions; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using NuGet.Frameworks; -using NuGet.ProjectModel; - -namespace Microsoft.NET.Sdk.Razor.Tests; -public partial class StaticWebAssetsBaselineFactory -{ - [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.bundle\.scp\.css)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] - private static partial Regex ScopedProjectBundleRegex(); - - [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.styles\.css)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] - private static partial Regex ScopedAppBundleRegex(); - - [GeneratedRegex("""fingerprint-site(\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.css)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] - private static partial Regex FingerprintedSiteCssRegex(); - - [GeneratedRegex("""(?:#\[\.{fingerprint=[0123456789abcdefghijklmnopqrstuvwxyz]{10}\}](\?|\!)?)""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] - private static partial Regex EmbeddedFingerprintExpression(); - - [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.lib\.module\.js)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] - private static partial Regex JSInitializerRegex(); - - [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.modules\.json)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] - private static partial Regex JSModuleManifestRegex(); - - private static readonly IList<(Regex expression, string replacement)> WellKnownFileNamePatternsAndReplacements = - [ - (ScopedProjectBundleRegex(),"$1__fingerprint__$3$4"), - (ScopedAppBundleRegex(),"$1__fingerprint__$3$4"), - (JSInitializerRegex(), "$1__fingerprint__$3$4"), - (JSModuleManifestRegex(), "$1__fingerprint__$3$4"), - (EmbeddedFingerprintExpression(), "#[.{fingerprint=__fingerprint__}]$1"), - (FingerprintedSiteCssRegex(), "fingerprint-site$1__fingerprint__$3$4"), - ]; - - public static StaticWebAssetsBaselineFactory Instance { get; } = new(); - - public IList KnownExtensions { get; } = - [ - // Keep this list of most specific to less specific - ".dll.gz", - ".dll.br", - ".dll", - ".wasm.gz", - ".wasm.br", - ".wasm", - ".js.gz", - ".js.br", - ".js", - ".html", - ".pdb", - ]; - - public IList KnownFilePrefixesWithHashOrVersion { get; } = - [ - "blazor.web.", - "blazor.server", - "dotnet.runtime", - "dotnet.native", - "dotnet.boot", - "dotnet" - ]; - - public void ToTemplate( - StaticWebAssetsManifest manifest, - string projectRoot, - string restorePath, - string runtimeIdentifier) - { - manifest.Hash = "__hash__"; - var assetsByIdentity = manifest.Assets.ToDictionary(a => a.Identity); - var endpointsByAssetFile = manifest.Endpoints.GroupBy(e => e.AssetFile).ToDictionary(g => g.Key, g => g.ToArray()); - foreach (var asset in manifest.Assets) - { - var relatedEndpoints = endpointsByAssetFile.GetValueOrDefault(asset.Identity); - TemplatizeAsset(projectRoot, restorePath, runtimeIdentifier, asset); - foreach (var endpoint in relatedEndpoints ?? []) - { - endpoint.AssetFile = asset.Identity; - } - if (asset.AssetTraitName == "Content-Encoding") - { - var basePath = asset.BasePath.Replace('/', Path.DirectorySeparatorChar).TrimStart(Path.DirectorySeparatorChar); - var relativePath = asset.RelativePath.Replace('/', Path.DirectorySeparatorChar); - var identity = asset.Identity.Replace('\\', Path.DirectorySeparatorChar); - var originalItemSpec = asset.OriginalItemSpec.Replace('\\', Path.DirectorySeparatorChar); - - asset.Identity = Path.Combine(Path.GetDirectoryName(identity), basePath, relativePath); - asset.Identity = asset.Identity.Replace(Path.DirectorySeparatorChar, '\\'); - foreach (var endpoint in relatedEndpoints ?? []) - { - endpoint.AssetFile = asset.Identity; - } - asset.OriginalItemSpec = Path.Combine(Path.GetDirectoryName(originalItemSpec), basePath, relativePath); - asset.OriginalItemSpec = asset.OriginalItemSpec.Replace(Path.DirectorySeparatorChar, '\\'); - } - else if ((asset.Identity.EndsWith(".gz", StringComparison.OrdinalIgnoreCase) || asset.Identity.EndsWith(".br", StringComparison.OrdinalIgnoreCase)) - && asset.AssetTraitName == "" && asset.RelatedAsset == "") - { - // Old .NET 5.0 implementation - var identity = asset.Identity.Replace('\\', Path.DirectorySeparatorChar); - var originalItemSpec = asset.OriginalItemSpec.Replace('\\', Path.DirectorySeparatorChar); - - asset.Identity = Path.Combine(Path.GetDirectoryName(identity), Path.GetFileName(originalItemSpec) + Path.GetExtension(identity)) - .Replace(Path.DirectorySeparatorChar, '\\'); - } - } - - foreach (var endpoint in manifest.Endpoints) - { - for (var i = 0; i < endpoint.ResponseHeaders.Length; i++) - { - ref var header = ref endpoint.ResponseHeaders[i]; - switch (header.Name) - { - case "Content-Length": - header.Value = "__content-length__"; - break; - case "ETag": - header.Value = "__etag__"; - break; - case "Last-Modified": - header.Value = "__last-modified__"; - break; - case "Link": - var cleaned = new List(); - var values = header.Value.Split(',').Select(v => v.Trim()); - foreach (var value in values) - { - var segments = value.Split(';').Select(v => v.Trim()).ToArray(); - var file = segments[0][1..^1]; - segments[0] = $"<{ReplaceFileName(file).Replace('\\', '/')}>"; - cleaned.Add(string.Join("; ", segments)); - } - header.Value = string.Join(", ", cleaned); - - break; - default: - break; - } - } - - for (var i = 0; i < endpoint.EndpointProperties.Length; i++) - { - ref var property = ref endpoint.EndpointProperties[i]; - switch (property.Name) - { - case "fingerprint": - property.Value = "__fingerprint__"; - endpoint.Route = endpoint.Route.Replace(property.Value, $"__{property.Name}__"); - break; - case "integrity": - property.Value = "__integrity__"; - break; - default: - break; - } - - ReplaceFileName(endpoint.Route); - } - - for (var i = 0; i < endpoint.Selectors.Length; i++) - { - ref var selector = ref endpoint.Selectors[i]; - selector.Quality = "__quality__"; - } - - endpoint.Route = TemplatizeFilePath(endpoint.Route, null, null, null, null, null).Replace("\\", "/"); - - endpoint.AssetFile = TemplatizeFilePath( - endpoint.AssetFile, - restorePath, - projectRoot, - null, - null, - runtimeIdentifier); - } - - foreach (var discovery in manifest.DiscoveryPatterns) - { - discovery.ContentRoot = discovery.ContentRoot.Replace(projectRoot, "${ProjectPath}", StringComparison.OrdinalIgnoreCase); - discovery.ContentRoot = discovery.ContentRoot.Replace(Path.DirectorySeparatorChar, '\\'); - - discovery.Name = discovery.Name.Replace(Path.DirectorySeparatorChar, '\\'); - discovery.Pattern = discovery.Pattern.Replace(Path.DirectorySeparatorChar, '\\'); - } - - foreach (var relatedManifest in manifest.ReferencedProjectsConfiguration) - { - relatedManifest.Identity = relatedManifest.Identity.Replace(projectRoot, "${ProjectPath}").Replace(Path.DirectorySeparatorChar, '\\'); - } - - // Sor everything now to ensure we produce stable baselines independent of the machine they were generated on. - Array.Sort(manifest.DiscoveryPatterns, (l, r) => StringComparer.Ordinal.Compare(l.Name, r.Name)); - Array.Sort(manifest.Assets); - foreach (var endpoint in manifest.Endpoints) - { - Array.Sort(endpoint.Selectors); - Array.Sort(endpoint.EndpointProperties); - Array.Sort(endpoint.ResponseHeaders); - } - Array.Sort(manifest.Endpoints); - - Array.Sort(manifest.ReferencedProjectsConfiguration, (l, r) => StringComparer.Ordinal.Compare(l.Identity, r.Identity)); - } - - private void TemplatizeAsset(string projectRoot, string restorePath, string runtimeIdentifier, StaticWebAsset asset) - { - asset.Identity = TemplatizeFilePath( - asset.Identity, - restorePath, - projectRoot, - null, - null, - runtimeIdentifier); - - asset.RelativePath = TemplatizeFilePath( - asset.RelativePath, - null, - null, - null, - null, - runtimeIdentifier).Replace('\\', '/'); - - asset.ContentRoot = TemplatizeFilePath( - asset.ContentRoot, - restorePath, - projectRoot, - null, - null, - runtimeIdentifier); - - asset.RelatedAsset = TemplatizeFilePath( - asset.RelatedAsset, - restorePath, - projectRoot, - null, - null, - runtimeIdentifier); - - asset.OriginalItemSpec = TemplatizeFilePath( - asset.OriginalItemSpec, - restorePath, - projectRoot, - null, - null, - runtimeIdentifier); - - asset.Fingerprint = string.IsNullOrEmpty(asset.Fingerprint) ? asset.Fingerprint : "__fingerprint__"; - asset.Integrity = string.IsNullOrEmpty(asset.Integrity) ? asset.Integrity : "__integrity__"; - asset.FileLength = -1; - asset.LastWriteTime = DateTimeOffset.MinValue; - } - - internal IEnumerable TemplatizeExpectedFiles( - IEnumerable files, - string restorePath, - string projectPath, - string intermediateOutputPath, - string buildOrPublishFolder) - { - foreach (var file in files) - { - var updated = TemplatizeFilePath( - file, - restorePath, - projectPath, - intermediateOutputPath, - buildOrPublishFolder, - null); - - yield return updated; - } - } - - public string TemplatizeFilePath( - string file, - string restorePath, - string projectPath, - string intermediateOutputPath, - string buildOrPublishFolder, - string runtimeIdentifier) - { - var updated = file switch - { - var processed when file.StartsWith('$') => processed, - var fromBuildOrPublishPath when buildOrPublishFolder is not null && file.StartsWith(buildOrPublishFolder, StringComparison.OrdinalIgnoreCase) => - TemplatizeBuildOrPublishPath(buildOrPublishFolder, fromBuildOrPublishPath), - var fromIntermediateOutputPath when intermediateOutputPath is not null && file.StartsWith(intermediateOutputPath, StringComparison.OrdinalIgnoreCase) => - TemplatizeIntermediatePath(intermediateOutputPath, fromIntermediateOutputPath), - var fromPackage when restorePath is not null && file.StartsWith(restorePath, StringComparison.OrdinalIgnoreCase) => - TemplatizeNugetPath(restorePath, fromPackage), - var fromProject when projectPath is not null && file.StartsWith(projectPath, StringComparison.OrdinalIgnoreCase) => - TemplatizeProjectPath(projectPath, fromProject, runtimeIdentifier), - _ => - ReplaceSegments(file, (i, segments) => i switch - { - 2 when segments[0] is "obj" or "bin" => "${Tfm}", - var last when i == segments.Length - 1 => RemovePossibleHash(segments[last]), - _ => segments[i] - }) - }; - - return ReplaceFileName(updated).Replace('/', '\\'); - } - - private static string ReplaceFileName(string path) - { - var directory = Path.GetDirectoryName(path); - var fileName = Path.GetFileName(path); - foreach (var (expression, replacement) in WellKnownFileNamePatternsAndReplacements) - { - if (expression.IsMatch(fileName)) - { - fileName = expression.Replace(fileName, replacement); - return Path.Combine(directory, fileName); - } - } - - return path; - } - - private string TemplatizeBuildOrPublishPath(string outputPath, string file) - { - file = file.Replace(outputPath, "${OutputPath}") - .Replace('\\', '/'); - - file = ReplaceSegments(file, (i, segments) => i switch - { - _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), - _ => segments[i], - }); - - return file; - } - - private string TemplatizeIntermediatePath(string intermediatePath, string file) - { - file = file.Replace(intermediatePath, "${IntermediateOutputPath}") - .Replace('\\', '/'); - - file = ReplaceSegments(file, (i, segments) => i switch - { - 3 when segments[1] is "obj" or "bin" => "${Tfm}", - _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), - _ => segments[i] - }); - - return file; - } - - private string TemplatizeProjectPath(string projectPath, string file, string runtimeIdentifier) - { - file = file.Replace(projectPath, "${ProjectPath}") - .Replace('\\', '/'); - - file = ReplaceSegments(file, (i, segments) => i switch - { - 3 when segments[1] is "obj" or "bin" => "${Tfm}", - 4 when segments[2] is "obj" or "bin" => "${Tfm}", - 4 when segments[1] is "obj" or "bin" && segments[4] == runtimeIdentifier => "${Rid}", - 5 when segments[2] is "obj" or "bin" && segments[5] == runtimeIdentifier => "${Rid}", - _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), - _ => segments[i] - }); - - return file; - } - - private string TemplatizeNugetPath(string restorePath, string file) - { - file = file.Replace(restorePath, "${RestorePath}", StringComparison.OrdinalIgnoreCase) - .Replace('\\', '/'); - if (file.Contains("runtimes")) - { - file = ReplaceSegments(file, (i, segments) => i switch - { - 2 => "${RuntimeVersion}", - 6 when !file.Contains("native") => "${Tfm}", - _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), - _ => segments[i], - }); - } - else - { - file = ReplaceSegments(file, (i, segments) => i switch - { - 2 => "${PackageVersion}", - 4 when IsFramework(segments[4]) => "${Tfm}", - _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), - _ => segments[i], - }); - } - - return file; - - static bool IsFramework(string segment) - { - try - { - var tfm = NuGetFramework.ParseFolder(segment); - - return tfm.Framework is FrameworkConstants.FrameworkIdentifiers.NetCoreApp or - FrameworkConstants.FrameworkIdentifiers.NetStandard or - FrameworkConstants.FrameworkIdentifiers.NetCore or - FrameworkConstants.FrameworkIdentifiers.Net; - } - catch - { - return false; - } - } - } - - private static string ReplaceSegments(string file, Func selector) - { - var segments = file.Split('\\', '/'); - var newSegments = new List(); - - // Segments have the following shape `${RestorePath}/PackageName/PackageVersion/lib/Tfm/dll`. - // We want to replace PackageVersion and Tfm with tokens so that they do not cause issues. - for (var i = 0; i < segments.Length; i++) - { - newSegments.Add(selector(i, segments)); - } - - return string.Join(Path.DirectorySeparatorChar, newSegments); - } - - private string RemovePossibleHash(string fileNameAndExtension) - { - var filename = KnownFilePrefixesWithHashOrVersion.FirstOrDefault(p => fileNameAndExtension.StartsWith(p)); - if (filename != null && filename.EndsWith(".")) - { - filename = filename[..^1]; - } - var extension = KnownExtensions.FirstOrDefault(f => fileNameAndExtension.EndsWith(f, StringComparison.OrdinalIgnoreCase)); - if (filename != null && extension != null) - { - fileNameAndExtension = filename + extension; - } - - return fileNameAndExtension; - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.files.json deleted file mode 100644 index b800715727ea..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.files.json +++ /dev/null @@ -1,4 +0,0 @@ -[ - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.staticwebassets.json deleted file mode 100644 index fd866dc607c5..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_CorrectlyBundlesScopedCssFiles.Build.staticwebassets.json +++ /dev/null @@ -1,2265 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json deleted file mode 100644 index fd866dc607c5..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json +++ /dev/null @@ -1,2265 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json deleted file mode 100644 index cd0e497b7792..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json +++ /dev/null @@ -1,65 +0,0 @@ -[ - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json deleted file mode 100644 index bfc567176e5c..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json +++ /dev/null @@ -1,3735 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.br" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json deleted file mode 100644 index b800715727ea..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json +++ /dev/null @@ -1,4 +0,0 @@ -[ - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json deleted file mode 100644 index fd866dc607c5..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json +++ /dev/null @@ -1,2265 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.files.json deleted file mode 100644 index 9b6099578e17..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.files.json +++ /dev/null @@ -1,6 +0,0 @@ -[ - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.staticwebassets.json deleted file mode 100644 index 264c93b8a815..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_IncorporatesInitializersFromClassLibraries.Build.staticwebassets.json +++ /dev/null @@ -1,2846 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "AnotherClassLib.lib.module.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "AnotherClassLib.lib.module.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "JSModule", - "AssetTraitValue": "JSLibraryModule", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\AnotherClassLib.lib.module.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference.modules.json.gz", - "AssetKind": "Build", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\AppWithPackageAndP2PReference.modules.json.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference.modules.json", - "AssetKind": "Build", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "JSModule", - "AssetTraitValue": "JSModuleManifest", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.lib.module.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary.lib.module.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\ClassLibrary.lib.module.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.lib.module.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\ClassLibrary.lib.module.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary.lib.module.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "JSModule", - "AssetTraitValue": "JSLibraryModule", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\ClassLibrary.lib.module.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.lib.module.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.lib.module.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.lib.module.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.lib.module.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.lib.module.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\ClassLibrary.lib.module.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json deleted file mode 100644 index fd866dc607c5..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json +++ /dev/null @@ -1,2265 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.files.json deleted file mode 100644 index b800715727ea..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.files.json +++ /dev/null @@ -1,4 +0,0 @@ -[ - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.staticwebassets.json deleted file mode 100644 index fd866dc607c5..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder_NoDependencies.Build.staticwebassets.json +++ /dev/null @@ -1,2265 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.files.json deleted file mode 100644 index b800715727ea..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.files.json +++ /dev/null @@ -1,4 +0,0 @@ -[ - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json deleted file mode 100644 index b1776f7adb3f..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/BuildProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json +++ /dev/null @@ -1,1921 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 1, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 1, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.files.json deleted file mode 100644 index ff5e94bf0263..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.files.json +++ /dev/null @@ -1,6 +0,0 @@ -[ - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.staticwebassets.json deleted file mode 100644 index ab40209e2da7..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Can_DisableAssetCaching.Build.staticwebassets.json +++ /dev/null @@ -1,1390 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_CreatesEndpointsForAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_CreatesEndpointsForAssets.Build.staticwebassets.json deleted file mode 100644 index 02b56c375c77..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_CreatesEndpointsForAssets.Build.staticwebassets.json +++ /dev/null @@ -1,1581 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [ - { - "Name": "ComponentApp\\wwwroot", - "Source": "ComponentApp", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "app.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\wwwroot\\app.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\wwwroot\\app.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\wwwroot\\app.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "RelativePath": "app.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\app.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "app.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "app.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "app.js", - "AssetFile": "${ProjectPath}\\wwwroot\\app.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.files.json deleted file mode 100644 index 0637a088a01e..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.files.json +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.staticwebassets.json deleted file mode 100644 index 37b03732b57e..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_CrosstargetingTests_CanIncludeBrowserAssets.Build.staticwebassets.json +++ /dev/null @@ -1,205 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "RazorComponentAppMultitarget", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [ - { - "Name": "RazorComponentAppMultitarget\\wwwroot", - "Source": "RazorComponentAppMultitarget", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\test.js.gz", - "SourceId": "RazorComponentAppMultitarget", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "test.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "Server", - "RelatedAsset": "${ProjectPath}\\wwwroot\\test.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\wwwroot\\test.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\wwwroot\\test.js", - "SourceId": "RazorComponentAppMultitarget", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "RelativePath": "test.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "Server", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\test.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "test.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\test.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "test.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\test.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "test.js", - "AssetFile": "${ProjectPath}\\wwwroot\\test.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json deleted file mode 100644 index ab40209e2da7..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json +++ /dev/null @@ -1,1390 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json deleted file mode 100644 index 3e796c825b34..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json +++ /dev/null @@ -1,26 +0,0 @@ -[ - "${OutputPath}\\wwwroot\\ComponentApp.styles.css", - "${OutputPath}\\wwwroot\\ComponentApp.styles.css.br", - "${OutputPath}\\wwwroot\\ComponentApp.styles.css.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.web.js", - "${OutputPath}\\wwwroot\\_framework\\blazor.web.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.web.js.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint}]?.styles.css", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint}]?.js" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json deleted file mode 100644 index ae1b710a0fc1..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json +++ /dev/null @@ -1,2346 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.br" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.br" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.br" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.br" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.files.json deleted file mode 100644 index e4cd7bc7e746..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.files.json +++ /dev/null @@ -1,4 +0,0 @@ -[ - "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.staticwebassets.json deleted file mode 100644 index 9135a74bf3db..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_Detects_PrecompressedAssets.Build.staticwebassets.json +++ /dev/null @@ -1,1227 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "SourceId": "AppWithP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "AppWithP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithP2PReference.styles.css" - } - ] - }, - { - "Route": "AppWithP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.files.json deleted file mode 100644 index ff5e94bf0263..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.files.json +++ /dev/null @@ -1,6 +0,0 @@ -[ - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.staticwebassets.json deleted file mode 100644 index beaef7e3ebb2..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DiscoversJsModulesBasedOnPatterns.Build.staticwebassets.json +++ /dev/null @@ -1,1772 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\Components\\Pages\\Counter.razor.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\", - "BasePath": "/", - "RelativePath": "Components/Pages/Counter.razor.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "Components\\Pages\\Counter.razor.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\Pages\\Index.cshtml.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\", - "BasePath": "/", - "RelativePath": "Pages/Index.cshtml.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "Pages\\Index.cshtml.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\Components\\Pages\\Counter.razor.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "Components/Pages/Counter.razor.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\Components\\Pages\\Counter.razor.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\Components\\Pages\\Components\\Pages\\Counter.razor.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\Pages\\Index.cshtml.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "Pages/Index.cshtml.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\Pages\\Index.cshtml.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\Pages\\Pages\\Index.cshtml.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "Components/Pages/Counter.razor.js", - "AssetFile": "${ProjectPath}\\Components\\Pages\\Counter.razor.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "Pages/Index.cshtml.js", - "AssetFile": "${ProjectPath}\\Pages\\Index.cshtml.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "Components/Pages/Counter.razor.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\Components\\Pages\\Counter.razor.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "Components/Pages/Counter.razor.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\Components\\Pages\\Counter.razor.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "Pages/Index.cshtml.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\Pages\\Index.cshtml.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "Pages/Index.cshtml.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\Pages\\Index.cshtml.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.files.json deleted file mode 100644 index ff5e94bf0263..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.files.json +++ /dev/null @@ -1,6 +0,0 @@ -[ - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.staticwebassets.json deleted file mode 100644 index ede0e7382a0b..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent.Build.staticwebassets.json +++ /dev/null @@ -1,1764 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [ - { - "Name": "ComponentApp\\wwwroot", - "Source": "ComponentApp", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\file.txt.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "file.txt.gz", - "AssetKind": "Build", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\wwwroot\\file.build.txt", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "Never", - "OriginalItemSpec": "${ProjectPath}\\wwwroot\\file.txt.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\file.txt.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "file.txt.gz", - "AssetKind": "Publish", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\wwwroot\\file.publish.txt", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\wwwroot\\file.txt.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\wwwroot\\file.build.txt", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "RelativePath": "file.txt", - "AssetKind": "Build", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "Never", - "OriginalItemSpec": "wwwroot\\file.build.txt", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\wwwroot\\file.publish.txt", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "RelativePath": "file.txt", - "AssetKind": "Publish", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\file.publish.txt", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "file.txt.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\file.txt.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/plain" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "file.txt.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\file.txt.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/plain" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "file.txt", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\file.txt.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/plain" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "file.txt", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\file.txt.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/plain" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "file.txt", - "AssetFile": "${ProjectPath}\\wwwroot\\file.build.txt", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/plain" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "file.txt", - "AssetFile": "${ProjectPath}\\wwwroot\\file.publish.txt", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/plain" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DoesNotUpdateManifest_WhenHasNotChanged.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DoesNotUpdateManifest_WhenHasNotChanged.Build.staticwebassets.json deleted file mode 100644 index ab40209e2da7..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_DoesNotUpdateManifest_WhenHasNotChanged.Build.staticwebassets.json +++ /dev/null @@ -1,1390 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.files.json deleted file mode 100644 index ff5e94bf0263..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.files.json +++ /dev/null @@ -1,6 +0,0 @@ -[ - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.staticwebassets.json deleted file mode 100644 index 71d1d994219d..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_FingerprintsContent_WhenEnabled.Build.staticwebassets.json +++ /dev/null @@ -1,1742 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [ - { - "Name": "ComponentApp\\wwwroot", - "Source": "ComponentApp", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\css\\fingerprint-site#[.{fingerprint=__fingerprint__}]?.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "css/fingerprint-site#[.{fingerprint=__fingerprint__}]?.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\wwwroot\\css\\fingerprint-site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\wwwroot\\css\\css\\fingerprint-site#[.{fingerprint=__fingerprint__}]?.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\wwwroot\\css\\fingerprint-site.css", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "RelativePath": "css/fingerprint-site#[.{fingerprint}]?.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\fingerprint-site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "css/fingerprint-site.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\css\\fingerprint-site#[.{fingerprint=__fingerprint__}]?.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "css/fingerprint-site.__fingerprint__.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\css\\fingerprint-site#[.{fingerprint=__fingerprint__}]?.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "css/fingerprint-site.css.gz" - } - ] - }, - { - "Route": "css/fingerprint-site.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\css\\fingerprint-site#[.{fingerprint=__fingerprint__}]?.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "css/fingerprint-site.__fingerprint__.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\css\\fingerprint-site#[.{fingerprint=__fingerprint__}]?.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "css/fingerprint-site.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "css/fingerprint-site.css", - "AssetFile": "${ProjectPath}\\wwwroot\\css\\fingerprint-site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "css/fingerprint-site.__fingerprint__.css", - "AssetFile": "${ProjectPath}\\wwwroot\\css\\fingerprint-site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "css/fingerprint-site.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json deleted file mode 100644 index ff5e94bf0263..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.files.json +++ /dev/null @@ -1,6 +0,0 @@ -[ - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json deleted file mode 100644 index ab40209e2da7..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_GeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json +++ /dev/null @@ -1,1390 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.files.json deleted file mode 100644 index ff5e94bf0263..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.files.json +++ /dev/null @@ -1,6 +0,0 @@ -[ - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.staticwebassets.json deleted file mode 100644 index ab40209e2da7..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange.Build.staticwebassets.json +++ /dev/null @@ -1,1390 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.files.json deleted file mode 100644 index ff5e94bf0263..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.files.json +++ /dev/null @@ -1,6 +0,0 @@ -[ - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.staticwebassets.json deleted file mode 100644 index e3df085be66e..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_UpdatesManifest_WhenFilesChange_Updated.Build.staticwebassets.json +++ /dev/null @@ -1,1581 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [ - { - "Name": "ComponentApp\\wwwroot", - "Source": "ComponentApp", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\index.html.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "index.html.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\wwwroot\\index.html", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\wwwroot\\index.html.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\wwwroot\\index.html", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "RelativePath": "index.html", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\index.html", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "index.html.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\index.html.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/html" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "index.html", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\index.html.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/html" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "index.html", - "AssetFile": "${ProjectPath}\\wwwroot\\index.html", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/html" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.files.json deleted file mode 100644 index 0637a088a01e..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.files.json +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json deleted file mode 100644 index 72ff3fdc2242..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Build_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json +++ /dev/null @@ -1,416 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "", - "GetPublishAssetsTargets": "GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.#[{fingerprint=v4}].js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.#[{fingerprint=v4}].js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.#[{fingerprint=v4}].js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.#[{fingerprint}].js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.#[{fingerprint=v4}].js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "js/project-transitive-dep..js.gz" - } - ] - }, - { - "Route": "js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.#[{fingerprint=v4}].js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "js/project-transitive-dep..js" - } - ] - }, - { - "Route": "js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "js/project-transitive-dep..js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/CanEnable_CompressionOnAllAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/CanEnable_CompressionOnAllAssets.Build.staticwebassets.json deleted file mode 100644 index 0751baa3633b..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/CanEnable_CompressionOnAllAssets.Build.staticwebassets.json +++ /dev/null @@ -1,1104 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "SourceId": "AppWithP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "AppWithP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithP2PReference.styles.css" - } - ] - }, - { - "Route": "AppWithP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Clean_RemovesManifestFrom_BuildAndIntermediateOutput.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Clean_RemovesManifestFrom_BuildAndIntermediateOutput.Build.staticwebassets.json deleted file mode 100644 index ab40209e2da7..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Clean_RemovesManifestFrom_BuildAndIntermediateOutput.Build.staticwebassets.json +++ /dev/null @@ -1,1390 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json deleted file mode 100644 index f8528ca0503b..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json +++ /dev/null @@ -1,2265 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json deleted file mode 100644 index 579d21c42b1d..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json +++ /dev/null @@ -1,65 +0,0 @@ -[ - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json deleted file mode 100644 index d064a76eab26..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json +++ /dev/null @@ -1,3735 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.br" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Build.staticwebassets.json deleted file mode 100644 index f864403dbfae..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Build.staticwebassets.json +++ /dev/null @@ -1,2647 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "AnotherClassLib.lib.module.js.gz", - "AssetKind": "Build", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.build.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "Never", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.build.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "AnotherClassLib.lib.module.js", - "AssetKind": "Build", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "JSModule", - "AssetTraitValue": "JSLibraryModule", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "Never", - "OriginalItemSpec": "wwwroot\\AnotherClassLib.lib.module.build.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference.modules.json.gz", - "AssetKind": "Build", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\AppWithPackageAndP2PReference.modules.json.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference.modules.json", - "AssetKind": "Build", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "JSModule", - "AssetTraitValue": "JSModuleManifest", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.build.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.files.json deleted file mode 100644 index da6299295ac8..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.files.json +++ /dev/null @@ -1,41 +0,0 @@ -[ - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json.gz", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.staticwebassets.json deleted file mode 100644 index 242de842fcbb..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_DifferentBuildAndPublish_LibraryInitializers.Publish.staticwebassets.json +++ /dev/null @@ -1,4371 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "AnotherClassLib.lib.module.js.gz", - "AssetKind": "Publish", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "AnotherClassLib.lib.module.js.br", - "AssetKind": "Publish", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "AnotherClassLib.lib.module.js", - "AssetKind": "Publish", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "JSModule", - "AssetTraitValue": "JSLibraryModule", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\AnotherClassLib.lib.module.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.br", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference.modules.json.br", - "AssetKind": "Publish", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\AppWithPackageAndP2PReference.modules.json.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference.modules.json.gz", - "AssetKind": "Publish", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\AppWithPackageAndP2PReference.modules.json.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference.modules.json", - "AssetKind": "Publish", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "JSModule", - "AssetTraitValue": "JSModuleManifest", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.br" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json deleted file mode 100644 index fd866dc607c5..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json +++ /dev/null @@ -1,2265 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json deleted file mode 100644 index cd0e497b7792..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json +++ /dev/null @@ -1,65 +0,0 @@ -[ - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json deleted file mode 100644 index bfc567176e5c..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json +++ /dev/null @@ -1,3735 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.br" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Build.staticwebassets.json deleted file mode 100644 index 1dc00d8ee849..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Build.staticwebassets.json +++ /dev/null @@ -1,2830 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "AnotherClassLib.lib.module.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "AnotherClassLib.lib.module.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "JSModule", - "AssetTraitValue": "JSLibraryModule", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\AnotherClassLib.lib.module.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference.modules.json.gz", - "AssetKind": "Build", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\AppWithPackageAndP2PReference.modules.json.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference.modules.json", - "AssetKind": "Build", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "JSModule", - "AssetTraitValue": "JSModuleManifest", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "AnotherClassLib.lib.module.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\AnotherClassLib.lib.module.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\AnotherClassLib.lib.module.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "AnotherClassLib.lib.module.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\AnotherClassLib.lib.module.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference.modules.json.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.build.manifest.json", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\AnotherClassLib.lib.module.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.files.json deleted file mode 100644 index 45fd654ea97e..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.files.json +++ /dev/null @@ -1,86 +0,0 @@ -[ - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json.gz", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.br", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.modules.json.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.staticwebassets.json deleted file mode 100644 index 275a8caf202e..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_IncorporatesInitializersFromClassLibrariesAndPublishesAssetsToTheRightLocation.Publish.staticwebassets.json +++ /dev/null @@ -1,4677 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "AnotherClassLib.lib.module.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "AnotherClassLib.lib.module.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "AnotherClassLib.lib.module.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "JSModule", - "AssetTraitValue": "JSLibraryModule", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\AnotherClassLib.lib.module.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.br", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference.modules.json.br", - "AssetKind": "Publish", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\AppWithPackageAndP2PReference.modules.json.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference.modules.json.gz", - "AssetKind": "Publish", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\AppWithPackageAndP2PReference.modules.json.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference.modules.json", - "AssetKind": "Publish", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "JSModule", - "AssetTraitValue": "JSModuleManifest", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "AnotherClassLib.lib.module.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\AnotherClassLib.lib.module.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "AnotherClassLib.lib.module.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\AnotherClassLib.lib.module.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\AnotherClassLib.lib.module.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "AnotherClassLib.lib.module.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\AnotherClassLib.lib.module.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\AnotherClassLib.lib.module.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\AnotherClassLib.lib.module.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.br" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference.modules.json.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.modules.json", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\AnotherClassLib.lib.module.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/AnotherClassLib.lib.module.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\AnotherClassLib.lib.module.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json deleted file mode 100644 index fd866dc607c5..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json +++ /dev/null @@ -1,2265 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json deleted file mode 100644 index 64a2b2273f42..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json +++ /dev/null @@ -1,35 +0,0 @@ -[ - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json deleted file mode 100644 index bfc567176e5c..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json +++ /dev/null @@ -1,3735 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.br" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json deleted file mode 100644 index f78eea5b6067..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json +++ /dev/null @@ -1,2265 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json deleted file mode 100644 index 0b77179d4e63..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json +++ /dev/null @@ -1,35 +0,0 @@ -[ - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json deleted file mode 100644 index 29c266ca5461..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json +++ /dev/null @@ -1,3735 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 2, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.br" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json deleted file mode 100644 index b1776f7adb3f..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Build.staticwebassets.json +++ /dev/null @@ -1,1921 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 1, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 1, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.files.json deleted file mode 100644 index 2742db812e43..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.files.json +++ /dev/null @@ -1,63 +0,0 @@ -[ - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\css\\site.css", - "${OutputPath}\\wwwroot\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.staticwebassets.json deleted file mode 100644 index 20005ea9697f..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishProjectWithReferences_WorksWithStaticWebAssetsV1ClassLibraries.Publish.staticwebassets.json +++ /dev/null @@ -1,3152 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 1, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 1, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.br" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.files.json deleted file mode 100644 index 8040bcb9de07..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.files.json +++ /dev/null @@ -1,18 +0,0 @@ -[ - "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithP2PReference.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithP2PReference.styles.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js.gz" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.staticwebassets.json deleted file mode 100644 index 9135a74bf3db..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/PublishWorks_With_PrecompressedAssets.Build.staticwebassets.json +++ /dev/null @@ -1,1227 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "ComputeReferencedStaticWebAssetsPublishManifest;GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "SourceId": "AppWithP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "AppWithP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithP2PReference.styles.css" - } - ] - }, - { - "Route": "AppWithP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/ClassLibrary/ClassLibrary.bundle.scp.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets.Publish.staticwebassets.json deleted file mode 100644 index 7ea44f42aee8..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets.Publish.staticwebassets.json +++ /dev/null @@ -1,2660 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [ - { - "Name": "ComponentApp\\wwwroot", - "Source": "ComponentApp", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "app.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\wwwroot\\app.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\wwwroot\\app.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\app.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "app.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\wwwroot\\app.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\wwwroot\\app.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\wwwroot\\app.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "RelativePath": "app.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\app.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "app.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "app.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.br" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.br" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.br" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.br" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "app.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\app.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "app.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\app.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "app.js", - "AssetFile": "${ProjectPath}\\wwwroot\\app.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets_BuildAndPublish_Assets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets_BuildAndPublish_Assets.Publish.staticwebassets.json deleted file mode 100644 index 0007d427537c..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CreatesEndpointsForAssets_BuildAndPublish_Assets.Publish.staticwebassets.json +++ /dev/null @@ -1,2660 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [ - { - "Name": "ComponentApp\\wwwroot", - "Source": "ComponentApp", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "app.js.gz", - "AssetKind": "Publish", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\wwwroot\\app.publish.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\wwwroot\\app.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\app.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "app.js.br", - "AssetKind": "Publish", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\wwwroot\\app.publish.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\wwwroot\\app.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\wwwroot\\app.publish.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "RelativePath": "app.js", - "AssetKind": "Publish", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\app.publish.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "app.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "app.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\app.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.br" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.br" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.br" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.br" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "app.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\app.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "app.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\app.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "app.js", - "AssetFile": "${ProjectPath}\\wwwroot\\app.publish.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.files.json deleted file mode 100644 index 5e5415c86278..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.files.json +++ /dev/null @@ -1,8 +0,0 @@ -[ - "${OutputPath}\\wwwroot\\test.js", - "${OutputPath}\\wwwroot\\test.js.br", - "${OutputPath}\\wwwroot\\test.js.gz", - "${OutputPath}\\wwwroot\\test.js", - "${OutputPath}\\wwwroot\\test.js.br", - "${OutputPath}\\wwwroot\\test.js.gz" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.staticwebassets.json deleted file mode 100644 index eed9fd21da58..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_CrosstargetingTests_CanIncludeBrowserAssets.Publish.staticwebassets.json +++ /dev/null @@ -1,328 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "RazorComponentAppMultitarget", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [ - { - "Name": "RazorComponentAppMultitarget\\wwwroot", - "Source": "RazorComponentAppMultitarget", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\test.js.br", - "SourceId": "RazorComponentAppMultitarget", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "test.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "Server", - "RelatedAsset": "${ProjectPath}\\wwwroot\\test.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\wwwroot\\test.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\test.js.gz", - "SourceId": "RazorComponentAppMultitarget", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "test.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "Server", - "RelatedAsset": "${ProjectPath}\\wwwroot\\test.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\wwwroot\\test.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\wwwroot\\test.js", - "SourceId": "RazorComponentAppMultitarget", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "RelativePath": "test.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "Server", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\test.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "test.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\test.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "test.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\test.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "test.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\test.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "test.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\test.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "test.js", - "AssetFile": "${ProjectPath}\\wwwroot\\test.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json deleted file mode 100644 index ab40209e2da7..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json +++ /dev/null @@ -1,1390 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json deleted file mode 100644 index 3e796c825b34..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json +++ /dev/null @@ -1,26 +0,0 @@ -[ - "${OutputPath}\\wwwroot\\ComponentApp.styles.css", - "${OutputPath}\\wwwroot\\ComponentApp.styles.css.br", - "${OutputPath}\\wwwroot\\ComponentApp.styles.css.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.web.js", - "${OutputPath}\\wwwroot\\_framework\\blazor.web.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.web.js.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint}]?.styles.css", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint}]?.js" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json deleted file mode 100644 index ae1b710a0fc1..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json +++ /dev/null @@ -1,2346 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.br" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.br" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.br" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.br" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json deleted file mode 100644 index ab40209e2da7..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json +++ /dev/null @@ -1,1390 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json deleted file mode 100644 index 577f4a28f303..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json +++ /dev/null @@ -1,17 +0,0 @@ -[ - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint}]?.styles.css", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint}]?.js" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json deleted file mode 100644 index ae1b710a0fc1..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json +++ /dev/null @@ -1,2346 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.br" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.br" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.br" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.br" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json deleted file mode 100644 index cbd329b4f4ad..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Build.staticwebassets.json +++ /dev/null @@ -1,1390 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json deleted file mode 100644 index 6cfe493a3f50..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.files.json +++ /dev/null @@ -1,17 +0,0 @@ -[ - "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint}]?.styles.css", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint}]?.js" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json deleted file mode 100644 index ec64a6222e0d..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets.Publish.staticwebassets.json +++ /dev/null @@ -1,2346 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.server.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.br" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.br" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.br" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.br" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\${Rid}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.files.json deleted file mode 100644 index cde2de387263..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.files.json +++ /dev/null @@ -1,41 +0,0 @@ -[ - "${OutputPath}\\wwwroot\\ComponentApp.__fingerprint__.lib.module.js", - "${OutputPath}\\wwwroot\\ComponentApp.__fingerprint__.lib.module.js.br", - "${OutputPath}\\wwwroot\\ComponentApp.__fingerprint__.lib.module.js.gz", - "${OutputPath}\\wwwroot\\ComponentApp.modules.json", - "${OutputPath}\\wwwroot\\ComponentApp.modules.json.br", - "${OutputPath}\\wwwroot\\ComponentApp.modules.json.gz", - "${OutputPath}\\wwwroot\\ComponentApp.styles.css", - "${OutputPath}\\wwwroot\\ComponentApp.styles.css.br", - "${OutputPath}\\wwwroot\\ComponentApp.styles.css.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.web.js", - "${OutputPath}\\wwwroot\\_framework\\blazor.web.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.web.js.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint}]!.lib.module.js", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint}]?.modules.json", - "${OutputPath}\\wwwroot\\ComponentApp#[.{fingerprint}]?.styles.css", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.server.js.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "${OutputPath}\\wwwroot\\_framework\\blazor.web#[.{fingerprint}]?.js" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.staticwebassets.json deleted file mode 100644 index 7d219d08beef..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_PublishesJsModuleBundleBundleToTheRightLocation.Publish.staticwebassets.json +++ /dev/null @@ -1,3568 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [ - { - "Name": "ComponentApp\\wwwroot", - "Source": "ComponentApp", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\wwwroot\\ComponentApp.lib.module.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\wwwroot\\ComponentApp.lib.module.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\wwwroot\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", - "AssetKind": "Publish", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", - "AssetKind": "Publish", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.modules.json", - "AssetKind": "Publish", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "JSModule", - "AssetTraitValue": "JSModuleManifest", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\wwwroot\\ComponentApp.lib.module.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\wwwroot\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.lib.module.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "JSModule", - "AssetTraitValue": "JSLibraryModule", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\ComponentApp.lib.module.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.lib.module.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.lib.module.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.lib.module.js.gz" - } - ] - }, - { - "Route": "ComponentApp.lib.module.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.lib.module.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.lib.module.js" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.br" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.lib.module.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.lib.module.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.lib.module.js.br" - } - ] - }, - { - "Route": "ComponentApp.lib.module.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.lib.module.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]!.lib.module.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.lib.module.js" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "ComponentApp.modules.json.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.modules.json.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.modules.json.br" - } - ] - }, - { - "Route": "ComponentApp.modules.json", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.modules.json", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.modules.json" - } - ] - }, - { - "Route": "ComponentApp.modules.json.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.modules.json.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.modules.json.gz" - } - ] - }, - { - "Route": "ComponentApp.modules.json", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.modules.json", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.modules.json.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.modules.json" - } - ] - }, - { - "Route": "ComponentApp.styles.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.br" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.br" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.server.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.br", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.br" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\publish\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.modules.json", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.modules.json", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\jsmodules\\jsmodules.publish.manifest.json", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "application/json" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.modules.json" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.lib.module.js", - "AssetFile": "${ProjectPath}\\wwwroot\\ComponentApp.lib.module.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.lib.module.js", - "AssetFile": "${ProjectPath}\\wwwroot\\ComponentApp.lib.module.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "dependency-group", - "Value": "js-initializer" - }, - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.lib.module.js" - }, - { - "Name": "script-type", - "Value": "module" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json deleted file mode 100644 index 83e2c08cf9d4..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Build.staticwebassets.json +++ /dev/null @@ -1,392 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "", - "GetPublishAssetsTargets": "GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.files.json deleted file mode 100644 index 4c44b3531007..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.files.json +++ /dev/null @@ -1,14 +0,0 @@ -[ - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js.gz" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.staticwebassets.json deleted file mode 100644 index 89ddc0d9d3d2..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Publish_WithExternalProjectReference_UpdatesAssets.Publish.staticwebassets.json +++ /dev/null @@ -1,638 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 2, - "Source": "", - "GetPublishAssetsTargets": "GetCurrentProjectPublishStaticWebAssetItems", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectBuildStaticWebAssetItems", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.br", - "AssetKind": "Publish", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "PreserveNewest", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.br", - "AssetKind": "Publish", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "PreserveNewest", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "Publish", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "PreserveNewest", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\AppWithP2PReference\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "Publish", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "PreserveNewest", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.v4.js.br", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\AppWithP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json deleted file mode 100644 index ab40209e2da7..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder.Build.staticwebassets.json +++ /dev/null @@ -1,1390 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.files.json deleted file mode 100644 index ff5e94bf0263..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.files.json +++ /dev/null @@ -1,6 +0,0 @@ -[ - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.staticwebassets.json deleted file mode 100644 index ab40209e2da7..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder_Rebuild.Build.staticwebassets.json +++ /dev/null @@ -1,1390 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "ComponentApp", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [], - "DiscoveryPatterns": [], - "Assets": [ - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.server.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "SourceId": "ComponentApp", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "/", - "RelativePath": "ComponentApp#[.{fingerprint}]!.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.server.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.server.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "SourceId": "ComponentApp", - "SourceType": "Discovered", - "ContentRoot": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\", - "BasePath": "/", - "RelativePath": "_framework/blazor.web#[.{fingerprint}]?.js", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\build\\..\\_framework\\blazor.web.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "ComponentApp.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css.gz" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]!.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "ComponentApp.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css.gz" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\ComponentApp#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.server.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js.gz", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js.gz" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\compressed\\_framework\\blazor.web#[.{fingerprint=__fingerprint__}]?.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - }, - { - "Route": "ComponentApp.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\ComponentApp.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.styles.css" - } - ] - }, - { - "Route": "ComponentApp.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "ComponentApp.__fingerprint__.bundle.scp.css", - "AssetFile": "${ProjectPath}\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ComponentApp.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "ComponentApp.bundle.scp.css" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.server.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.server.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.server.js" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_framework/blazor.web.js", - "AssetFile": "${RestorePath}\\microsoft.aspnetcore.app.internal.assets\\${PackageVersion}\\_framework\\blazor.web.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_framework/blazor.web.js" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.files.json deleted file mode 100644 index b800715727ea..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.files.json +++ /dev/null @@ -1,4 +0,0 @@ -[ - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.staticwebassets.json deleted file mode 100644 index 48cde49acf3b..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_IsBackwardsCompatible_WithPreviousVersions.Build.staticwebassets.json +++ /dev/null @@ -1,2104 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Build", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 1, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 1, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.files.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.files.json deleted file mode 100644 index d7cf3c435b7b..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.files.json +++ /dev/null @@ -1,69 +0,0 @@ -[ - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference.styles.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\css\\site.css", - "${OutputPath}\\wwwroot\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\js\\project-transitive-dep.v4.js", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "${OutputPath}\\wwwroot\\AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "${OutputPath}\\wwwroot\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "${OutputPath}\\wwwroot\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz" -] \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.staticwebassets.json b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.staticwebassets.json deleted file mode 100644 index ea780cdd6a17..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsBaselines/ScopedCss_PublishIsBackwardsCompatible_WithPreviousVersions.Publish.staticwebassets.json +++ /dev/null @@ -1,3458 +0,0 @@ -{ - "Version": 1, - "Hash": "__hash__", - "Source": "AppWithPackageAndP2PReference", - "BasePath": "/", - "Mode": "Root", - "ManifestType": "Publish", - "ReferencedProjectsConfiguration": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\AnotherClassLib.csproj", - "Version": 1, - "Source": "AnotherClassLib", - "GetPublishAssetsTargets": "", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\ClassLibrary.csproj", - "Version": 1, - "Source": "ClassLibrary", - "GetPublishAssetsTargets": "", - "AdditionalPublishProperties": "", - "AdditionalPublishPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained", - "GetBuildAssetsTargets": "GetCurrentProjectStaticWebAssetsV2", - "AdditionalBuildProperties": "", - "AdditionalBuildPropertiesToRemove": "WebPublishProfileFile;TargetFramework;RuntimeIdentifier;SelfContained" - } - ], - "DiscoveryPatterns": [ - { - "Name": "AnotherClassLib\\wwwroot", - "Source": "AnotherClassLib", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "Pattern": "**" - }, - { - "Name": "ClassLibrary\\wwwroot", - "Source": "ClassLibrary", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "Pattern": "**" - } - ], - "Assets": [ - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AnotherClassLib\\wwwroot\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.gz", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "gzip", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\_content\\AnotherClassLib\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "SourceId": "AnotherClassLib", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/AnotherClassLib", - "RelativePath": "js/project-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js.br", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Alternative", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "AssetTraitName": "Content-Encoding", - "AssetTraitValue": "br", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "SourceId": "AppWithPackageAndP2PReference", - "SourceType": "Computed", - "ContentRoot": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\", - "BasePath": "/", - "RelativePath": "AppWithPackageAndP2PReference#[.{fingerprint}]?.styles.css", - "AssetKind": "All", - "AssetMode": "CurrentProject", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ApplicationBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "ClassLibrary.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "SourceId": "ClassLibrary", - "SourceType": "Project", - "ContentRoot": "${ProjectPath}\\ClassLibrary\\wwwroot\\", - "BasePath": "_content/ClassLibrary", - "RelativePath": "js/project-transitive-dep.v4.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetKind": "All", - "AssetMode": "Reference", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "ScopedCss", - "AssetTraitValue": "ProjectBundle", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "css/site.css", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "SourceId": "RazorPackageLibraryDirectDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryDirectDependency", - "RelativePath": "js/pkg-direct-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - }, - { - "Identity": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "SourceId": "RazorPackageLibraryTransitiveDependency", - "SourceType": "Package", - "ContentRoot": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\", - "BasePath": "_content/RazorPackageLibraryTransitiveDependency", - "RelativePath": "js/pkg-transitive-dep.js", - "AssetKind": "All", - "AssetMode": "All", - "AssetRole": "Primary", - "AssetMergeBehavior": "", - "AssetMergeSource": "", - "RelatedAsset": "", - "AssetTraitName": "", - "AssetTraitValue": "", - "Fingerprint": "__fingerprint__", - "Integrity": "__integrity__", - "CopyToOutputDirectory": "Never", - "CopyToPublishDirectory": "PreserveNewest", - "OriginalItemSpec": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "FileLength": -1, - "LastWriteTime": "0001-01-01T00:00:00+00:00" - } - ], - "Endpoints": [ - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AnotherClassLib\\wwwroot\\js\\project-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.gz" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\AnotherClassLib\\js\\project-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.gz", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.gz", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "gzip", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "gzip" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css.br" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\AppWithPackageAndP2PReference#[.{fingerprint=__fingerprint__}]?.styles.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/AnotherClassLib/js/project-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\AnotherClassLib\\js\\project-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\ClassLibrary.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\ClassLibrary\\js\\project-transitive-dep.v4.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\css\\site.css.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryDirectDependency\\js\\pkg-direct-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js.br", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\compressed\\publish\\_content\\RazorPackageLibraryTransitiveDependency\\js\\pkg-transitive-dep.js.br", - "Selectors": [ - { - "Name": "Content-Encoding", - "Value": "br", - "Quality": "__quality__" - } - ], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Encoding", - "Value": "br" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Vary", - "Value": "Content-Encoding" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "AppWithPackageAndP2PReference.__fingerprint__.styles.css", - "AssetFile": "${ProjectPath}\\AppWithPackageAndP2PReference\\obj\\Debug\\${Tfm}\\scopedcss\\bundle\\AppWithPackageAndP2PReference.styles.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - }, - { - "Name": "Link", - "Value": "\u003C_content/ClassLibrary/ClassLibrary.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022, \u003C_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css\u003E; rel=\u0022preload\u0022; as=\u0022style\u0022" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "AppWithPackageAndP2PReference.styles.css" - } - ] - }, - { - "Route": "_content/ClassLibrary/ClassLibrary.bundle.scp.css", - "AssetFile": "${ProjectPath}\\ClassLibrary\\obj\\Debug\\${Tfm}\\scopedcss\\projectbundle\\ClassLibrary.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/ClassLibrary/js/project-transitive-dep.v4.js", - "AssetFile": "${ProjectPath}\\ClassLibrary\\wwwroot\\js\\project-transitive-dep.v4.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\RazorPackageLibraryDirectDependency.__fingerprint__.bundle.scp.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "max-age=31536000, immutable" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "fingerprint", - "Value": "__fingerprint__" - }, - { - "Name": "integrity", - "Value": "__integrity__" - }, - { - "Name": "label", - "Value": "_content/RazorPackageLibraryDirectDependency/RazorPackageLibraryDirectDependency.bundle.scp.css" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/css/site.css", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\css\\site.css", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/css" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryDirectDependency/js/pkg-direct-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarydirectdependency\\${PackageVersion}\\staticwebassets\\js\\pkg-direct-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - }, - { - "Route": "_content/RazorPackageLibraryTransitiveDependency/js/pkg-transitive-dep.js", - "AssetFile": "${RestorePath}\\razorpackagelibrarytransitivedependency\\${PackageVersion}\\staticwebassets\\js\\pkg-transitive-dep.js", - "Selectors": [], - "ResponseHeaders": [ - { - "Name": "Accept-Ranges", - "Value": "bytes" - }, - { - "Name": "Cache-Control", - "Value": "no-cache" - }, - { - "Name": "Content-Length", - "Value": "__content-length__" - }, - { - "Name": "Content-Type", - "Value": "text/javascript" - }, - { - "Name": "ETag", - "Value": "__etag__" - }, - { - "Name": "Last-Modified", - "Value": "__last-modified__" - } - ], - "EndpointProperties": [ - { - "Name": "integrity", - "Value": "__integrity__" - } - ] - } - ] -} \ No newline at end of file diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsCompressionIntegrationTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsCompressionIntegrationTest.cs deleted file mode 100644 index 1f875688f57a..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsCompressionIntegrationTest.cs +++ /dev/null @@ -1,219 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using System.IO.Compression; -using System.Net.Http.Headers; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - public class StaticWebAssetsCompressionIntegrationTest : AspNetSdkBaselineTest - { - public StaticWebAssetsCompressionIntegrationTest(ITestOutputHelper log) : base(log, GenerateBaselines) { } - - [Fact] - public void Build_Detects_PrecompressedAssets() - { - var expectedManifest = LoadBuildManifest(); - var testAsset = "RazorAppWithP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - var file = Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js"); - var gzipFile = Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js.gz"); - var brotliFile = Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js.br"); - - // Compress file into gzip and brotli - using (var gzipStream = new GZipStream(File.Create(gzipFile), CompressionLevel.NoCompression)) - { - using var stream = File.OpenRead(file); - stream.CopyTo(gzipStream); - } - - using (var brotliStream = new BrotliStream(File.Create(brotliFile), CompressionLevel.NoCompression)) - { - using var stream = File.OpenRead(file); - stream.CopyTo(brotliStream); - } - - var build = CreateBuildCommand(ProjectDirectory, "AppWithP2PReference"); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, expectedManifest); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "AppWithP2PReference.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().Exist(); - - var manifest1 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); - AssertManifest(manifest1, expectedManifest); - AssertBuildAssets(manifest1, outputPath, intermediateOutputPath); - - var manifest2 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); - - var standardEndpoints = manifest2.Endpoints.Where(e => string.Equals(e.AssetFile, file, StringComparison.Ordinal)).ToArray(); - var gzipEndpoints = manifest2.Endpoints.Where(e => string.Equals(e.AssetFile, gzipFile, StringComparison.Ordinal)).ToArray(); - var brotliEndpoints = manifest2.Endpoints.Where(e => string.Equals(e.AssetFile, brotliFile, StringComparison.Ordinal)).ToArray(); - - var gzipAsset = manifest2.Assets.Single(a => string.Equals(a.Identity, gzipFile, StringComparison.Ordinal)); - var brotliAsset = manifest2.Assets.Single(a => string.Equals(a.Identity, brotliFile, StringComparison.Ordinal)); - - standardEndpoints.Should().HaveCount(1); - gzipEndpoints.Should().HaveCount(2); - brotliEndpoints.Should().HaveCount(2); - - var expectedWeakEndpointEtag = new EntityTagHeaderValue( - EntityTagHeaderValue.Parse(standardEndpoints.First().ResponseHeaders.Single(h => h.Name == "ETag").Value).Tag, - isWeak: true); - - foreach (var endpoint in gzipEndpoints) - { - endpoint.ResponseHeaders.Where(e => e.Name == "Content-Encoding").Select(e => e.Value).Single().Should().Be("gzip"); - - var etags = endpoint.ResponseHeaders.Where(e => e.Name == "ETag").Select(e => EntityTagHeaderValue.Parse(e.Value)); - etags.Where(e=> !e.IsWeak).Select(e => e.Tag).Single().Should().BeEquivalentTo($"\"{gzipAsset.Integrity}\""); - if (endpoint.Route.EndsWith(".gz")) - { - continue; - } - etags.Should().Contain(expectedWeakEndpointEtag); - } - - foreach (var endpoint in brotliEndpoints) - { - endpoint.ResponseHeaders.Where(e => e.Name == "Content-Encoding").Select(e => e.Value).Single().Should().Be("br"); - - var etags = endpoint.ResponseHeaders.Where(e => e.Name == "ETag").Select(e => EntityTagHeaderValue.Parse(e.Value)); - etags.Where(e => !e.IsWeak).Select(e => e.Tag).Single().Should().BeEquivalentTo($"\"{brotliAsset.Integrity}\""); - if (endpoint.Route.EndsWith(".br")) - { - continue; - } - etags.Should().Contain(expectedWeakEndpointEtag); - } - } - - [Fact] - public void CanEnable_CompressionOnAllAssets() - { - var expectedManifest = LoadBuildManifest(); - var testAsset = "RazorAppWithP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset) - .WithProjectChanges((project, xml) => - { - if (project.Contains("ClassLibrary")) - { - xml.Descendants("PropertyGroup") - .First().Add(new XElement("StaticWebAssetBuildCompressAllAssets", "true")); - } - }); - - var build = CreateBuildCommand(ProjectDirectory, "AppWithP2PReference"); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, expectedManifest); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "AppWithP2PReference.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().Exist(); - } - - [Fact] - public void PublishWorks_With_PrecompressedAssets() - { - var expectedManifest = LoadBuildManifest(); - var testAsset = "RazorAppWithP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - var file = Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js"); - var gzipFile = Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js.gz"); - var brotliFile = Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js.br"); - - // Compress file into gzip and brotli - using (var gzipStream = new GZipStream(File.Create(gzipFile), CompressionLevel.NoCompression)) - { - using var stream = File.OpenRead(file); - stream.CopyTo(gzipStream); - } - - using (var brotliStream = new BrotliStream(File.Create(brotliFile), CompressionLevel.NoCompression)) - { - using var stream = File.OpenRead(file); - stream.CopyTo(brotliStream); - } - - var build = CreatePublishCommand(ProjectDirectory, "AppWithP2PReference"); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, expectedManifest); - - - var manifest1 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); - AssertManifest(manifest1, expectedManifest); - AssertBuildAssets(manifest1, outputPath, intermediateOutputPath); - - var manifest2 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"))); - - var standardEndpoints = manifest2.Endpoints.Where(e => string.Equals(e.AssetFile, file, StringComparison.Ordinal)).ToArray(); - var gzipEndpoints = manifest2.Endpoints.Where(e => string.Equals(e.AssetFile, gzipFile, StringComparison.Ordinal)).ToArray(); - var brotliEndpoints = manifest2.Endpoints.Where(e => string.Equals(e.AssetFile, brotliFile, StringComparison.Ordinal)).ToArray(); - - var gzipAsset = manifest2.Assets.Single(a => string.Equals(a.Identity, gzipFile, StringComparison.Ordinal)); - var brotliAsset = manifest2.Assets.Single(a => string.Equals(a.Identity, brotliFile, StringComparison.Ordinal)); - - standardEndpoints.Should().HaveCount(1); - gzipEndpoints.Should().HaveCount(2); - brotliEndpoints.Should().HaveCount(2); - - var expectedWeakEndpointEtag = new EntityTagHeaderValue( - EntityTagHeaderValue.Parse(standardEndpoints.First().ResponseHeaders.Single(h => h.Name == "ETag").Value).Tag, - isWeak: true); - - foreach (var endpoint in gzipEndpoints) - { - endpoint.ResponseHeaders.Where(e => e.Name == "Content-Encoding").Select(e => e.Value).Single().Should().Be("gzip"); - - var etags = endpoint.ResponseHeaders.Where(e => e.Name == "ETag").Select(e => EntityTagHeaderValue.Parse(e.Value)); - etags.Where(e => !e.IsWeak).Select(e => e.Tag).Single().Should().BeEquivalentTo($"\"{gzipAsset.Integrity}\""); - if (endpoint.Route.EndsWith(".gz")) - { - continue; - } - etags.Should().Contain(expectedWeakEndpointEtag); - } - - foreach (var endpoint in brotliEndpoints) - { - endpoint.ResponseHeaders.Where(e => e.Name == "Content-Encoding").Select(e => e.Value).Single().Should().Be("br"); - - var etags = endpoint.ResponseHeaders.Where(e => e.Name == "ETag").Select(e => EntityTagHeaderValue.Parse(e.Value)); - etags.Where(e => !e.IsWeak).Select(e => e.Tag).Single().Should().BeEquivalentTo($"\"{brotliAsset.Integrity}\""); - if (endpoint.Route.EndsWith(".br")) - { - continue; - } - etags.Should().Contain(expectedWeakEndpointEtag); - } - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsCrossTargetingTests.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsCrossTargetingTests.cs deleted file mode 100644 index ca8c27fb68a4..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsCrossTargetingTests.cs +++ /dev/null @@ -1,109 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -// 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.AspNetCore.StaticWebAssets.Tasks; - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - public class StaticWebAssetsCrossTargetingTests(ITestOutputHelper log) - : IsolatedNuGetPackageFolderAspNetSdkBaselineTest(log, nameof(StaticWebAssetsCrossTargetingTests)) - { - // Build Standalone project - [RequiresMSBuildVersionFact("17.12", Reason = "Needs System.Text.Json 8.0.5")] - public void Build_CrosstargetingTests_CanIncludeBrowserAssets() - { - var expectedManifest = LoadBuildManifest(); - var testAsset = "RazorComponentAppMultitarget"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - ProjectDirectory.WithProjectChanges(d => - { - d.Root.Element("PropertyGroup").Add( - XElement.Parse("""/""")); - - d.Root.LastNode.AddBeforeSelf( - XElement.Parse(""" - - - browser - - - """)); - }); - - var wwwroot = Directory.CreateDirectory(Path.Combine(ProjectDirectory.TestRoot, "wwwroot")); - File.WriteAllText(Path.Combine(wwwroot.FullName, "test.js"), "console.log('hello')"); - - var build = CreateBuildCommand(ProjectDirectory); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, expectedManifest); - AssertBuildAssets(manifest, outputPath, intermediateOutputPath); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "RazorComponentAppMultitarget.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().Exist(); - } - - [Fact] - public void Publish_CrosstargetingTests_CanIncludeBrowserAssets() - { - var testAsset = "RazorComponentAppMultitarget"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - ProjectDirectory.WithProjectChanges(d => - { - d.Root.Element("PropertyGroup").Add( - XElement.Parse("""/""")); - - d.Root.LastNode.AddBeforeSelf( - XElement.Parse(""" - - - browser - - - """)); - }); - - var wwwroot = Directory.CreateDirectory(Path.Combine(ProjectDirectory.TestRoot, "wwwroot")); - File.WriteAllText(Path.Combine(wwwroot.FullName, "test.js"), "console.log('hello')"); - - var restore = CreateRestoreCommand(ProjectDirectory); - ExecuteCommand(restore).Should().Pass(); - - var publish = CreatePublishCommand(ProjectDirectory); - ExecuteCommandWithoutRestore(publish, "/bl", "/p:TargetFramework=net10.0").Should().Pass(); - - var publishPath = publish.GetOutputDirectory(DefaultTfm).ToString(); - var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, LoadPublishManifest()); - - AssertPublishAssets( - manifest, - publishPath, - intermediateOutputPath); - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsDesignTimeTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsDesignTimeTest.cs deleted file mode 100644 index 767befe02c13..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsDesignTimeTest.cs +++ /dev/null @@ -1,163 +0,0 @@ -// 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 System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace Microsoft.NET.Sdk.Razor.Tests; - -public class StaticWebAssetsDesignTimeTest(ITestOutputHelper log) : AspNetSdkBaselineTest(log) -{ -#if DEBUG - public const string Configuration = "Debug"; -#else - public const string Configuration = "Release"; -#endif - - [Fact] - public void CollectUpToDateCheckInputOutputsDesignTime_ReportsAddedFiles() - { - // Arrange - var testAsset = "RazorAppWithP2PReference"; - ProjectDirectory = AddIntrospection(CreateAspNetSdkTestAsset(testAsset)); - - var build = CreateBuildCommand(ProjectDirectory, "ClassLibrary"); - - build.Execute("/p:DesignTimeBuild=true", "/p:BuildingInsideVisualStudio=true", "/bl:build.binlog").Should().Pass(); - - File.WriteAllText(Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "file.js"), "New File"); - - var msbuild = CreateMSBuildCommand( - ProjectDirectory, - "ClassLibrary", - "ResolveStaticWebAssetsConfiguration;ResolveProjectStaticWebAssets;CollectStaticWebAssetInputsDesignTime;CollectStaticWebAssetOutputsDesignTime"); - - msbuild.ExecuteWithoutRestore("/p:DesignTimeBuild=true", "/p:BuildingInsideVisualStudio=true", "/bl:design.binlog").Should().Pass(); - - // Check the contents of the input and output files - var inputFilePath = Path.Combine(build.GetIntermediateDirectory().FullName, "StaticWebAssetsUTDCInput.txt"); - new FileInfo(inputFilePath).Should().Exist(); - var inputFiles = File.ReadAllLines(inputFilePath); - inputFiles.Should().HaveCount(3); - inputFiles.Should().Contain(Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "file.js")); - inputFiles.Should().Contain(Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js")); - inputFiles.Should().Contain(Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.v4.js")); - - var outputFilePath = Path.Combine(build.GetIntermediateDirectory().FullName, "StaticWebAssetsUTDCOutput.txt"); - new FileInfo(outputFilePath).Should().Exist(); - var outputFiles = File.ReadAllLines(outputFilePath); - outputFiles.Should().ContainSingle(); - Path.GetFileName(outputFiles[0]).Should().Be("staticwebassets.build.json"); - } - - [Fact] - public void CollectUpToDateCheckInputOutputsDesignTime_ReportsRemovedFiles_Once() - { - // Arrange - var testAsset = "RazorAppWithP2PReference"; - ProjectDirectory = AddIntrospection(CreateAspNetSdkTestAsset(testAsset)); - - var build = CreateBuildCommand(ProjectDirectory, "ClassLibrary"); - - build.Execute("/p:DesignTimeBuild=true", "/p:BuildingInsideVisualStudio=true", "/bl:build.binlog").Should().Pass(); - - File.Delete(Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.js")); - - var msbuild = CreateMSBuildCommand( - ProjectDirectory, - "ClassLibrary", - "ResolveStaticWebAssetsConfiguration;ResolveProjectStaticWebAssets;CollectStaticWebAssetInputsDesignTime;CollectStaticWebAssetOutputsDesignTime"); - - msbuild.ExecuteWithoutRestore("/p:DesignTimeBuild=true", "/p:BuildingInsideVisualStudio=true", "/bl:design.binlog").Should().Pass(); - - // Check the contents of the input and output files - var inputFilePath = Path.Combine(build.GetIntermediateDirectory().FullName, "StaticWebAssetsUTDCInput.txt"); - new FileInfo(inputFilePath).Should().Exist(); - var inputFiles = File.ReadAllLines(inputFilePath); - inputFiles.Should().HaveCount(2); - inputFiles.Should().Contain(Path.Combine(build.GetIntermediateDirectory().FullName, "staticwebassets.removed.txt")); - inputFiles.Should().Contain(Path.Combine(ProjectDirectory.Path, "ClassLibrary", "wwwroot", "js", "project-transitive-dep.v4.js")); - - var outputFilePath = Path.Combine(build.GetIntermediateDirectory().FullName, "StaticWebAssetsUTDCOutput.txt"); - new FileInfo(outputFilePath).Should().Exist(); - var outputFiles = File.ReadAllLines(outputFilePath); - outputFiles.Should().ContainSingle(); - Path.GetFileName(outputFiles[0]).Should().Be("staticwebassets.build.json"); - } - - [Fact] - public void CollectUpToDateCheckInputOutputsDesignTime_IncludesReferencedProjectsManifests() - { - // Arrange - var testAsset = "RazorAppWithP2PReference"; - ProjectDirectory = AddIntrospection(CreateAspNetSdkTestAsset(testAsset)); - - var build = CreateBuildCommand(ProjectDirectory, "AppWithP2PReference"); - - build.Execute("/bl:build.binlog").Should().Pass(); - build.Execute("/p:DesignTimeBuild=true", "/p:BuildingInsideVisualStudio=true", "/bl:build.binlog").Should().Pass(); - - var msbuild = CreateMSBuildCommand( - ProjectDirectory, - "AppWithP2PReference", - "ResolveStaticWebAssetsConfiguration;ResolveProjectStaticWebAssets;CollectStaticWebAssetInputsDesignTime;CollectStaticWebAssetOutputsDesignTime"); - - msbuild.ExecuteWithoutRestore("/p:DesignTimeBuild=true", "/p:BuildingInsideVisualStudio=true", "/bl:design.binlog").Should().Pass(); - - // Check the contents of the input and output files - var inputFilePath = Path.Combine(build.GetIntermediateDirectory().FullName, "StaticWebAssetsUTDCInput.txt"); - new FileInfo(inputFilePath).Should().Exist(); - var inputFiles = File.ReadAllLines(inputFilePath); - inputFiles.Should().HaveCount(1); - inputFiles.Should().Contain(Path.Combine(ProjectDirectory.Path, "ClassLibrary", "obj", "Debug", DefaultTfm, "staticwebassets.build.json")); - - var outputFilePath = Path.Combine(build.GetIntermediateDirectory().FullName, "StaticWebAssetsUTDCOutput.txt"); - new FileInfo(outputFilePath).Should().Exist(); - var outputFiles = File.ReadAllLines(outputFilePath); - outputFiles.Should().ContainSingle(); - Path.GetFileName(outputFiles[0]).Should().Be("staticwebassets.build.json"); - } - - private static MSBuildCommand CreateMSBuildCommand(TestAsset testAsset, string relativeProjectPath, string targets) - { - return (MSBuildCommand)new MSBuildCommand(testAsset.Log, targets, testAsset.TestRoot, relativeProjectPath) - .WithWorkingDirectory(testAsset.TestRoot); - } - - private static TestAsset AddIntrospection(TestAsset testAsset) - { - return testAsset - .WithProjectChanges((name, project) => - { - project.Document.Root.LastNode.AddAfterSelf( - XElement.Parse(""" - - - <_StaticWebAssetsUTDCInput Include="@(UpToDateCheckInput)" Condition="'%(UpToDateCheckInput.Set)' == 'StaticWebAssets'" /> - <_StaticWebAssetsUTDCOutput Include="@(UpToDateCheckOutput)" Condition="'%(UpToDateCheckOutput.Set)' == 'StaticWebAssets'" /> - - - - - - - """ - )); - }); - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsFingerprintingTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsFingerprintingTest.cs deleted file mode 100644 index 0cc7dbb91da4..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsFingerprintingTest.cs +++ /dev/null @@ -1,206 +0,0 @@ -// 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.AspNetCore.StaticWebAssets.Tasks; -using System.Text.Json; -using System.IO.Compression; - -namespace Microsoft.NET.Sdk.Razor.Tests; - -public class StaticWebAssetsContentFingerprintingIntegrationTest(ITestOutputHelper log) : AspNetSdkBaselineTest(log) -{ - [Fact] - public void Build_FingerprintsContent_WhenEnabled() - { - var expectedManifest = LoadBuildManifest(); - var testAsset = "RazorComponentApp"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset) - .WithProjectChanges(p => { - var fingerprintContent = p.Descendants() - .SingleOrDefault(e => e.Name.LocalName == "StaticWebAssetsFingerprintContent"); - fingerprintContent.Value = "true"; - }); - - Directory.CreateDirectory(Path.Combine(ProjectDirectory.Path, "wwwroot", "css")); - File.WriteAllText(Path.Combine(ProjectDirectory.Path, "wwwroot", "css", "fingerprint-site.css"), "body { color: red; }"); - - var build = CreateBuildCommand(ProjectDirectory); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, expectedManifest); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().Exist(); - - var manifest1 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); - AssertManifest(manifest1, expectedManifest); - AssertBuildAssets(manifest1, outputPath, intermediateOutputPath); - } - - public static TheoryData OverrideHtmlAssetPlaceholdersData => new TheoryData - { - { "VanillaWasm", "main.js", "main#[.{fingerprint}].js", true, true }, - { "VanillaWasm", "main.js", null, false, false }, - { "BlazorWasmMinimal", "_framework/blazor.webassembly.js", "_framework/blazor.webassembly#[.{fingerprint}].js", false, true } - }; - - [Theory] - [MemberData(nameof(OverrideHtmlAssetPlaceholdersData))] - public void Build_OverrideHtmlAssetPlaceholders(string testAsset, string scriptPath, string scriptPathWithFingerprintPattern, bool fingerprintUserJavascriptAssets, bool expectFingerprintOnScript) - { - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset, identifier: $"{testAsset}_{fingerprintUserJavascriptAssets}_{expectFingerprintOnScript}"); - ReplaceStringInIndexHtml(ProjectDirectory, scriptPath, scriptPathWithFingerprintPattern); - FingerprintUserJavascriptAssets(fingerprintUserJavascriptAssets); - - var build = CreateBuildCommand(ProjectDirectory); - ExecuteCommand(build, "-p:OverrideHtmlAssetPlaceholders=true", $"-p:FingerprintUserJavascriptAssets={fingerprintUserJavascriptAssets.ToString().ToLower()}").Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var indexHtmlPath = Directory.EnumerateFiles(Path.Combine(intermediateOutputPath, "staticwebassets", "htmlassetplaceholders", "build"), "*.html").Single(); - var endpointsManifestPath = Path.Combine(intermediateOutputPath, $"staticwebassets.build.endpoints.json"); - - AssertImportMapInHtml(indexHtmlPath, endpointsManifestPath, scriptPath, expectFingerprintOnScript: expectFingerprintOnScript, expectPreloadElement: testAsset == "VanillaWasm"); - } - - [Theory] - [MemberData(nameof(OverrideHtmlAssetPlaceholdersData))] - public void Publish_OverrideHtmlAssetPlaceholders(string testAsset, string scriptPath, string scriptPathWithFingerprintPattern, bool fingerprintUserJavascriptAssets, bool expectFingerprintOnScript) - { - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset, identifier: $"{testAsset}_{fingerprintUserJavascriptAssets}_{expectFingerprintOnScript}"); - ReplaceStringInIndexHtml(ProjectDirectory, scriptPath, scriptPathWithFingerprintPattern); - FingerprintUserJavascriptAssets(fingerprintUserJavascriptAssets); - - var projectName = Path.GetFileNameWithoutExtension(Directory.EnumerateFiles(ProjectDirectory.TestRoot, "*.csproj").Single()); - - var publish = CreatePublishCommand(ProjectDirectory); - ExecuteCommand(publish, "-p:OverrideHtmlAssetPlaceholders=true", $"-p:FingerprintUserJavascriptAssets={fingerprintUserJavascriptAssets.ToString().ToLower()}").Should().Pass(); - - var outputPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - var indexHtmlOutputPath = Path.Combine(outputPath, "wwwroot", "index.html"); - var endpointsManifestPath = Path.Combine(outputPath, $"{projectName}.staticwebassets.endpoints.json"); - - AssertImportMapInHtml(indexHtmlOutputPath, endpointsManifestPath, scriptPath, expectFingerprintOnScript: expectFingerprintOnScript, expectPreloadElement: testAsset == "VanillaWasm", assertHtmlCompressed: true); - } - - private void FingerprintUserJavascriptAssets(bool fingerprintUserJavascriptAssets) - { - if (fingerprintUserJavascriptAssets) - { - ProjectDirectory.WithProjectChanges(p => - { - if (p.Root != null) - { - var itemGroup = new XElement("ItemGroup"); - var pattern = new XElement("StaticWebAssetFingerprintPattern"); - pattern.SetAttributeValue("Include", "Js"); - pattern.SetAttributeValue("Pattern", "*.js"); - pattern.SetAttributeValue("Expression", "#[.{fingerprint}]!"); - itemGroup.Add(pattern); - p.Root.Add(itemGroup); - } - }); - } - } - - private void ReplaceStringInIndexHtml(TestAsset testAsset, string sourceValue, string targetValue) - { - if (targetValue != null) - { - var indexHtmlPath = Path.Combine(testAsset.TestRoot, "wwwroot", "index.html"); - var indexHtmlContent = File.ReadAllText(indexHtmlPath); - var newIndexHtmlContent = indexHtmlContent.Replace(sourceValue, targetValue); - if (indexHtmlContent == newIndexHtmlContent) - throw new Exception($"String replacement '{sourceValue}' for '{targetValue}' didn't produce any change in '{indexHtmlPath}'"); - - File.WriteAllText(indexHtmlPath, newIndexHtmlContent); - } - } - - private void AssertImportMapInHtml(string indexHtmlPath, string endpointsManifestPath, string scriptPath, bool expectFingerprintOnScript = true, bool expectPreloadElement = false, bool assertHtmlCompressed = false) - { - - var endpoints = JsonSerializer.Deserialize(File.ReadAllText(endpointsManifestPath)); - var fingerprintedScriptPath = GetFingerprintedPath(scriptPath); - - var indexHtmlContent = File.ReadAllText(indexHtmlPath); - AssertHtmlContent(indexHtmlContent); - - if (assertHtmlCompressed) - { - var indexHtmlGzipContent = DecompressGzipFile(indexHtmlPath + ".gz"); - AssertHtmlContent(indexHtmlGzipContent); - - var indexHtmlBrotliContent = DecompressBrotliFile(indexHtmlPath + ".br"); - AssertHtmlContent(indexHtmlBrotliContent); - } - - void AssertHtmlContent(string content) - { - if (expectFingerprintOnScript) - { - Assert.DoesNotContain($"src=\"{scriptPath}\"", content); - Assert.Contains($"src=\"{fingerprintedScriptPath}\"", content); - } - else - { - Assert.Contains(scriptPath, content); - - if (scriptPath != fingerprintedScriptPath) - { - Assert.DoesNotContain(fingerprintedScriptPath, content); - } - } - - Assert.Contains(GetFingerprintedPath("_framework/dotnet.js"), content); - Assert.Contains(GetFingerprintedPath("_framework/dotnet.native.js"), content); - Assert.Contains(GetFingerprintedPath("_framework/dotnet.runtime.js"), content); - - if (expectPreloadElement) - { - Assert.DoesNotContain(" endpoints.Endpoints.FirstOrDefault(e => e.Route == route && e.Selectors.Length == 0)?.AssetFile ?? throw new Exception($"Missing endpoint for file '{route}' in '{endpointsManifestPath}'"); - - string DecompressGzipFile(string path) - { - if (File.Exists(path)) - { - using var fileStream = File.OpenRead(path); - using var compressedStream = new GZipStream(fileStream, CompressionMode.Decompress); - using var reader = new StreamReader(compressedStream); - return reader.ReadToEnd(); - } - - Assert.Fail($"File '{path}' does not exist."); - return null; - } - - string DecompressBrotliFile(string path) - { - if (File.Exists(path)) - { - using var fileStream = File.OpenRead(path); - using var compressedStream = new BrotliStream(fileStream, CompressionMode.Decompress); - using var reader = new StreamReader(compressedStream); - return reader.ReadToEnd(); - } - - Assert.Fail($"File '{path}' does not exist."); - return null; - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsIntegrationTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsIntegrationTest.cs deleted file mode 100644 index 42ae80cb2d2e..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsIntegrationTest.cs +++ /dev/null @@ -1,958 +0,0 @@ -// 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 System.Reflection; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - public class StaticWebAssetsIntegrationTest : AspNetSdkBaselineTest - { - public StaticWebAssetsIntegrationTest(ITestOutputHelper log) : base(log, GenerateBaselines) { } - - // Build Standalone project - [Fact] - public void Build_GeneratesJsonManifestAndCopiesItToOutputFolder() - { - var expectedManifest = LoadBuildManifest(); - var testAsset = "RazorComponentApp"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - var build = CreateBuildCommand(ProjectDirectory); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, expectedManifest); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().Exist(); - - var manifest1 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); - AssertManifest(manifest1, expectedManifest); - AssertBuildAssets(manifest1, outputPath, intermediateOutputPath); - } - - [Fact] - public void Build_Can_DisableAssetCaching() - { - var expectedManifest = LoadBuildManifest(); - var testAsset = "RazorComponentApp"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - var build = CreateBuildCommand(ProjectDirectory); - ExecuteCommand(build, "/p:StaticWebAssetsCacheDefineStaticWebAssetsEnabled=false").Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, expectedManifest); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().Exist(); - - // The caches shouldn't exist. - // Manifest - new FileInfo(Path.Combine(intermediateOutputPath, "rpswa.dswa.cache.json")).Should().NotExist(); - // Compressed assets - new FileInfo(Path.Combine(intermediateOutputPath, "rbcswa.dswa.cache.json")).Should().NotExist(); - // Initializers - new FileInfo(Path.Combine(intermediateOutputPath, "rjimswa.dswa.cache.json")).Should().NotExist(); - // JS Modules - new FileInfo(Path.Combine(intermediateOutputPath, "rjsmcshtml.dswa.cache.json")).Should().NotExist(); - new FileInfo(Path.Combine(intermediateOutputPath, "rjsmrazor.dswa.cache.json")).Should().NotExist(); - - var manifest1 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); - AssertManifest(manifest1, expectedManifest); - AssertBuildAssets(manifest1, outputPath, intermediateOutputPath); - } - - [Fact] - public void Build_DoesNotUpdateManifest_WhenHasNotChanged() - { - var testAsset = "RazorComponentApp"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - var build = CreateBuildCommand(ProjectDirectory); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - var originalObjFile = new FileInfo(path); - originalObjFile.Should().Exist(); - var objManifestContents = File.ReadAllText(Path.Combine(intermediateOutputPath, "staticwebassets.build.json")); - AssertManifest( - StaticWebAssetsManifest.FromJsonString(objManifestContents), - LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); - var originalFile = new FileInfo(finalPath); - originalFile.Should().Exist(); - var binManifestContents = File.ReadAllText(finalPath); - - var secondBuild = CreateBuildCommand(ProjectDirectory); - secondBuild.Execute().Should().Pass(); - - var secondPath = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - var secondObjFile = new FileInfo(secondPath); - secondObjFile.Should().Exist(); - var secondObjManifest = File.ReadAllText(secondPath); - secondObjManifest.Should().Be(objManifestContents); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var secondFinalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); - var secondFinalFile = new FileInfo(secondFinalPath); - secondFinalFile.Should().Exist(); - var secondBinManifest = File.ReadAllText(secondFinalPath); - secondBinManifest.Should().Be(binManifestContents); - - secondFinalFile.LastWriteTimeUtc.Should().Be(originalFile.LastWriteTimeUtc); - } - - [Fact] - public void Build_UpdatesManifest_WhenFilesChange() - { - var testAsset = "RazorComponentApp"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - var build = CreateBuildCommand(ProjectDirectory); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - var originalObjFile = new FileInfo(path); - originalObjFile.Should().Exist(); - var objManifestContents = File.ReadAllText(Path.Combine(intermediateOutputPath, "staticwebassets.build.json")); - var firstManifest = StaticWebAssetsManifest.FromJsonString(objManifestContents); - AssertManifest(firstManifest, LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); - var originalFile = new FileInfo(finalPath); - originalFile.Should().Exist(); - var binManifestContents = File.ReadAllText(finalPath); - - AssertBuildAssets( - firstManifest, - outputPath, - intermediateOutputPath); - - // Second build - Directory.CreateDirectory(Path.Combine(ProjectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(ProjectDirectory.Path, "wwwroot", "index.html"), "some html"); - - var secondBuild = CreateBuildCommand(ProjectDirectory); - secondBuild.Execute().Should().Pass(); - - var secondPath = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - var secondObjFile = new FileInfo(secondPath); - secondObjFile.Should().Exist(); - var secondObjManifest = File.ReadAllText(secondPath); - var secondManifest = StaticWebAssetsManifest.FromJsonString(secondObjManifest); - AssertManifest( - secondManifest, - LoadBuildManifest("Updated"), - "Updated"); - - secondObjManifest.Should().NotBe(objManifestContents); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var secondFinalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); - var secondFinalFile = new FileInfo(secondFinalPath); - secondFinalFile.Should().Exist(); - var secondBinManifest = File.ReadAllText(secondFinalPath); - secondBinManifest.Should().NotBe(binManifestContents); - - secondObjFile.LastWriteTimeUtc.Should().NotBe(originalObjFile.LastWriteTimeUtc); - secondFinalFile.LastWriteTimeUtc.Should().NotBe(originalFile.LastWriteTimeUtc); - - AssertBuildAssets( - secondManifest, - outputPath, - intermediateOutputPath, - "Updated"); - } - - // Rebuild - [Fact] - public void Rebuild_RegeneratesJsonManifestAndCopiesItToOutputFolder() - { - var testAsset = "RazorComponentApp"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - var build = CreateBuildCommand(ProjectDirectory); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - var originalObjFile = new FileInfo(path); - originalObjFile.Should().Exist(); - var objManifestContents = File.ReadAllText(Path.Combine(intermediateOutputPath, "staticwebassets.build.json")); - AssertManifest(StaticWebAssetsManifest.FromJsonString(objManifestContents), LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); - var originalFile = new FileInfo(finalPath); - originalFile.Should().Exist(); - var binManifestContents = File.ReadAllText(finalPath); - - // rebuild build - var rebuild = CreateRebuildCommand(ProjectDirectory); - ExecuteCommand(rebuild).Should().Pass(); - - var secondPath = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - var secondObjFile = new FileInfo(secondPath); - secondObjFile.Should().Exist(); - var secondObjManifestContents = File.ReadAllText(secondPath); - var secondManifest = StaticWebAssetsManifest.FromJsonString(secondObjManifestContents); - AssertManifest( - secondManifest, - LoadBuildManifest("Rebuild"), - "Rebuild"); - - // This is no longer true because the manifests include the timestamp for the last modified - // time of the file, etc. - //secondObjManifestContents.Should().Be(objManifestContents); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var secondFinalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); - var secondFinalFile = new FileInfo(secondFinalPath); - secondFinalFile.Should().Exist(); - var secondBinManifest = File.ReadAllText(secondFinalPath); - secondBinManifest.Should().Be(binManifestContents); - - secondObjFile.LastWriteTimeUtc.Should().NotBe(originalObjFile.LastWriteTimeUtc); - secondFinalFile.LastWriteTimeUtc.Should().NotBe(originalFile.LastWriteTimeUtc); - - AssertBuildAssets( - secondManifest, - outputPath, - intermediateOutputPath, - "Rebuild"); - } - - // Publish - [Fact] - public void Publish_GeneratesPublishJsonManifestAndCopiesPublishAssets() - { - var testAsset = "RazorComponentApp"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - var publish = CreatePublishCommand(ProjectDirectory); - ExecuteCommand(publish).Should().Pass(); - - var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var publishPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the build manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(publishPath, "ComponentApp.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().NotExist(); - - // GenerateStaticWebAssetsManifest should generate the publish manifest file. - var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); - new FileInfo(path).Should().Exist(); - var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); - AssertManifest(publishManifest, LoadPublishManifest()); - - AssertPublishAssets( - publishManifest, - publishPath, - intermediateOutputPath); - } - - [Fact] - public void Publish_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets() - { - var expectedManifest = LoadBuildManifest(); - var testAsset = "RazorComponentApp"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - var publish = CreatePublishCommand(ProjectDirectory); - ExecuteCommand(publish, "/p:PublishSingleFile=true", $"/p:RuntimeIdentifier={RuntimeInformation.RuntimeIdentifier}").Should().Pass(); - - var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug", RuntimeInformation.RuntimeIdentifier).ToString(); - var publishPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the build manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, expectedManifest, runtimeIdentifier: RuntimeInformation.RuntimeIdentifier); - - // GenerateStaticWebAssetsManifest should not copy the file to the output folder. - var finalPath = Path.Combine(publishPath, "ComponentApp.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().NotExist(); - - // GenerateStaticWebAssetsManifest should generate the publish manifest file. - var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); - new FileInfo(path).Should().Exist(); - var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); - AssertManifest( - publishManifest, - LoadPublishManifest(), - runtimeIdentifier: RuntimeInformation.RuntimeIdentifier); - - AssertPublishAssets( - publishManifest, - publishPath, - intermediateOutputPath); - } - - [Fact] - public void Publish_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets() - { - var expectedManifest = LoadBuildManifest(); - var testAsset = "RazorComponentApp"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - var build = CreateBuildCommand(ProjectDirectory); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var publishPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - var objManifestFile = new FileInfo(path); - objManifestFile.Should().Exist(); - var objManifestFileTimeStamp = objManifestFile.LastWriteTimeUtc; - - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, expectedManifest); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(publishPath, "ComponentApp.staticwebassets.runtime.json"); - var binManifestFile = new FileInfo(finalPath); - binManifestFile.Should().Exist(); - var binManifestTimeStamp = binManifestFile.LastWriteTimeUtc; - - var finalManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); - AssertManifest(finalManifest, expectedManifest); - - // Publish no build - - var publish = CreatePublishCommand(ProjectDirectory); - ExecuteCommand(publish, "/p:NoBuild=true").Should().Pass(); - - var secondObjTimeStamp = new FileInfo(path).LastWriteTimeUtc; - - secondObjTimeStamp.Should().Be(objManifestFileTimeStamp); - - var seconbObjManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(seconbObjManifest, expectedManifest); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var seconBinManifestPath = Path.Combine(publishPath, "ComponentApp.staticwebassets.runtime.json"); - var secondBinManifestFile = new FileInfo(seconBinManifestPath); - secondBinManifestFile.Should().Exist(); - - secondBinManifestFile.LastWriteTimeUtc.Should().Be(binManifestTimeStamp); - - var secondBinManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); - AssertManifest(secondBinManifest, expectedManifest); - - // GenerateStaticWebAssetsManifest should generate the publish manifest file. - var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); - new FileInfo(path).Should().Exist(); - var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); - AssertManifest( - publishManifest, - LoadPublishManifest()); - - AssertPublishAssets( - publishManifest, - publishPath, - intermediateOutputPath); - } - - [Fact] - public void Build_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets() - { - var expectedManifest = LoadBuildManifest(); - var testAsset = "RazorComponentApp"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - var build = CreateBuildCommand(ProjectDirectory); - build.Execute("/p:DeployOnBuild=true").Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the build manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().Exist(); - - // GenerateStaticWebAssetsManifest should generate the publish manifest file. - var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); - new FileInfo(path).Should().Exist(); - var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); - AssertManifest(publishManifest, LoadPublishManifest()); - - AssertPublishAssets( - publishManifest, - Path.Combine(outputPath, "publish"), - intermediateOutputPath); - } - - // Clean - [Fact] - public void Clean_RemovesManifestFrom_BuildAndIntermediateOutput() - { - var expectedManifest = LoadBuildManifest(); - var testAsset = "RazorComponentApp"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - var build = CreateBuildCommand(ProjectDirectory); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, expectedManifest); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().Exist(); - var finalManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); - AssertManifest(finalManifest, expectedManifest); - - var clean = new CleanCommand(Log, ProjectDirectory.Path); - clean.Execute().Should().Pass(); - - // Obj folder manifest does not exist - new FileInfo(path).Should().NotExist(); - - // Bin folder manifest does not exist - new FileInfo(finalPath).Should().NotExist(); - } - - [Fact] - public void Publish_WithExternalProjectReference_UpdatesAssets() - { - var testAsset = "RazorAppWithP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset) - .WithProjectChanges((name, project) => - { - if (Path.GetFileName(name).Equals("ClassLibrary.csproj", StringComparison.Ordinal)) - { - project.Root.Attribute("Sdk").Value = "Microsoft.NET.Sdk"; - project.Root.AddFirst(new XElement("Import", new XAttribute("Project", "ExternalStaticAssets.targets"))); - - using var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("Microsoft.NET.Sdk.Razor.Tests.content.ExternalStaticAssets.targets"); - using var destination = File.OpenWrite(Path.Combine(Path.GetDirectoryName(name), "ExternalStaticAssets.targets")); - stream.CopyTo(destination); - } - }); - - var publish = CreatePublishCommand(ProjectDirectory, "AppWithP2PReference"); - ExecuteCommand(publish).Should().Pass(); - - var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var publishPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the build manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(publishPath, "ComponentApp.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().NotExist(); - - // GenerateStaticWebAssetsManifest should generate the publish manifest file. - var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); - new FileInfo(path).Should().Exist(); - var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); - AssertManifest(publishManifest, LoadPublishManifest()); - - AssertPublishAssets( - publishManifest, - publishPath, - intermediateOutputPath); - } - - [Fact] - public void Build_WithExternalProjectReference_UpdatesAssets() - { - var testAsset = "RazorAppWithP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset) - .WithProjectChanges((name, project) => - { - if (Path.GetFileName(name).Equals("ClassLibrary.csproj", StringComparison.Ordinal)) - { - project.Root.Attribute("Sdk").Value = "Microsoft.NET.Sdk"; - project.Root.AddFirst(new XElement("Import", new XAttribute("Project", "ExternalStaticAssets.targets"))); - - using var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("Microsoft.NET.Sdk.Razor.Tests.content.ExternalStaticAssets.targets"); - using var destination = File.OpenWrite(Path.Combine(Path.GetDirectoryName(name), "ExternalStaticAssets.targets")); - stream.CopyTo(destination); - } - - if (Path.GetFileName(name).Equals("AppWithP2PReference.csproj", StringComparison.Ordinal)) - { - project.Root.AddFirst(new XElement("ItemGroup", - new XElement( - "StaticWebAssetFingerprintInferenceExpression", - new XAttribute("Include", "Version"), - new XAttribute("Pattern", ".*(?v\\d{1})\\.js$")))); - } - }); - - var build = CreateBuildCommand(ProjectDirectory, "AppWithP2PReference"); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var buildPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the build manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, LoadBuildManifest()); - - AssertBuildAssets( - manifest, - buildPath, - intermediateOutputPath); - } - - [Fact] - public void Build_DoesNotFailToCompress_TwoAssetsWith_TheSameContent() - { - var expectedManifest = LoadBuildManifest(); - var testAsset = "RazorComponentApp"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset) - .WithProjectChanges(document => - { - document.Root.AddFirst(new XElement("ItemGroup", - new XElement("Content", - new XAttribute("Update", "wwwroot\\file.build.txt"), - new XAttribute("TargetPath", "wwwroot\\file.txt"), - new XAttribute("CopyToPublishDirectory", "Never")), - new XElement("Content", - new XAttribute("Update", "wwwroot\\file.publish.txt"), - new XAttribute("TargetPath", "wwwroot\\file.txt"), - new XAttribute("CopyToOutputDirectory", "Never")))); - }); - - Directory.CreateDirectory(Path.Combine(ProjectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(ProjectDirectory.Path, "wwwroot", "file.build.txt"), "file1"); - File.WriteAllText(Path.Combine(ProjectDirectory.Path, "wwwroot", "file.publish.txt"), "file1"); - - var build = CreateBuildCommand(ProjectDirectory); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(manifest, expectedManifest); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "ComponentApp.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().Exist(); - - var manifest1 = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); - AssertManifest(manifest1, expectedManifest); - AssertBuildAssets(manifest1, outputPath, intermediateOutputPath); - } - } - - public class StaticWebAssetsAppWithPackagesIntegrationTest(ITestOutputHelper log) - : IsolatedNuGetPackageFolderAspNetSdkBaselineTest(log, nameof(StaticWebAssetsAppWithPackagesIntegrationTest)) - { - [Fact] - public void Build_Fails_WhenConflictingAssetsFoundBetweenAStaticWebAssetAndAFileInTheWebRootFolder() - { - var testAsset = "RazorAppWithPackageAndP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - Directory.CreateDirectory(Path.Combine(ProjectDirectory.Path, "AppWithPackageAndP2PReference", "wwwroot", "_content", "ClassLibrary", "js")); - File.WriteAllText(Path.Combine(ProjectDirectory.Path, "AppWithPackageAndP2PReference", "wwwroot", "_content", "ClassLibrary", "js", "project-transitive-dep.js"), "console.log('transitive-dep');"); - - EnsureLocalPackagesExists(); - - var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(restore).Should().Pass(); - - var build = CreateBuildCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(build).Should().Fail(); - } - - [Fact] - public void BuildProjectWithReferences_DeployOnBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets() - { - var testAsset = "RazorAppWithPackageAndP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - EnsureLocalPackagesExists(); - - var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(restore).Should().Pass(); - - var build = CreateBuildCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - build.Execute("/p:DeployOnBuild=true").Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - - AssertManifest( - StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)), - LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().Exist(); - - // GenerateStaticWebAssetsManifest should generate the publish manifest file. - var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); - new FileInfo(path).Should().Exist(); - var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); - AssertManifest(publishManifest, LoadPublishManifest()); - - AssertPublishAssets( - publishManifest, - Path.Combine(outputPath, "publish"), - intermediateOutputPath); - } - - [Fact] - public void BuildProjectWithReferences_GeneratesJsonManifestAndCopiesItToOutputFolder() - { - var testAsset = "RazorAppWithPackageAndP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - EnsureLocalPackagesExists(); - - var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(restore).Should().Pass(); - - var build = CreateBuildCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest( - manifest, - LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().Exist(); - - AssertBuildAssets( - manifest, - outputPath, - intermediateOutputPath); - } - - [Fact] - public void BuildProjectWithReferences_NoDependencies_GeneratesJsonManifestAndCopiesItToOutputFolder() - { - var testAsset = "RazorAppWithPackageAndP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - EnsureLocalPackagesExists(); - - var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(restore).Should().Pass(); - - var build = CreateBuildCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - AssertManifest( - StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)), - LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().Exist(); - var manifestContents = File.ReadAllText(finalPath); - var initialManifest = StaticWebAssetsManifest.FromJsonString(File.ReadAllText(path)); - AssertManifest( - initialManifest, - LoadBuildManifest()); - - // Second build - var secondBuild = CreateBuildCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(secondBuild,"/p:BuildProjectReferences=false").Should().Pass(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - new FileInfo(path).Should().Exist(); - var manifestNoDeps = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest( - manifestNoDeps, - LoadBuildManifest("NoDependencies"), - "NoDependencies"); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - new FileInfo(finalPath).Should().Exist(); - var manifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(Path.Combine(intermediateOutputPath, "staticwebassets.build.json"))); - AssertManifest( - manifest, - LoadBuildManifest("NoDependencies"), - "NoDependencies"); - - AssertBuildAssets( - manifest, - outputPath, - intermediateOutputPath, - "NoDependencies"); - - // Check that the two manifests are the same - manifestContents.Should().Be(File.ReadAllText(finalPath)); - } - - [Fact] - public void PublishProjectWithReferences_GeneratesPublishJsonManifestAndCopiesPublishAssets() - { - var testAsset = "RazorAppWithPackageAndP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - EnsureLocalPackagesExists(); - - var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(restore).Should().Pass(); - - var publish = CreatePublishCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(publish).Should().Pass(); - - var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var publishPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - AssertManifest( - StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)), - LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(publishPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().NotExist(); - - // GenerateStaticWebAssetsPublishManifest should generate the publish manifest file. - var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); - new FileInfo(path).Should().Exist(); - var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); - AssertManifest( - publishManifest, - LoadPublishManifest()); - - AssertPublishAssets( - publishManifest, - publishPath, - intermediateOutputPath); - } - - [Fact] - public void PublishProjectWithReferences_PublishSingleFile_GeneratesPublishJsonManifestAndCopiesPublishAssets() - { - var testAsset = "RazorAppWithPackageAndP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - EnsureLocalPackagesExists(); - - var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(restore).Should().Pass(); - - var publish = CreatePublishCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(publish, "/p:PublishSingleFile=true", $"/p:RuntimeIdentifier={RuntimeInformation.RuntimeIdentifier}").Should().Pass(); - - var intermediateOutputPath = publish.GetIntermediateDirectory(DefaultTfm, "Debug", RuntimeInformation.RuntimeIdentifier).ToString(); - var publishPath = publish.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - AssertManifest( - StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)), - LoadBuildManifest(), - runtimeIdentifier: RuntimeInformation.RuntimeIdentifier); - - // GenerateStaticWebAssetsManifest should not copy the file to the output folder. - var finalPath = Path.Combine(publishPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().NotExist(); - - // GenerateStaticWebAssetsPublishManifest should generate the publish manifest file. - var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); - new FileInfo(path).Should().Exist(); - var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); - AssertManifest(publishManifest, LoadPublishManifest(), runtimeIdentifier: RuntimeInformation.RuntimeIdentifier); - - AssertPublishAssets( - publishManifest, - publishPath, - intermediateOutputPath); - } - - [Fact] - public void PublishProjectWithReferences_NoBuild_GeneratesPublishJsonManifestAndCopiesPublishAssets() - { - var testAsset = "RazorAppWithPackageAndP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - EnsureLocalPackagesExists(); - - var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(restore).Should().Pass(); - - var build = CreateBuildCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(build).Should().Pass(); - - var intermediateOutputPath = build.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - var objManifestFile = new FileInfo(path); - objManifestFile.Should().Exist(); - var objManifestFileTimeStamp = objManifestFile.LastWriteTimeUtc; - - AssertManifest( - StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)), - LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(outputPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); - var binManifestFile = new FileInfo(finalPath); - binManifestFile.Should().Exist(); - var binManifestTimeStamp = binManifestFile.LastWriteTimeUtc; - - AssertManifest( - StaticWebAssetsManifest.FromJsonString(File.ReadAllText(path)), - LoadBuildManifest()); - - // Publish no build - var publish = CreatePublishCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - var publishResult = ExecuteCommand(publish, "/p:NoBuild=true", "/p:ErrorOnDuplicatePublishOutputFiles=false"); - var publishPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - publishResult.Should().Pass(); - - new FileInfo(path).LastWriteTimeUtc.Should().Be(objManifestFileTimeStamp); - - var seconbObjManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)); - AssertManifest(seconbObjManifest, LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var seconBinManifestPath = Path.Combine(outputPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); - var secondBinManifestFile = new FileInfo(seconBinManifestPath); - secondBinManifestFile.Should().Exist(); - - secondBinManifestFile.LastWriteTimeUtc.Should().Be(binManifestTimeStamp); - - // GenerateStaticWebAssetsManifest should generate the publish manifest file. - var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); - new FileInfo(path).Should().Exist(); - var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); - AssertManifest(publishManifest, LoadPublishManifest()); - - AssertPublishAssets( - publishManifest, - publishPath, - intermediateOutputPath); - } - - [Fact] - public void PublishProjectWithReferences_AppendTargetFrameworkToOutputPathFalse_GeneratesPublishJsonManifestAndCopiesPublishAssets() - { - var testAsset = "RazorAppWithPackageAndP2PReference"; - ProjectDirectory = CreateAspNetSdkTestAsset(testAsset); - - EnsureLocalPackagesExists(); - - var restore = CreateRestoreCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(restore).Should().Pass(); - - var publish = CreatePublishCommand(ProjectDirectory, "AppWithPackageAndP2PReference"); - ExecuteCommand(publish, "/p:AppendTargetFrameworkToOutputPath=false").Should().Pass(); - - // Hard code output paths here to account for AppendTargetFrameworkToOutputPath=false - var intermediateOutputPath = Path.Combine(ProjectDirectory.Path, "AppWithPackageAndP2PReference", "obj", "Debug"); - var publishPath = Path.Combine(ProjectDirectory.Path, "AppWithPackageAndP2PReference", "bin", "Debug", "publish"); - - // GenerateStaticWebAssetsManifest should generate the manifest file. - var path = Path.Combine(intermediateOutputPath, "staticwebassets.build.json"); - new FileInfo(path).Should().Exist(); - AssertManifest( - StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(path)), - LoadBuildManifest()); - - // GenerateStaticWebAssetsManifest should copy the file to the output folder. - var finalPath = Path.Combine(publishPath, "AppWithPackageAndP2PReference.staticwebassets.runtime.json"); - new FileInfo(finalPath).Should().NotExist(); - - // GenerateStaticWebAssetsPublishManifest should generate the publish manifest file. - var intermediatePublishManifestPath = Path.Combine(intermediateOutputPath, "staticwebassets.publish.json"); - new FileInfo(path).Should().Exist(); - var publishManifest = StaticWebAssetsManifest.FromJsonBytes(File.ReadAllBytes(intermediatePublishManifestPath)); - AssertManifest( - publishManifest, - LoadPublishManifest()); - - AssertPublishAssets( - publishManifest, - publishPath, - intermediateOutputPath); - } - } -} diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsPackIntegrationTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsPackIntegrationTest.cs deleted file mode 100644 index 428973e010ac..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/StaticWebAssetsPackIntegrationTest.cs +++ /dev/null @@ -1,1730 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -#nullable disable - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - public class StaticWebAssetsPackIntegrationTest(ITestOutputHelper log) - : IsolatedNuGetPackageFolderAspNetSdkBaselineTest(log, nameof(StaticWebAssetsPackIntegrationTest)) - { - [Fact] - public void Pack_FailsWhenStaticWebAssetsHaveConflictingPaths() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages") - .WithProjectChanges(project => - { - var ns = project.Root.Name.Namespace; - var itemGroup = new XElement(ns + "ItemGroup"); - var element = new XElement("StaticWebAsset", new XAttribute("Include", @"bundle\js\pkg-direct-dep.js")); - element.Add(new XElement("SourceType")); - element.Add(new XElement("SourceId", "PackageLibraryDirectDependency")); - element.Add(new XElement("ContentRoot", "$([MSBuild]::NormalizeDirectory('$(MSBuildProjectDirectory)\\bundle\\'))")); - element.Add(new XElement("BasePath", "_content/PackageLibraryDirectDependency")); - element.Add(new XElement("RelativePath", "js/pkg-direct-dep.js")); - itemGroup.Add(element); - project.Root.Add(itemGroup); - }); - - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "bundle", "js")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "bundle", "js", "pkg-direct-dep.js"), "console.log('bundle');"); - - var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); - ExecuteCommand(pack).Should().Fail(); - } - - // If you modify this test, make sure you also modify the test below this one to assert that things are not included as content. - [Fact] - public void Pack_IncludesStaticWebAssets() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result.Should().NuPkgContainsPatterns( - Path.Combine(pack.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePatterns: new[] - { - Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), - Path.Combine("staticwebassets", "css", "site.css"), - Path.Combine("staticwebassets", "PackageLibraryDirectDependency.*.bundle.scp.css"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryDirectDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") - }); - } - - [Fact] - public void Pack_NoAssets_DoesNothing() - { - var testAsset = "PackageLibraryNoStaticAssets"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - var pack = CreatePackCommand(projectDirectory); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryNoStaticAssets.dll")).Should().Exist(); - - result.Should().NuPkgDoesNotContain( - Path.Combine(pack.GetPackageDirectory().FullName, "PackageLibraryNoStaticAssets.1.0.0.nupkg"), - filePaths: new[] - { - Path.Combine("staticwebassets"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryNoStaticAssets.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryNoStaticAssets.props"), - Path.Combine("buildTransitive", "PackageLibraryNoStaticAssets.props") - }); - } - - [Fact] - public void Pack_NoAssets_Multitargeting_DoesNothing() - { - var testAsset = "PackageLibraryNoStaticAssets"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(project => - { - var tfm = project.Root.Descendants("TargetFramework").Single(); - tfm.Name = "TargetFrameworks"; - tfm.Value = "net6.0;" + DefaultTfm; - }); - - var pack = CreatePackCommand(projectDirectory); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryNoStaticAssets.dll")).Should().Exist(); - - result.Should().NuPkgDoesNotContain( - Path.Combine(projectDirectory.Path, "bin", "Debug", "PackageLibraryNoStaticAssets.1.0.0.nupkg"), - filePaths: new[] - { - Path.Combine("staticwebassets"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryNoStaticAssets.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryNoStaticAssets.props"), - Path.Combine("buildTransitive", "PackageLibraryNoStaticAssets.props") - }); - } - - [Fact] - public void Pack_Incremental_IncludesStaticWebAssets() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var pack2 = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result2 = ExecuteCommand(pack2); - - result2.Should().Pass(); - - var outputPath = pack2.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result2.Should().NuPkgContainsPatterns( - Path.Combine(pack2.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePatterns: new[] - { - Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), - Path.Combine("staticwebassets", "css", "site.css"), - Path.Combine("staticwebassets", "PackageLibraryDirectDependency.*.bundle.scp.css"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryDirectDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") - }); - } - - [Fact] - public void Pack_StaticWebAssets_WithoutFileExtension_AreCorrectlyPacked() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - File.WriteAllText(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "wwwroot", "LICENSE"), "license file contents"); - - var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result.Should().NuPkgContainsPatterns( - Path.Combine(pack.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePatterns: new[] - { - Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), - Path.Combine("staticwebassets", "css", "site.css"), - Path.Combine("staticwebassets", "LICENSE"), - Path.Combine("staticwebassets", "PackageLibraryDirectDependency.*.bundle.scp.css"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryDirectDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") - }); - } - - [Fact] - public void Pack_MultipleTargetFrameworks_Works() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges((project, document) => - { - var tfm = document.Descendants("TargetFramework").Single(); - tfm.Name = "TargetFrameworks"; - tfm.FirstNode.ReplaceWith(tfm.FirstNode.ToString() + ";netstandard2.1"); - - document.Descendants("AddRazorSupportForMvc").SingleOrDefault()?.Remove(); - document.Descendants("FrameworkReference").SingleOrDefault()?.Remove(); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "Components"), recursive: true); - - var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result.Should().NuPkgContain( - Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "bin", "Debug", "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePaths: new[] - { - Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), - Path.Combine("staticwebassets", "css", "site.css"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryDirectDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") - }); - } - - [Fact] - public void Pack_MultipleTargetFrameworks_NoBuild_IncludesStaticWebAssets() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges((project, document) => - { - var tfm = document.Descendants("TargetFramework").Single(); - tfm.Name = "TargetFrameworks"; - tfm.FirstNode.ReplaceWith(tfm.FirstNode.ToString() + ";netstandard2.1"); - - document.Descendants("AddRazorSupportForMvc").SingleOrDefault()?.Remove(); - document.Descendants("FrameworkReference").SingleOrDefault()?.Remove(); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "Components"), recursive: true); - - var build = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); - var buildResult = build.Execute(); - - var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = pack.Execute("/p:NoBuild=true"); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result.Should().NuPkgContain( - Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "bin", "Debug", "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePaths: new[] - { - Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), - Path.Combine("staticwebassets", "css", "site.css"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryDirectDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") - }); - } - - [Fact] - public void Pack_MultipleTargetFrameworks_NoBuild_DoesNotIncludeAssetsAsContent() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges((project, document) => - { - var tfm = document.Descendants("TargetFramework").Single(); - tfm.Name = "TargetFrameworks"; - tfm.FirstNode.ReplaceWith(tfm.FirstNode.ToString() + ";netstandard2.1"); - - document.Descendants("AddRazorSupportForMvc").SingleOrDefault()?.Remove(); - document.Descendants("FrameworkReference").SingleOrDefault()?.Remove(); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "Components"), recursive: true); - - var build = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); - var buildResult = build.Execute(); - - var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = pack.Execute("/p:NoBuild=true"); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result.Should().NuPkgDoesNotContain( - Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "bin", "Debug", "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePaths: new[] - { - Path.Combine("content", "wwwroot", "js", "pkg-direct-dep.js"), - Path.Combine("content", "wwwroot", "css", "site.css"), - Path.Combine("contentFiles", "wwwroot", "js", "pkg-direct-dep.js"), - Path.Combine("contentFiles", "wwwroot", "css", "site.css"), - }); - } - - [Fact] - public void Pack_MultipleTargetFrameworks_GeneratePackageOnBuild_IncludesStaticWebAssets() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges((project, document) => - { - var tfm = document.Descendants("TargetFramework").Single(); - tfm.Name = "TargetFrameworks"; - tfm.FirstNode.ReplaceWith(tfm.FirstNode.ToString() + ";netstandard2.1"); - - document.Descendants("AddRazorSupportForMvc").SingleOrDefault()?.Remove(); - document.Descendants("FrameworkReference").SingleOrDefault()?.Remove(); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "Components"), recursive: true); - - var build = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = build.Execute("/p:GeneratePackageOnBuild=true"); - - result.Should().Pass(); - - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result.Should().NuPkgContain( - Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "bin", "Debug", "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePaths: new[] - { - Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), - Path.Combine("staticwebassets", "css", "site.css"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryDirectDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") - }); - } - - [Fact] - public void Pack_MultipleTargetFrameworks_GeneratePackageOnBuild_DoesNotIncludeAssetsAsContent() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges((project, document) => - { - var tfm = document.Descendants("TargetFramework").Single(); - tfm.Name = "TargetFrameworks"; - tfm.FirstNode.ReplaceWith(tfm.FirstNode.ToString() + ";netstandard2.1"); - - document.Descendants("AddRazorSupportForMvc").SingleOrDefault()?.Remove(); - document.Descendants("FrameworkReference").SingleOrDefault()?.Remove(); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "Components"), recursive: true); - - var build = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = build.Execute("/p:GeneratePackageOnBuild=true"); - - result.Should().Pass(); - - var outputPath = build.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result.Should().NuPkgDoesNotContain( - Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "bin", "Debug", "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePaths: new[] - { - Path.Combine("content", "wwwroot", "js", "pkg-direct-dep.js"), - Path.Combine("content", "wwwroot", "css", "site.css"), - Path.Combine("contentFiles", "wwwroot", "js", "pkg-direct-dep.js"), - Path.Combine("contentFiles", "wwwroot", "css", "site.css"), - }); - } - - [Fact] - public void Pack_BeforeNet60_MultipleTargetFrameworks_WithScopedCss_IncludesAssetsAndProjectBundle() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - netstandard2.0;net5.0 - 3.0 - - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var pack = CreatePackCommand(projectDirectory); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result.Should().NuPkgContainsPatterns( - packagePath, - filePatterns: new[] - { - Path.Combine("staticwebassets", "exampleJsInterop.js"), - Path.Combine("staticwebassets", "background.png"), - Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.bundle.scp.css"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") - }); - } - - [Fact] - public void Pack_BeforeNet60_MultipleTargetFrameworks_WithScopedCss_DoesNotIncludeAssetsAsContent() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - netstandard2.0;net5.0 - 3.0 - - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var pack = CreatePackCommand(projectDirectory); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result.Should().NuPkgDoesNotContain( - packagePath, - filePaths: new[] - { - Path.Combine("content", "exampleJsInterop.js"), - Path.Combine("content", "background.png"), - Path.Combine("content", "PackageLibraryTransitiveDependency.bundle.scp.css"), - Path.Combine("contentFiles", "exampleJsInterop.js"), - Path.Combine("contentFiles", "background.png"), - Path.Combine("contentFiles", "PackageLibraryTransitiveDependency.bundle.scp.css"), - }); - } - - [Fact] - public void Pack_BeforeNet60_MultipleTargetFrameworks_NoBuild_WithScopedCss_IncludesAssetsAndProjectBundle() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - netstandard2.0;net5.0 - 3.0 - - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var build = CreateBuildCommand(projectDirectory); - var buildResult = build.Execute(); - - buildResult.Should().Pass(); - - var pack = CreatePackCommand(projectDirectory); - var result = pack.Execute("/p:NoBuild=true"); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result.Should().NuPkgContain( - packagePath, - filePaths: new[] - { - Path.Combine("staticwebassets", "exampleJsInterop.js"), - Path.Combine("staticwebassets", "background.png"), - Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.bundle.scp.css"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") - }); - } - - [Fact] - public void Pack_BeforeNet60_MultipleTargetFrameworks_NoBuild_WithScopedCss_DoesNotIncludeAssetsAsContent() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - netstandard2.0;net5.0 - 3.0 - - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var build = CreateBuildCommand(projectDirectory); - var buildResult = build.Execute(); - - buildResult.Should().Pass(); - - var pack = CreatePackCommand(projectDirectory); - var result = pack.Execute("/p:NoBuild=true"); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result.Should().NuPkgDoesNotContain( - packagePath, - filePaths: new[] - { - Path.Combine("content", "exampleJsInterop.js"), - Path.Combine("content", "background.png"), - Path.Combine("content", "PackageLibraryTransitiveDependency.bundle.scp.css"), - Path.Combine("contentFiles", "exampleJsInterop.js"), - Path.Combine("contentFiles", "background.png"), - Path.Combine("contentFiles", "PackageLibraryTransitiveDependency.bundle.scp.css"), - }); - } - - [Fact] - public void Pack_BeforeNet60_MultipleTargetFrameworks_GeneratePackageOnBuild_WithScopedCss_IncludesAssetsAndProjectBundle() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - netstandard2.0;net5.0 - 3.0 - - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var build = CreateBuildCommand(projectDirectory); - var result = build.Execute("/p:GeneratePackageOnBuild=true"); - - result.Should().Pass(); - - var outputPath = build.GetOutputDirectory("net5.0", "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result.Should().NuPkgContain( - packagePath, - filePaths: new[] - { - Path.Combine("staticwebassets", "exampleJsInterop.js"), - Path.Combine("staticwebassets", "background.png"), - Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.bundle.scp.css"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") - }); - } - - [Fact] - public void Pack_BeforeNet60_MultipleTargetFrameworks_GeneratePackageOnBuild_WithScopedCss_DoesNotIncludeAssetsAsContent() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - netstandard2.0;net5.0 - 3.0 - - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var build = CreateBuildCommand(projectDirectory); - var result = build.Execute("/p:GeneratePackageOnBuild=true"); - - result.Should().Pass(); - - var outputPath = build.GetOutputDirectory("net5.0", "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result.Should().NuPkgDoesNotContain( - packagePath, - filePaths: new[] - { - Path.Combine("content", "exampleJsInterop.js"), - Path.Combine("content", "background.png"), - Path.Combine("content", "PackageLibraryTransitiveDependency.bundle.scp.css"), - Path.Combine("contentFiles", "exampleJsInterop.js"), - Path.Combine("contentFiles", "background.png"), - Path.Combine("contentFiles", "PackageLibraryTransitiveDependency.bundle.scp.css"), - }); - } - - [Fact] - public void Pack_Net50_WithScopedCss_IncludesAssetsAndProjectBundle() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - net5.0 - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var pack = CreatePackCommand(projectDirectory); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result.Should().NuPkgContain( - packagePath, - filePaths: new[] - { - Path.Combine("staticwebassets", "exampleJsInterop.js"), - Path.Combine("staticwebassets", "background.png"), - Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.bundle.scp.css"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") - }); - } - - [Fact] - public void Pack_Net50_WithScopedCss_DoesNotIncludeAssetsAsContent() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - net5.0 - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var pack = CreatePackCommand(projectDirectory); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result.Should().NuPkgDoesNotContain( - packagePath, - filePaths: new[] - { - Path.Combine("content", "exampleJsInterop.js"), - Path.Combine("content", "background.png"), - Path.Combine("content", "PackageLibraryTransitiveDependency.bundle.scp.css"), - Path.Combine("contentFiles", "exampleJsInterop.js"), - Path.Combine("contentFiles", "background.png"), - Path.Combine("contentFiles", "PackageLibraryTransitiveDependency.bundle.scp.css"), - }); - } - - [Fact] - public void Pack_Net50_NoBuild_WithScopedCss_IncludesAssetsAndProjectBundle() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - net5.0 - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var build = CreateBuildCommand(projectDirectory); - var buildResult = build.Execute(); - - buildResult.Should().Pass(); - - var pack = CreatePackCommand(projectDirectory); - var result = pack.Execute("/p:NoBuild=true"); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result.Should().NuPkgContain( - packagePath, - filePaths: new[] - { - Path.Combine("staticwebassets", "exampleJsInterop.js"), - Path.Combine("staticwebassets", "background.png"), - Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.bundle.scp.css"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") - }); - } - - [Fact] - public void Pack_Net50_NoBuild_WithScopedCss_DoesNotIncludeAssetsAsContent() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - net5.0 - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var build = CreateBuildCommand(projectDirectory); - var buildResult = build.Execute(); - - buildResult.Should().Pass(); - - var pack = CreatePackCommand(projectDirectory); - var result = pack.Execute("/p:NoBuild=true"); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory("net5.0", "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result.Should().NuPkgDoesNotContain( - packagePath, - filePaths: new[] - { - Path.Combine("content", "exampleJsInterop.js"), - Path.Combine("content", "background.png"), - Path.Combine("content", "PackageLibraryTransitiveDependency.bundle.scp.css"), - Path.Combine("contentFiles", "exampleJsInterop.js"), - Path.Combine("contentFiles", "background.png"), - Path.Combine("contentFiles", "PackageLibraryTransitiveDependency.bundle.scp.css"), - }); - } - - [Fact] - public void Pack_Net50_GeneratePackageOnBuild_WithScopedCss_IncludesAssetsAndProjectBundle() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - net5.0 - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var build = CreateBuildCommand(projectDirectory); - var result = build.Execute("/p:GeneratePackageOnBuild=true"); - - result.Should().Pass(); - - var outputPath = build.GetOutputDirectory("net5.0", "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result.Should().NuPkgContain( - packagePath, - filePaths: new[] - { - Path.Combine("staticwebassets", "exampleJsInterop.js"), - Path.Combine("staticwebassets", "background.png"), - Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.bundle.scp.css"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") - }); - } - - [Fact] - public void Pack_Net50_GeneratePackageOnBuild_WithScopedCss_DoesNotIncludeAssetsAsContent() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - net5.0 - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var build = CreateBuildCommand(projectDirectory); - var result = build.Execute("/p:GeneratePackageOnBuild=true"); - - result.Should().Pass(); - - var outputPath = build.GetOutputDirectory("net5.0", "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result.Should().NuPkgDoesNotContain( - packagePath, - filePaths: new[] - { - Path.Combine("content", "exampleJsInterop.js"), - Path.Combine("content", "background.png"), - Path.Combine("content", "PackageLibraryTransitiveDependency.bundle.scp.css"), - Path.Combine("contentFiles", "exampleJsInterop.js"), - Path.Combine("contentFiles", "background.png"), - Path.Combine("contentFiles", "PackageLibraryTransitiveDependency.bundle.scp.css"), - }); - } - - [Fact] - public void Pack_MultipleTargetFrameworks_WithScopedCssAndJsModules_IncludesAssetsAndProjectBundle() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - {ToolsetInfo.CurrentTargetFramework};net8.0;net7.0;net6.0;net5.0 - - - - - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.js"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "PackageLibraryTransitiveDependency.lib.module.js"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var pack = CreatePackCommand(projectDirectory); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result.Should().NuPkgContainsPatterns( - packagePath, - filePatterns: new[] - { - Path.Combine("staticwebassets", "exampleJsInterop.js"), - Path.Combine("staticwebassets", "background.png"), - Path.Combine("staticwebassets", "Component1.razor.js"), - Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.*.bundle.scp.css"), - Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.*.lib.module.js"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") - }); - } - - [Fact] - public void Pack_Incremental_MultipleTargetFrameworks_WithScopedCssAndJsModules_IncludesAssetsAndProjectBundle() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - {ToolsetInfo.CurrentTargetFramework};net8.0;net7.0;net6.0;net5.0 - - - - - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.js"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "PackageLibraryTransitiveDependency.lib.module.js"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var pack = CreatePackCommand(projectDirectory); - - var pack2 = CreatePackCommand(projectDirectory); - var result2 = pack2.Execute(); - - result2.Should().Pass(); - - var outputPath = pack2.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result2.Should().NuPkgContainsPatterns( - packagePath, - filePatterns: new[] - { - Path.Combine("staticwebassets", "exampleJsInterop.js"), - Path.Combine("staticwebassets", "background.png"), - Path.Combine("staticwebassets", "Component1.razor.js"), - Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.*.bundle.scp.css"), - Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.*.lib.module.js"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryTransitiveDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryTransitiveDependency.props") - }); - } - - [Fact] - public void Pack_MultipleTargetFrameworks_WithScopedCssAndJsModules_DoesNotIncludeApplicationBundleNorModulesManifest() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges(document => - { - var parse = XDocument.Parse($@" - - - {ToolsetInfo.CurrentTargetFramework};net8.0;net7.0;net6.0;net5.0 - - - - - - - - - - - -"); - document.Root.ReplaceWith(parse.Root); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "wwwroot"), recursive: true); - - var componentText = @"
- This component is defined in the razorclasslibrarypack library. -
"; - - // This mimics the structure of our default template project - Directory.CreateDirectory(Path.Combine(projectDirectory.Path, "wwwroot")); - File.WriteAllText(Path.Combine(projectDirectory.Path, "_Imports.razor"), "@using Microsoft.AspNetCore.Components.Web" + Environment.NewLine); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor"), componentText); - File.WriteAllText(Path.Combine(projectDirectory.Path, "Component1.razor.css"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "ExampleJsInterop.cs"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "background.png"), ""); - File.WriteAllText(Path.Combine(projectDirectory.Path, "wwwroot", "exampleJsInterop.js"), ""); - - var pack = CreatePackCommand(projectDirectory); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - var packagePath = Path.Combine( - projectDirectory.Path, - "bin", - "Debug", - "PackageLibraryTransitiveDependency.1.0.0.nupkg"); - - result.Should().NuPkgDoesNotContain( - packagePath, - filePaths: new[] - { - Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.styles.css"), - Path.Combine("staticwebassets", "PackageLibraryTransitiveDependency.modules.json"), - }); - } - - [Fact] - public void Pack_MultipleTargetFrameworks_DoesNotIncludeAssetsAsContent() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - projectDirectory.WithProjectChanges((project, document) => - { - var tfm = document.Descendants("TargetFramework").Single(); - tfm.Name = "TargetFrameworks"; - tfm.FirstNode.ReplaceWith(tfm.FirstNode.ToString() + ";netstandard2.1"); - - document.Descendants("AddRazorSupportForMvc").SingleOrDefault()?.Remove(); - document.Descendants("FrameworkReference").SingleOrDefault()?.Remove(); - }); - - Directory.Delete(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "Components"), recursive: true); - - var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result.Should().NuPkgDoesNotContain( - Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "bin", "Debug", "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePaths: new[] - { - Path.Combine("content", "wwwroot", "js", "pkg-direct-dep.js"), - Path.Combine("content", "wwwroot", "css", "site.css"), - Path.Combine("contentFiles", "wwwroot", "js", "pkg-direct-dep.js"), - Path.Combine("contentFiles", "wwwroot", "css", "site.css"), - }); - } - - [Fact] - public void Pack_DoesNotInclude_TransitiveBundleOrScopedCssAsStaticWebAsset() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result.Should().NuPkgDoesNotContain( - Path.Combine(pack.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePaths: new[] - { - // This is to make sure we don't include the scoped css files on the package when bundling is enabled. - Path.Combine("staticwebassets", "Components", "App.razor.rz.scp.css"), - Path.Combine("staticwebassets", "PackageLibraryDirectDependency.styles.css"), - }); - } - - [Fact] - public void Pack_DoesNotIncludeStaticWebAssetsAsContent() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = ExecuteCommand(pack); - - result.Should().Pass(); - - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result.Should().NuPkgDoesNotContain( - Path.Combine(pack.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePaths: new[] - { - Path.Combine("content", "wwwroot", "js", "pkg-direct-dep.js"), - Path.Combine("content", "wwwroot", "css", "site.css"), - Path.Combine("content", "Components", "App.razor.css"), - // This is to make sure we don't include the unscoped css file on the package. - Path.Combine("content", "Components", "App.razor.css"), - Path.Combine("content", "Components", "App.razor.rz.scp.css"), - Path.Combine("contentFiles", "wwwroot", "js", "pkg-direct-dep.js"), - Path.Combine("contentFiles", "wwwroot", "css", "site.css"), - Path.Combine("contentFiles", "Components", "App.razor.css"), - Path.Combine("contentFiles", "Components", "App.razor.rz.scp.css"), - }); - } - - [Fact] - public void Pack_NoBuild_IncludesStaticWebAssets() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - var build = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); - build.Execute().Should().Pass(); - - var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = pack.Execute("/p:NoBuild=true"); - - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result.Should().NuPkgContainsPatterns( - Path.Combine(build.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePatterns: new[] - { - Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), - Path.Combine("staticwebassets", "PackageLibraryDirectDependency.*.bundle.scp.css"), - Path.Combine("staticwebassets", "css", "site.css"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryDirectDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") - }); - } - - [Fact] - public void Pack_NoBuild_DoesNotIncludeFilesAsContent() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - var build = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); - build.Execute().Should().Pass(); - - var pack = CreatePackCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = pack.Execute("/p:NoBuild=true"); - - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result.Should().NuPkgDoesNotContain( - Path.Combine(pack.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePaths: new[] - { - Path.Combine("content", "wwwroot", "js", "pkg-direct-dep.js"), - Path.Combine("content", "PackageLibraryDirectDependency.bundle.scp.css"), - Path.Combine("content", "wwwroot", "css", "site.css"), - Path.Combine("contentFiles", "wwwroot", "js", "pkg-direct-dep.js"), - Path.Combine("contentFiles", "PackageLibraryDirectDependency.bundle.scp.css"), - Path.Combine("contentFiles", "wwwroot", "css", "site.css"), - }); - } - - [Fact] - public void Pack_DoesNotIncludeAnyCustomPropsFiles_WhenNoStaticAssetsAreAvailable() - { - var testAsset = "RazorComponentLibrary"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset); - - var pack = CreatePackCommand(projectDirectory); - var result = ExecuteCommand(pack); - - var outputPath = pack.GetOutputDirectory("netstandard2.0", "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "ComponentLibrary.dll")).Should().Exist(); - - result.Should().NuPkgDoesNotContain( - Path.Combine(projectDirectory.Path, "bin", "Debug", "ComponentLibrary.1.0.0.nupkg"), - filePaths: new[] - { - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "ComponentLibrary.props"), - Path.Combine("buildMultiTargeting", "ComponentLibrary.props"), - Path.Combine("buildTransitive", "ComponentLibrary.props") - }); - } - - [Fact] - public void Pack_Incremental_DoesNotRegenerateCacheAndPropsFiles() - { - var testAsset = "PackageLibraryTransitiveDependency"; - var projectDirectory = _testAssetsManager - .CopyTestAsset(testAsset, testAssetSubdirectory: "TestPackages") - .WithSource(); - - var pack = CreatePackCommand(projectDirectory); - var result = ExecuteCommand(pack); - - var intermediateOutputPath = pack.GetIntermediateDirectory(DefaultTfm, "Debug").ToString(); - var outputPath = pack.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryTransitiveDependency.dll")).Should().Exist(); - - new FileInfo(Path.Combine(intermediateOutputPath, "staticwebassets", "msbuild.PackageLibraryTransitiveDependency.Microsoft.AspNetCore.StaticWebAssets.props")).Should().Exist(); - new FileInfo(Path.Combine(intermediateOutputPath, "staticwebassets", "msbuild.build.PackageLibraryTransitiveDependency.props")).Should().Exist(); - new FileInfo(Path.Combine(intermediateOutputPath, "staticwebassets", "msbuild.buildMultiTargeting.PackageLibraryTransitiveDependency.props")).Should().Exist(); - new FileInfo(Path.Combine(intermediateOutputPath, "staticwebassets", "msbuild.buildTransitive.PackageLibraryTransitiveDependency.props")).Should().Exist(); - - var directoryPath = Path.Combine(intermediateOutputPath, "staticwebassets"); - var thumbPrints = new Dictionary(); - var thumbPrintFiles = new[] - { - Path.Combine(directoryPath, "msbuild.PackageLibraryTransitiveDependency.Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine(directoryPath, "msbuild.build.PackageLibraryTransitiveDependency.props"), - Path.Combine(directoryPath, "msbuild.buildMultiTargeting.PackageLibraryTransitiveDependency.props"), - Path.Combine(directoryPath, "msbuild.buildTransitive.PackageLibraryTransitiveDependency.props"), - }; - - foreach (var file in thumbPrintFiles) - { - var thumbprint = FileThumbPrint.Create(file); - thumbPrints[file] = thumbprint; - } - - // Act - var incremental = CreatePackCommand(projectDirectory); - incremental.Execute().Should().Pass(); - foreach (var file in thumbPrintFiles) - { - var thumbprint = FileThumbPrint.Create(file); - Assert.Equal(thumbPrints[file], thumbprint); - } - } - - [Fact] - public void Build_StaticWebAssets_GeneratePackageOnBuild_PacksStaticWebAssets() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - File.WriteAllText(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "wwwroot", "LICENSE"), "license file contents"); - - var buildCommand = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = buildCommand.Execute("/p:GeneratePackageOnBuild=true"); - - result.Should().Pass(); - - var outputPath = buildCommand.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result.Should().NuPkgContainsPatterns( - Path.Combine(buildCommand.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePatterns: new[] - { - Path.Combine("staticwebassets", "js", "pkg-direct-dep.js"), - Path.Combine("staticwebassets", "css", "site.css"), - Path.Combine("staticwebassets", "PackageLibraryDirectDependency.*.bundle.scp.css"), - Path.Combine("build", "Microsoft.AspNetCore.StaticWebAssets.props"), - Path.Combine("build", "PackageLibraryDirectDependency.props"), - Path.Combine("buildMultiTargeting", "PackageLibraryDirectDependency.props"), - Path.Combine("buildTransitive", "PackageLibraryDirectDependency.props") - }); - } - - [Fact] - public void Build_StaticWebAssets_GeneratePackageOnBuild_DoesNotIncludeAssetsAsContent() - { - var testAsset = "PackageLibraryDirectDependency"; - var projectDirectory = CreateAspNetSdkTestAsset(testAsset, subdirectory: "TestPackages"); - - File.WriteAllText(Path.Combine(projectDirectory.Path, "PackageLibraryDirectDependency", "wwwroot", "LICENSE"), "license file contents"); - - var buildCommand = CreateBuildCommand(projectDirectory, "PackageLibraryDirectDependency"); - var result = buildCommand.Execute("/p:GeneratePackageOnBuild=true"); - - result.Should().Pass(); - - var outputPath = buildCommand.GetOutputDirectory(DefaultTfm, "Debug").ToString(); - - new FileInfo(Path.Combine(outputPath, "PackageLibraryDirectDependency.dll")).Should().Exist(); - - result.Should().NuPkgDoesNotContainPatterns( - Path.Combine(buildCommand.GetPackageDirectory().FullName, "PackageLibraryDirectDependency.1.0.0.nupkg"), - filePatterns: new[] - { - Path.Combine("content", "js", "pkg-direct-dep.js"), - Path.Combine("content", "css", "site.css"), - Path.Combine("content", "PackageLibraryDirectDependency.*.bundle.scp.css"), - Path.Combine("contentFiles", "js", "pkg-direct-dep.js"), - Path.Combine("contentFiles", "css", "site.css"), - Path.Combine("contentFiles", "PackageLibraryDirectDependency.bundle.scp.css"), - }); - } - } -} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/Microsoft.NET.Sdk.StaticWebAssets.Tests.csproj b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/Microsoft.NET.Sdk.StaticWebAssets.Tests.csproj index 2082a6ebd051..377507009b2d 100644 --- a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/Microsoft.NET.Sdk.StaticWebAssets.Tests.csproj +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/Microsoft.NET.Sdk.StaticWebAssets.Tests.csproj @@ -56,4 +56,13 @@
+ + + PreserveNewest + + + PreserveNewest + + +
diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineFactory2.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineFactory2.cs deleted file mode 100644 index 5fab307f1473..000000000000 --- a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsBaselineFactory2.cs +++ /dev/null @@ -1,452 +0,0 @@ -// 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 System.Runtime.Versioning; -using System.Text.RegularExpressions; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using NuGet.Frameworks; -using NuGet.ProjectModel; - -namespace Microsoft.NET.Sdk.StaticWebAssets.Tests; -public partial class StaticWebAssetsBaselineFactory -{ - [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.bundle\.scp\.css)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] - private static partial Regex ScopedProjectBundleRegex(); - - [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.styles\.css)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] - private static partial Regex ScopedAppBundleRegex(); - - [GeneratedRegex("""fingerprint-site(\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.css)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] - private static partial Regex FingerprintedSiteCssRegex(); - - [GeneratedRegex("""(?:#\[\.{fingerprint=[0123456789abcdefghijklmnopqrstuvwxyz]{10}\}](\?|\!)?)""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] - private static partial Regex EmbeddedFingerprintExpression(); - - [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.lib\.module\.js)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] - private static partial Regex JSInitializerRegex(); - - [GeneratedRegex("""(.*\.)([0123456789abcdefghijklmnopqrstuvwxyz]{10})(\.modules\.json)((?:\.gz)|(?:\.br))?$""", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)] - private static partial Regex JSModuleManifestRegex(); - - private static readonly IList<(Regex expression, string replacement)> WellKnownFileNamePatternsAndReplacements = - [ - (ScopedProjectBundleRegex(),"$1__fingerprint__$3$4"), - (ScopedAppBundleRegex(),"$1__fingerprint__$3$4"), - (JSInitializerRegex(), "$1__fingerprint__$3$4"), - (JSModuleManifestRegex(), "$1__fingerprint__$3$4"), - (EmbeddedFingerprintExpression(), "#[.{fingerprint=__fingerprint__}]$1"), - (FingerprintedSiteCssRegex(), "fingerprint-site$1__fingerprint__$3$4"), - ]; - - public static StaticWebAssetsBaselineFactory Instance { get; } = new(); - - public IList KnownExtensions { get; } = - [ - // Keep this list of most specific to less specific - ".dll.gz", - ".dll.br", - ".dll", - ".wasm.gz", - ".wasm.br", - ".wasm", - ".js.gz", - ".js.br", - ".js", - ".html", - ".pdb", - ]; - - public IList KnownFilePrefixesWithHashOrVersion { get; } = - [ - "blazor.web.", - "blazor.server", - "dotnet.runtime", - "dotnet.native", - "dotnet.boot", - "dotnet" - ]; - - public void ToTemplate( - StaticWebAssetsManifest manifest, - string projectRoot, - string restorePath, - string runtimeIdentifier) - { - manifest.Hash = "__hash__"; - var assetsByIdentity = manifest.Assets.ToDictionary(a => a.Identity); - var endpointsByAssetFile = manifest.Endpoints.GroupBy(e => e.AssetFile).ToDictionary(g => g.Key, g => g.ToArray()); - foreach (var asset in manifest.Assets) - { - var relatedEndpoints = endpointsByAssetFile.GetValueOrDefault(asset.Identity); - TemplatizeAsset(projectRoot, restorePath, runtimeIdentifier, asset); - foreach (var endpoint in relatedEndpoints ?? []) - { - endpoint.AssetFile = asset.Identity; - } - if (asset.AssetTraitName == "Content-Encoding") - { - var basePath = asset.BasePath.Replace('/', Path.DirectorySeparatorChar).TrimStart(Path.DirectorySeparatorChar); - var relativePath = asset.RelativePath.Replace('/', Path.DirectorySeparatorChar); - var identity = asset.Identity.Replace('\\', Path.DirectorySeparatorChar); - var originalItemSpec = asset.OriginalItemSpec.Replace('\\', Path.DirectorySeparatorChar); - - asset.Identity = Path.Combine(Path.GetDirectoryName(identity), basePath, relativePath); - asset.Identity = asset.Identity.Replace(Path.DirectorySeparatorChar, '\\'); - foreach (var endpoint in relatedEndpoints ?? []) - { - endpoint.AssetFile = asset.Identity; - } - asset.OriginalItemSpec = Path.Combine(Path.GetDirectoryName(originalItemSpec), basePath, relativePath); - asset.OriginalItemSpec = asset.OriginalItemSpec.Replace(Path.DirectorySeparatorChar, '\\'); - } - else if ((asset.Identity.EndsWith(".gz", StringComparison.OrdinalIgnoreCase) || asset.Identity.EndsWith(".br", StringComparison.OrdinalIgnoreCase)) - && asset.AssetTraitName == "" && asset.RelatedAsset == "") - { - // Old .NET 5.0 implementation - var identity = asset.Identity.Replace('\\', Path.DirectorySeparatorChar); - var originalItemSpec = asset.OriginalItemSpec.Replace('\\', Path.DirectorySeparatorChar); - - asset.Identity = Path.Combine(Path.GetDirectoryName(identity), Path.GetFileName(originalItemSpec) + Path.GetExtension(identity)) - .Replace(Path.DirectorySeparatorChar, '\\'); - } - } - - foreach (var endpoint in manifest.Endpoints) - { - for (var i = 0; i < endpoint.ResponseHeaders.Length; i++) - { - ref var header = ref endpoint.ResponseHeaders[i]; - switch (header.Name) - { - case "Content-Length": - header.Value = "__content-length__"; - break; - case "ETag": - header.Value = "__etag__"; - break; - case "Last-Modified": - header.Value = "__last-modified__"; - break; - case "Link": - var cleaned = new List(); - var values = header.Value.Split(',').Select(v => v.Trim()); - foreach (var value in values) - { - var segments = value.Split(';').Select(v => v.Trim()).ToArray(); - var file = segments[0][1..^1]; - segments[0] = $"<{ReplaceFileName(file).Replace('\\', '/')}>"; - cleaned.Add(string.Join("; ", segments)); - } - header.Value = string.Join(", ", cleaned); - - break; - default: - break; - } - } - - for (var i = 0; i < endpoint.EndpointProperties.Length; i++) - { - ref var property = ref endpoint.EndpointProperties[i]; - switch (property.Name) - { - case "fingerprint": - property.Value = "__fingerprint__"; - endpoint.Route = endpoint.Route.Replace(property.Value, $"__{property.Name}__"); - break; - case "integrity": - property.Value = "__integrity__"; - break; - default: - break; - } - - ReplaceFileName(endpoint.Route); - } - - for (var i = 0; i < endpoint.Selectors.Length; i++) - { - ref var selector = ref endpoint.Selectors[i]; - selector.Quality = "__quality__"; - } - - endpoint.Route = TemplatizeFilePath(endpoint.Route, null, null, null, null, null).Replace("\\", "/"); - - endpoint.AssetFile = TemplatizeFilePath( - endpoint.AssetFile, - restorePath, - projectRoot, - null, - null, - runtimeIdentifier); - } - - foreach (var discovery in manifest.DiscoveryPatterns) - { - discovery.ContentRoot = discovery.ContentRoot.Replace(projectRoot, "${ProjectPath}", StringComparison.OrdinalIgnoreCase); - discovery.ContentRoot = discovery.ContentRoot.Replace(Path.DirectorySeparatorChar, '\\'); - - discovery.Name = discovery.Name.Replace(Path.DirectorySeparatorChar, '\\'); - discovery.Pattern = discovery.Pattern.Replace(Path.DirectorySeparatorChar, '\\'); - } - - foreach (var relatedManifest in manifest.ReferencedProjectsConfiguration) - { - relatedManifest.Identity = relatedManifest.Identity.Replace(projectRoot, "${ProjectPath}").Replace(Path.DirectorySeparatorChar, '\\'); - } - - // Sor everything now to ensure we produce stable baselines independent of the machine they were generated on. - Array.Sort(manifest.DiscoveryPatterns, (l, r) => StringComparer.Ordinal.Compare(l.Name, r.Name)); - Array.Sort(manifest.Assets); - foreach (var endpoint in manifest.Endpoints) - { - Array.Sort(endpoint.Selectors); - Array.Sort(endpoint.EndpointProperties); - Array.Sort(endpoint.ResponseHeaders); - } - Array.Sort(manifest.Endpoints); - - Array.Sort(manifest.ReferencedProjectsConfiguration, (l, r) => StringComparer.Ordinal.Compare(l.Identity, r.Identity)); - } - - private void TemplatizeAsset(string projectRoot, string restorePath, string runtimeIdentifier, StaticWebAsset asset) - { - asset.Identity = TemplatizeFilePath( - asset.Identity, - restorePath, - projectRoot, - null, - null, - runtimeIdentifier); - - asset.RelativePath = TemplatizeFilePath( - asset.RelativePath, - null, - null, - null, - null, - runtimeIdentifier).Replace('\\', '/'); - - asset.ContentRoot = TemplatizeFilePath( - asset.ContentRoot, - restorePath, - projectRoot, - null, - null, - runtimeIdentifier); - - asset.RelatedAsset = TemplatizeFilePath( - asset.RelatedAsset, - restorePath, - projectRoot, - null, - null, - runtimeIdentifier); - - asset.OriginalItemSpec = TemplatizeFilePath( - asset.OriginalItemSpec, - restorePath, - projectRoot, - null, - null, - runtimeIdentifier); - - asset.Fingerprint = string.IsNullOrEmpty(asset.Fingerprint) ? asset.Fingerprint : "__fingerprint__"; - asset.Integrity = string.IsNullOrEmpty(asset.Integrity) ? asset.Integrity : "__integrity__"; - asset.FileLength = -1; - asset.LastWriteTime = DateTimeOffset.MinValue; - } - - internal IEnumerable TemplatizeExpectedFiles( - IEnumerable files, - string restorePath, - string projectPath, - string intermediateOutputPath, - string buildOrPublishFolder) - { - foreach (var file in files) - { - var updated = TemplatizeFilePath( - file, - restorePath, - projectPath, - intermediateOutputPath, - buildOrPublishFolder, - null); - - yield return updated; - } - } - - public string TemplatizeFilePath( - string file, - string restorePath, - string projectPath, - string intermediateOutputPath, - string buildOrPublishFolder, - string runtimeIdentifier) - { - var updated = file switch - { - var processed when file.StartsWith('$') => processed, - var fromBuildOrPublishPath when buildOrPublishFolder is not null && file.StartsWith(buildOrPublishFolder, StringComparison.OrdinalIgnoreCase) => - TemplatizeBuildOrPublishPath(buildOrPublishFolder, fromBuildOrPublishPath), - var fromIntermediateOutputPath when intermediateOutputPath is not null && file.StartsWith(intermediateOutputPath, StringComparison.OrdinalIgnoreCase) => - TemplatizeIntermediatePath(intermediateOutputPath, fromIntermediateOutputPath), - var fromPackage when restorePath is not null && file.StartsWith(restorePath, StringComparison.OrdinalIgnoreCase) => - TemplatizeNugetPath(restorePath, fromPackage), - var fromProject when projectPath is not null && file.StartsWith(projectPath, StringComparison.OrdinalIgnoreCase) => - TemplatizeProjectPath(projectPath, fromProject, runtimeIdentifier), - _ => - ReplaceSegments(file, (i, segments) => i switch - { - 2 when segments[0] is "obj" or "bin" => "${Tfm}", - var last when i == segments.Length - 1 => RemovePossibleHash(segments[last]), - _ => segments[i] - }) - }; - - return ReplaceFileName(updated).Replace('/', '\\'); - } - - private static string ReplaceFileName(string path) - { - var directory = Path.GetDirectoryName(path); - var fileName = Path.GetFileName(path); - foreach (var (expression, replacement) in WellKnownFileNamePatternsAndReplacements) - { - if (expression.IsMatch(fileName)) - { - fileName = expression.Replace(fileName, replacement); - return Path.Combine(directory, fileName); - } - } - - return path; - } - - private string TemplatizeBuildOrPublishPath(string outputPath, string file) - { - file = file.Replace(outputPath, "${OutputPath}") - .Replace('\\', '/'); - - file = ReplaceSegments(file, (i, segments) => i switch - { - _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), - _ => segments[i], - }); - - return file; - } - - private string TemplatizeIntermediatePath(string intermediatePath, string file) - { - file = file.Replace(intermediatePath, "${IntermediateOutputPath}") - .Replace('\\', '/'); - - file = ReplaceSegments(file, (i, segments) => i switch - { - 3 when segments[1] is "obj" or "bin" => "${Tfm}", - _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), - _ => segments[i] - }); - - return file; - } - - private string TemplatizeProjectPath(string projectPath, string file, string runtimeIdentifier) - { - file = file.Replace(projectPath, "${ProjectPath}") - .Replace('\\', '/'); - - file = ReplaceSegments(file, (i, segments) => i switch - { - 3 when segments[1] is "obj" or "bin" => "${Tfm}", - 4 when segments[2] is "obj" or "bin" => "${Tfm}", - 4 when segments[1] is "obj" or "bin" && segments[4] == runtimeIdentifier => "${Rid}", - 5 when segments[2] is "obj" or "bin" && segments[5] == runtimeIdentifier => "${Rid}", - _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), - _ => segments[i] - }); - - return file; - } - - private string TemplatizeNugetPath(string restorePath, string file) - { - file = file.Replace(restorePath, "${RestorePath}", StringComparison.OrdinalIgnoreCase) - .Replace('\\', '/'); - if (file.Contains("runtimes")) - { - file = ReplaceSegments(file, (i, segments) => i switch - { - 2 => "${RuntimeVersion}", - 6 when !file.Contains("native") => "${Tfm}", - _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), - _ => segments[i], - }); - } - else - { - file = ReplaceSegments(file, (i, segments) => i switch - { - 2 => "${PackageVersion}", - 4 when IsFramework(segments[4]) => "${Tfm}", - _ when i == segments.Length - 1 => RemovePossibleHash(segments[i]), - _ => segments[i], - }); - } - - return file; - - static bool IsFramework(string segment) - { - try - { - var tfm = NuGetFramework.ParseFolder(segment); - - return tfm.Framework is FrameworkConstants.FrameworkIdentifiers.NetCoreApp or - FrameworkConstants.FrameworkIdentifiers.NetStandard or - FrameworkConstants.FrameworkIdentifiers.NetCore or - FrameworkConstants.FrameworkIdentifiers.Net; - } - catch - { - return false; - } - } - } - - private static string ReplaceSegments(string file, Func selector) - { - var segments = file.Split('\\', '/'); - var newSegments = new List(); - - // Segments have the following shape `${RestorePath}/PackageName/PackageVersion/lib/Tfm/dll`. - // We want to replace PackageVersion and Tfm with tokens so that they do not cause issues. - for (var i = 0; i < segments.Length; i++) - { - newSegments.Add(selector(i, segments)); - } - - return string.Join(Path.DirectorySeparatorChar, newSegments); - } - - private string RemovePossibleHash(string fileNameAndExtension) - { - var filename = KnownFilePrefixesWithHashOrVersion.FirstOrDefault(p => fileNameAndExtension.StartsWith(p)); - if (filename != null && filename.EndsWith(".")) - { - filename = filename[..^1]; - } - var extension = KnownExtensions.FirstOrDefault(f => fileNameAndExtension.EndsWith(f, StringComparison.OrdinalIgnoreCase)); - if (filename != null && extension != null) - { - fileNameAndExtension = filename + extension; - } - - return fileNameAndExtension; - } -} diff --git a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsIntegrationTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsIntegrationTest.cs index f18d611cf66c..c13c8b2d5c6b 100644 --- a/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsIntegrationTest.cs +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/StaticWebAssetsIntegrationTest.cs @@ -474,10 +474,19 @@ public void Publish_WithExternalProjectReference_UpdatesAssets() { if (Path.GetFileName(name).Equals("ClassLibrary.csproj", StringComparison.Ordinal)) { - project.Root.Attribute("Sdk").Value = "Microsoft.NET.Sdk"; + var sdkAttribute = project.Root.Attribute("Sdk"); + if (sdkAttribute == null) + { + sdkAttribute = new XAttribute("Sdk", "Microsoft.NET.Sdk"); + project.Root.Add(sdkAttribute); + } + else + { + sdkAttribute.Value = "Microsoft.NET.Sdk"; + } project.Root.AddFirst(new XElement("Import", new XAttribute("Project", "ExternalStaticAssets.targets"))); - using var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("Microsoft.NET.Sdk.Razor.Tests.content.ExternalStaticAssets.targets"); + using var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("Microsoft.NET.Sdk.StaticWebAssets.Tests.content.ExternalStaticAssets.targets"); using var destination = File.OpenWrite(Path.Combine(Path.GetDirectoryName(name), "ExternalStaticAssets.targets")); stream.CopyTo(destination); } @@ -520,10 +529,19 @@ public void Build_WithExternalProjectReference_UpdatesAssets() { if (Path.GetFileName(name).Equals("ClassLibrary.csproj", StringComparison.Ordinal)) { - project.Root.Attribute("Sdk").Value = "Microsoft.NET.Sdk"; + var sdkAttribute = project.Root.Attribute("Sdk"); + if (sdkAttribute == null) + { + sdkAttribute = new XAttribute("Sdk", "Microsoft.NET.Sdk"); + project.Root.Add(sdkAttribute); + } + else + { + sdkAttribute.Value = "Microsoft.NET.Sdk"; + } project.Root.AddFirst(new XElement("Import", new XAttribute("Project", "ExternalStaticAssets.targets"))); - using var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("Microsoft.NET.Sdk.Razor.Tests.content.ExternalStaticAssets.targets"); + using var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("Microsoft.NET.Sdk.StaticWebAssets.Tests.content.ExternalStaticAssets.targets"); using var destination = File.OpenWrite(Path.Combine(Path.GetDirectoryName(name), "ExternalStaticAssets.targets")); stream.CopyTo(destination); } diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/TestFiles/Generated/Counter.razor.rz.scp.css b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/TestFiles/Generated/Counter.razor.rz.scp.css similarity index 100% rename from test/Microsoft.NET.Sdk.Razor.Tests/TestFiles/Generated/Counter.razor.rz.scp.css rename to test/Microsoft.NET.Sdk.StaticWebAssets.Tests/TestFiles/Generated/Counter.razor.rz.scp.css diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/TestFiles/Generated/FetchData.razor.rz.scp.css b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/TestFiles/Generated/FetchData.razor.rz.scp.css similarity index 100% rename from test/Microsoft.NET.Sdk.Razor.Tests/TestFiles/Generated/FetchData.razor.rz.scp.css rename to test/Microsoft.NET.Sdk.StaticWebAssets.Tests/TestFiles/Generated/FetchData.razor.rz.scp.css diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/TestFiles/Generated/Index.razor.rz.scp.css b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/TestFiles/Generated/Index.razor.rz.scp.css similarity index 100% rename from test/Microsoft.NET.Sdk.Razor.Tests/TestFiles/Generated/Index.razor.rz.scp.css rename to test/Microsoft.NET.Sdk.StaticWebAssets.Tests/TestFiles/Generated/Index.razor.rz.scp.css diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/TestFiles/Generated/lib.bundle.scp.css b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/TestFiles/Generated/lib.bundle.scp.css similarity index 100% rename from test/Microsoft.NET.Sdk.Razor.Tests/TestFiles/Generated/lib.bundle.scp.css rename to test/Microsoft.NET.Sdk.StaticWebAssets.Tests/TestFiles/Generated/lib.bundle.scp.css diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/TestFiles/Generated/package.bundle.scp.css b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/TestFiles/Generated/package.bundle.scp.css similarity index 100% rename from test/Microsoft.NET.Sdk.Razor.Tests/TestFiles/Generated/package.bundle.scp.css rename to test/Microsoft.NET.Sdk.StaticWebAssets.Tests/TestFiles/Generated/package.bundle.scp.css From f2e77547214fba43dbaf08e02bf996febe83e5e9 Mon Sep 17 00:00:00 2001 From: Javier Calvarro Nelson Date: Thu, 3 Jul 2025 12:32:13 +0200 Subject: [PATCH 3/3] Tests moved --- .../BlazorLegacyIntegrationTest50.cs | 2 +- .../BlazorLegacyIntegrationTest60.cs | 6 +- .../BlazorMultitargetIntegrationTest.cs | 2 +- .../BlazorWasmBaselineTests.cs | 2 +- ...oft.NET.Sdk.BlazorWebAssembly.Tests.csproj | 8 +- .../AspNetSdkBaselineTest.cs | 327 ------------------ ...NuGetPackageFolderAspNetSdkBaselineTest.cs | 26 -- .../Microsoft.NET.Sdk.Razor.Tests.csproj | 2 +- .../JsModulesIntegrationTest.cs | 2 +- .../ScopedCssIntegrationTests.cs | 2 +- 10 files changed, 13 insertions(+), 366 deletions(-) delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/AspNetSdkBaselineTest.cs delete mode 100644 test/Microsoft.NET.Sdk.Razor.Tests/IsolatedNuGetPackageFolderAspNetSdkBaselineTest.cs rename test/{Microsoft.NET.Sdk.Razor.Tests => Microsoft.NET.Sdk.StaticWebAssets.Tests}/JsModulesIntegrationTest.cs (99%) rename test/{Microsoft.NET.Sdk.Razor.Tests => Microsoft.NET.Sdk.StaticWebAssets.Tests}/ScopedCssIntegrationTests.cs (99%) diff --git a/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorLegacyIntegrationTest50.cs b/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorLegacyIntegrationTest50.cs index cd4d37691232..90ee6f27c0ca 100644 --- a/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorLegacyIntegrationTest50.cs +++ b/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorLegacyIntegrationTest50.cs @@ -1,7 +1,7 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. -using Microsoft.NET.Sdk.Razor.Tests; +using Microsoft.NET.Sdk.StaticWebAssets.Tests; namespace Microsoft.NET.Sdk.BlazorWebAssembly.Tests { diff --git a/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorLegacyIntegrationTest60.cs b/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorLegacyIntegrationTest60.cs index a1421b976d8d..8b494c58c2e6 100644 --- a/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorLegacyIntegrationTest60.cs +++ b/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorLegacyIntegrationTest60.cs @@ -2,7 +2,7 @@ // The .NET Foundation licenses this file to you under the MIT license. using Microsoft.AspNetCore.StaticWebAssets.Tasks; -using Microsoft.NET.Sdk.Razor.Tests; +using Microsoft.NET.Sdk.StaticWebAssets.Tests; namespace Microsoft.NET.Sdk.BlazorWebAssembly.Tests { @@ -10,12 +10,12 @@ public class BlazorLegacyIntegrationTest60(ITestOutputHelper log) : IsolatedNuGetPackageFolderAspNetSdkBaselineTest(log, nameof(BlazorLegacyIntegrationTest60)) { - protected override string EmbeddedResourcePrefix => + protected override string EmbeddedResourcePrefix => string.Join('.', "Microsoft.NET.Sdk.BlazorWebAssembly.Tests", "StaticWebAssetsBaselines"); protected override string ComputeBaselineFolder() => Path.Combine(TestContext.GetRepoRoot() ?? AppContext.BaseDirectory, "test", "Microsoft.NET.Sdk.BlazorWebAssembly.Tests", "StaticWebAssetsBaselines"); - + [CoreMSBuildOnlyFact] public void Build60Hosted_Works() { diff --git a/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorMultitargetIntegrationTest.cs b/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorMultitargetIntegrationTest.cs index 9b3940520cc7..2fe340a9e079 100644 --- a/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorMultitargetIntegrationTest.cs +++ b/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorMultitargetIntegrationTest.cs @@ -1,7 +1,7 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. -using Microsoft.NET.Sdk.Razor.Tests; +using Microsoft.NET.Sdk.StaticWebAssets.Tests; namespace Microsoft.NET.Sdk.BlazorWebAssembly.Tests { diff --git a/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorWasmBaselineTests.cs b/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorWasmBaselineTests.cs index 0ab6b08df351..6a21d104b8fd 100644 --- a/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorWasmBaselineTests.cs +++ b/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/BlazorWasmBaselineTests.cs @@ -1,7 +1,7 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. -using Microsoft.NET.Sdk.Razor.Tests; +using Microsoft.NET.Sdk.StaticWebAssets.Tests; namespace Microsoft.NET.Sdk.BlazorWebAssembly.Tests { diff --git a/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests.csproj b/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests.csproj index 930e46bc261d..63e7982fac3e 100644 --- a/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests.csproj +++ b/test/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests.csproj @@ -36,10 +36,10 @@ - - - - + + + + diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/AspNetSdkBaselineTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/AspNetSdkBaselineTest.cs deleted file mode 100644 index 308873af2509..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/AspNetSdkBaselineTest.cs +++ /dev/null @@ -1,327 +0,0 @@ -// 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 System.Reflection; -using System.Runtime.CompilerServices; -using System.Text.Json; -using Microsoft.AspNetCore.StaticWebAssets.Tasks; - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - [Trait("AspNetCore", "BaselineTest")] - public class AspNetSdkBaselineTest : AspNetSdkTest - { - private static readonly JsonSerializerOptions BaselineSerializationOptions = new() { WriteIndented = true }; - private readonly StaticWebAssetsBaselineComparer _comparer; - private readonly StaticWebAssetsBaselineFactory _baselineFactory; - - private string _baselinesFolder; - -#if GENERATE_SWA_BASELINES - public static bool GenerateBaselines = true; -#else - public static bool GenerateBaselines = bool.TryParse(Environment.GetEnvironmentVariable("ASPNETCORE_TEST_BASELINES"), out var result) && result; -#endif - - private bool _generateBaselines = GenerateBaselines; - - public AspNetSdkBaselineTest(ITestOutputHelper log) : base(log) - { - TestAssembly = Assembly.GetCallingAssembly(); - var testAssemblyMetadata = TestAssembly.GetCustomAttributes(); - RuntimeVersion = testAssemblyMetadata.SingleOrDefault(a => a.Key == "NetCoreAppRuntimePackageVersion").Value; - DefaultPackageVersion = testAssemblyMetadata.SingleOrDefault(a => a.Key == "DefaultTestBaselinePackageVersion").Value; - _comparer = CreateBaselineComparer(); - _baselineFactory = CreateBaselineFactory(); - } - - protected void EnsureLocalPackagesExists() - { - var packTransitiveDependency = CreatePackCommand(ProjectDirectory, "RazorPackageLibraryTransitiveDependency"); - ExecuteCommand(packTransitiveDependency).Should().Pass(); - - var packDirectDependency = CreatePackCommand(ProjectDirectory, "RazorPackageLibraryDirectDependency"); - ExecuteCommand(packDirectDependency).Should().Pass(); - } - - public AspNetSdkBaselineTest(ITestOutputHelper log, bool generateBaselines) : this(log) - { - _generateBaselines = generateBaselines; - _comparer = CreateBaselineComparer(); - } - - public TestAsset ProjectDirectory { get; set; } - - public string RuntimeVersion { get; set; } - - public string DefaultPackageVersion { get; set; } - - public string BaselinesFolder => - _baselinesFolder ??= ComputeBaselineFolder(); - - protected Assembly TestAssembly { get; } - - protected virtual StaticWebAssetsBaselineComparer CreateBaselineComparer() => StaticWebAssetsBaselineComparer.Instance; - - private static StaticWebAssetsBaselineFactory CreateBaselineFactory() => StaticWebAssetsBaselineFactory.Instance; - - protected virtual string ComputeBaselineFolder() => - Path.Combine(TestContext.GetRepoRoot() ?? AppContext.BaseDirectory, "test", "Microsoft.NET.Sdk.Razor.Tests", "StaticWebAssetsBaselines"); - - protected virtual string EmbeddedResourcePrefix => string.Join('.', "Microsoft.NET.Sdk.Razor.Tests", "StaticWebAssetsBaselines"); - - public StaticWebAssetsManifest LoadBuildManifest(string suffix = "", [CallerMemberName] string name = "") - { - if (_generateBaselines) - { - return default; - } - else - { - using var stream = GetManifestEmbeddedResource(suffix, name, "Build"); - var manifest = StaticWebAssetsManifest.FromStream(stream); - return manifest; - } - } - - public StaticWebAssetsManifest LoadPublishManifest(string suffix = "", [CallerMemberName] string name = "") - { - if (_generateBaselines) - { - return default; - } - else - { - using var stream = GetManifestEmbeddedResource(suffix, name, "Publish"); - var manifest = StaticWebAssetsManifest.FromStream(stream); - return manifest; - } - } - - protected void AssertBuildAssets( - StaticWebAssetsManifest manifest, - string outputFolder, - string intermediateOutputPath, - string suffix = "", - [CallerMemberName] string name = "") - { - var fileEnumerationOptions = new EnumerationOptions { RecurseSubdirectories = true }; - var wwwRootFolder = Path.Combine(outputFolder, "wwwroot"); - var wwwRootFiles = Directory.Exists(wwwRootFolder) ? - Directory.GetFiles(wwwRootFolder, "*", fileEnumerationOptions) : - []; - - var computedFiles = manifest.Assets - .Where(a => a.SourceType is StaticWebAsset.SourceTypes.Computed && - a.AssetKind is not StaticWebAsset.AssetKinds.Publish); - - // We keep track of assets that need to be copied to the output folder. - // In addition to that, we copy assets that are defined somewhere different - // from their content root folder when the content root does not match the output folder. - // We do this to allow copying things like Publish assets to temporary locations during the - // build process if they are later on going to be transformed. - var copyToOutputDirectoryAssets = manifest.Assets.Where(a => a.ShouldCopyToOutputDirectory()).ToArray(); - var temporaryAsssets = manifest.Assets - .Where(a => - !a.HasContentRoot(Path.Combine(outputFolder, "wwwroot")) && - File.Exists(a.Identity) && - !File.Exists(Path.Combine(a.ContentRoot, a.RelativePath)) && - a.AssetTraitName != "Content-Encoding").ToArray(); - - var copyToOutputDirectoryFiles = copyToOutputDirectoryAssets - .Select(a => Path.GetFullPath(Path.Combine(outputFolder, "wwwroot", a.RelativePath))) - .Concat(temporaryAsssets - .Select(a => Path.GetFullPath(Path.Combine(a.ContentRoot, a.RelativePath)))) - .ToArray(); - - var existingFiles = _baselineFactory.TemplatizeExpectedFiles( - wwwRootFiles - .Concat(computedFiles.Select(a => a.Identity)) - .Concat(copyToOutputDirectoryFiles) - .Distinct() - .OrderBy(f => f, StringComparer.Ordinal) - .ToArray(), - GetNuGetCachePath() ?? TestContext.Current.NuGetCachePath, - ProjectDirectory.TestRoot, - intermediateOutputPath, - outputFolder).ToArray(); - - - if (!_generateBaselines) - { - var expected = LoadExpectedFilesBaseline(manifest.ManifestType, suffix, name) - .OrderBy(f => f, StringComparer.Ordinal); - - AssertFilesCore(existingFiles, expected); - } - else - { - File.WriteAllText( - GetExpectedFilesPath(suffix, name, manifest.ManifestType), - JsonSerializer.Serialize(existingFiles, BaselineSerializationOptions)); - } - } - - private static void AssertFilesCore(IEnumerable existingFiles, IEnumerable expected) - { - var existingSet = new HashSet(existingFiles); - var expectedSet = new HashSet(expected); - var different = new HashSet(existingFiles); - - different.SymmetricExceptWith(expectedSet); - - var messages = new List(); - if (existingSet.Count < expectedSet.Count) - { - messages.Add("The build produced less files than expected."); - } - else if (expectedSet.Count < existingSet.Count) - { - messages.Add("The build produced more files than expected."); - } - else if (different.Count > 0) - { - messages.Add("The build produced different files than expected."); - } - - ComputeDifferences(expectedSet, different, messages); - string.Join(Environment.NewLine, messages).Should().BeEmpty(); - - static void ComputeDifferences(HashSet existingSet, HashSet different, List messages) - { - foreach (var file in different) - { - if (existingSet.Contains(file)) - { - messages.Add($"The file '{file}' is not in the baseline."); - } - else - { - messages.Add($"The file '{file}' is missing from the build."); - } - } - } - } - - protected void AssertPublishAssets( - StaticWebAssetsManifest manifest, - string publishFolder, - string intermediateOutputPath, - string suffix = "", - [CallerMemberName] string name = "") - { - var fileEnumerationOptions = new EnumerationOptions { RecurseSubdirectories = true }; - string wwwRootFolder = Path.Combine(publishFolder, "wwwroot"); - var wwwRootFiles = Directory.Exists(wwwRootFolder) ? - Directory.GetFiles(wwwRootFolder, "*", fileEnumerationOptions) - .Select(f => _baselineFactory.TemplatizeFilePath(f, null, null, intermediateOutputPath, publishFolder, null)) : - []; - - // Computed publish assets must exist on disk (we do this check to quickly identify when something is not being - // generated vs when its being copied to the wrong place) - var computedFiles = manifest.Assets - .Where(a => a.SourceType is StaticWebAsset.SourceTypes.Computed && - a.AssetKind is not StaticWebAsset.AssetKinds.Build); - - // For assets that are copied to the publish folder, the path is always based on - // the wwwroot folder, the relative path and the base path for project or package - // assets. - var copyToPublishDirectoryFiles = manifest.Assets - .Where(a => !string.Equals(a.SourceId, manifest.Source, StringComparison.Ordinal) || - !string.Equals(a.AssetMode, StaticWebAsset.AssetModes.Reference)) - .Select(a => Path.Combine(wwwRootFolder, a.ComputeTargetPath("", Path.DirectorySeparatorChar))); - - var existingFiles = _baselineFactory.TemplatizeExpectedFiles( - [.. wwwRootFiles - .Concat(computedFiles.Select(a => a.Identity)) - .Concat(copyToPublishDirectoryFiles) - .Distinct() - .OrderBy(f => f, StringComparer.Ordinal)], - GetNuGetCachePath() ?? TestContext.Current.NuGetCachePath, - ProjectDirectory.TestRoot, - intermediateOutputPath, - publishFolder); - - if (!_generateBaselines) - { - var expected = LoadExpectedFilesBaseline(manifest.ManifestType, suffix, name); - existingFiles.Should().BeEquivalentTo(expected); - } - else - { - File.WriteAllText( - GetExpectedFilesPath(suffix, name, manifest.ManifestType), - JsonSerializer.Serialize(existingFiles, BaselineSerializationOptions)); - } - } - - public string[] LoadExpectedFilesBaseline( - string type, - string suffix, - string name) - { - if (!_generateBaselines) - { - using var filesBaselineStream = GetExpectedFilesEmbeddedResource(suffix, name, type); - return JsonSerializer.Deserialize(filesBaselineStream); - } - else - { - return []; - } - } - - internal void AssertManifest( - StaticWebAssetsManifest actual, - StaticWebAssetsManifest expected, - string suffix = "", - string runtimeIdentifier = null, - [CallerMemberName] string name = "") - { - if (!_generateBaselines) - { - // We are going to compare the generated manifest with the current manifest. - // For that, we "templatize" the current manifest to avoid issues with hashes, versions, etc. - _baselineFactory.ToTemplate( - actual, - ProjectDirectory.Path, - GetNuGetCachePath() ?? TestContext.Current.NuGetCachePath, - runtimeIdentifier); - - _comparer.AssertManifest(expected, actual); - } - else - { - var template = Templatize(actual, ProjectDirectory.Path, GetNuGetCachePath() ?? TestContext.Current.NuGetCachePath, runtimeIdentifier); - if (!Directory.Exists(Path.Combine(BaselinesFolder))) - { - Directory.CreateDirectory(Path.Combine(BaselinesFolder)); - } - - File.WriteAllText(GetManifestPath(suffix, name, actual.ManifestType), template); - } - } - - private string GetManifestPath(string suffix, string name, string manifestType) - => Path.Combine(BaselinesFolder, $"{name}{(!string.IsNullOrEmpty(suffix) ? $"_{suffix}" : "")}.{manifestType}.staticwebassets.json"); - - private Stream GetManifestEmbeddedResource(string suffix, string name, string manifestType) - => TestAssembly.GetManifestResourceStream(string.Join('.', EmbeddedResourcePrefix, $"{name}{(!string.IsNullOrEmpty(suffix) ? $"_{suffix}" : "")}.{manifestType}.staticwebassets.json")); - - - private string GetExpectedFilesPath(string suffix, string name, string manifestType) - => Path.Combine(BaselinesFolder, $"{name}{(!string.IsNullOrEmpty(suffix) ? $"_{suffix}" : "")}.{manifestType}.files.json"); - - private Stream GetExpectedFilesEmbeddedResource(string suffix, string name, string manifestType) - => TestAssembly.GetManifestResourceStream(string.Join('.', EmbeddedResourcePrefix, $"{name}{(!string.IsNullOrEmpty(suffix) ? $"_{suffix}" : "")}.{manifestType}.files.json")); - - private string Templatize(StaticWebAssetsManifest manifest, string projectRoot, string restorePath, string runtimeIdentifier) - { - _baselineFactory.ToTemplate(manifest, projectRoot, restorePath, runtimeIdentifier); - return JsonSerializer.Serialize(manifest, BaselineSerializationOptions); - } - } -} - diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/IsolatedNuGetPackageFolderAspNetSdkBaselineTest.cs b/test/Microsoft.NET.Sdk.Razor.Tests/IsolatedNuGetPackageFolderAspNetSdkBaselineTest.cs deleted file mode 100644 index badbd88183e3..000000000000 --- a/test/Microsoft.NET.Sdk.Razor.Tests/IsolatedNuGetPackageFolderAspNetSdkBaselineTest.cs +++ /dev/null @@ -1,26 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - - -namespace Microsoft.NET.Sdk.Razor.Tests -{ - [Trait("AspNetCore", "NugetIsolation")] - [Trait("AspNetCore", "BaselineTest")] - public class IsolatedNuGetPackageFolderAspNetSdkBaselineTest : AspNetSdkBaselineTest - { - private readonly string _cachePath; - - public IsolatedNuGetPackageFolderAspNetSdkBaselineTest(ITestOutputHelper log, string restoreNugetPackagePath) : base(log) - { - _cachePath = Path.GetFullPath(Path.Combine(TestContext.Current.TestExecutionDirectory, Shorten(restoreNugetPackagePath))); - } - - private static string Shorten(string restoreNugetPackagePath) => - restoreNugetPackagePath - .Replace("IntegrationTest", string.Empty, StringComparison.OrdinalIgnoreCase) - .Replace("Tests", string.Empty, StringComparison.OrdinalIgnoreCase); - - protected override string GetNuGetCachePath() => _cachePath; - } -} - diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/Microsoft.NET.Sdk.Razor.Tests.csproj b/test/Microsoft.NET.Sdk.Razor.Tests/Microsoft.NET.Sdk.Razor.Tests.csproj index 9be78a307532..a2ea2bbdbc06 100644 --- a/test/Microsoft.NET.Sdk.Razor.Tests/Microsoft.NET.Sdk.Razor.Tests.csproj +++ b/test/Microsoft.NET.Sdk.Razor.Tests/Microsoft.NET.Sdk.Razor.Tests.csproj @@ -35,7 +35,7 @@ <_Parameter2>5.0 - + diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/JsModulesIntegrationTest.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/JsModulesIntegrationTest.cs similarity index 99% rename from test/Microsoft.NET.Sdk.Razor.Tests/JsModulesIntegrationTest.cs rename to test/Microsoft.NET.Sdk.StaticWebAssets.Tests/JsModulesIntegrationTest.cs index e79630670e5c..d96dab0d59e5 100644 --- a/test/Microsoft.NET.Sdk.Razor.Tests/JsModulesIntegrationTest.cs +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/JsModulesIntegrationTest.cs @@ -5,7 +5,7 @@ using Microsoft.AspNetCore.StaticWebAssets.Tasks; -namespace Microsoft.NET.Sdk.Razor.Tests +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests { public class JsModulesIntegrationTest(ITestOutputHelper log) : IsolatedNuGetPackageFolderAspNetSdkBaselineTest(log, nameof(JsModulesIntegrationTest)) { diff --git a/test/Microsoft.NET.Sdk.Razor.Tests/ScopedCssIntegrationTests.cs b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/ScopedCssIntegrationTests.cs similarity index 99% rename from test/Microsoft.NET.Sdk.Razor.Tests/ScopedCssIntegrationTests.cs rename to test/Microsoft.NET.Sdk.StaticWebAssets.Tests/ScopedCssIntegrationTests.cs index 4f34b2062d1a..9668d8656913 100644 --- a/test/Microsoft.NET.Sdk.Razor.Tests/ScopedCssIntegrationTests.cs +++ b/test/Microsoft.NET.Sdk.StaticWebAssets.Tests/ScopedCssIntegrationTests.cs @@ -6,7 +6,7 @@ using System.Text.RegularExpressions; using Microsoft.AspNetCore.StaticWebAssets.Tasks; -namespace Microsoft.NET.Sdk.Razor.Tests +namespace Microsoft.NET.Sdk.StaticWebAssets.Tests { public class ScopedCssIntegrationTest(ITestOutputHelper log) : IsolatedNuGetPackageFolderAspNetSdkBaselineTest(log, nameof(ScopedCssIntegrationTest))