ProjectGrid/ProjectGrid.csproj

115 lines
6.1 KiB
XML

<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<RootNamespace>ProjectGrid</RootNamespace>
<SpaRoot>clientapp\</SpaRoot>
<DefaultItemExcludes>$(DefaultItemExcludes);$(SpaRoot)node_modules\**</DefaultItemExcludes>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="5.0.6" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="5.0.6" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="5.0.6">
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="5.0.1" />
<PackageReference Include="Microsoft.Extensions.Logging.ApplicationInsights" Version="2.17.0" />
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="5.0.0" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="5.0.2" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="5.6.3" />
</ItemGroup>
<ItemGroup>
<!-- Don't publish the SPA source files, but do show them in the project files list -->
<Compile Remove="clientapp\**" />
<Content Remove="$(SpaRoot)**" />
<Content Remove="clientapp\**" />
<EmbeddedResource Remove="clientapp\**" />
<None Remove="$(SpaRoot)**" />
<None Remove="clientapp\**" />
<None Include="$(SpaRoot)**" Exclude="$(SpaRoot)node_modules\**" />
</ItemGroup>
<ItemGroup>
<None Remove="clientapp\.editorconfig" />
<None Remove="clientapp\.gitignore" />
<None Remove="clientapp\.vs\clientapp\v16\.suo" />
<None Remove="clientapp\.vs\ProjectGrid.frontend\v16\.suo" />
<None Remove="clientapp\.vs\ProjectSettings.json" />
<None Remove="clientapp\.vs\slnx.sqlite" />
<None Remove="clientapp\.vs\tasks.vs.json" />
<None Remove="clientapp\.vs\VSWorkspaceState.json" />
<None Remove="clientapp\babel.config.js" />
<None Remove="clientapp\bin\Microsoft.NodejsTools.WebRole.dll" />
<None Remove="clientapp\dist\css\app.91da2c62.css" />
<None Remove="clientapp\dist\css\chunk-vendors.55204a1e.css" />
<None Remove="clientapp\dist\favicon.ico" />
<None Remove="clientapp\dist\index.html" />
<None Remove="clientapp\dist\js\app.30ea16fe.js" />
<None Remove="clientapp\dist\js\app.30ea16fe.js.map" />
<None Remove="clientapp\dist\js\chunk-vendors.e49ff54c.js" />
<None Remove="clientapp\dist\js\chunk-vendors.e49ff54c.js.map" />
<None Remove="clientapp\obj\Debug\ProjectGrid.frontend.njsproj.AssemblyReference.cache" />
<None Remove="clientapp\obj\Debug\ProjectGrid.frontend.njsproj.CoreCompileInputs.cache" />
<None Remove="clientapp\obj\Debug\ProjectGrid.frontend.njsproj.FileListAbsolute.txt" />
<None Remove="clientapp\package-lock.json" />
<None Remove="clientapp\package.json" />
<None Remove="clientapp\ProjectGrid.frontend.njsproj" />
<None Remove="clientapp\ProjectGrid.frontend.njsproj.user" />
<None Remove="clientapp\ProjectGrid.frontend.sln" />
<None Remove="clientapp\public\favicon.ico" />
<None Remove="clientapp\public\index.html" />
<None Remove="clientapp\README.md" />
<None Remove="clientapp\src\App.vue" />
<None Remove="clientapp\src\assets\logo.png" />
<None Remove="clientapp\src\assets\styles\global.css" />
<None Remove="clientapp\src\components\CreateUser.vue" />
<None Remove="clientapp\src\components\Dashboard.vue" />
<None Remove="clientapp\src\components\DisplayBoard.vue" />
<None Remove="clientapp\src\components\GameUI.vue" />
<None Remove="clientapp\src\components\Header.vue" />
<None Remove="clientapp\src\components\Users.vue" />
<None Remove="clientapp\src\Game.js" />
<None Remove="clientapp\src\main.js" />
<None Remove="clientapp\src\Player.js" />
<None Remove="clientapp\src\services\TicTacTocService.js" />
<None Remove="clientapp\src\services\UserService.js" />
<None Remove="clientapp\vue.config.js" />
</ItemGroup>
<ItemGroup>
<Folder Include="Util\" />
</ItemGroup>
<Target Name="DebugEnsureNodeEnv" BeforeTargets="Build" Condition=" '$(Configuration)' == 'Debug' And !Exists('$(SpaRoot)node_modules') ">
<!-- Ensure Node.js is installed -->
<Exec Command="node --version" ContinueOnError="true">
<Output TaskParameter="ExitCode" PropertyName="ErrorCode" />
</Exec>
<Error Condition="'$(ErrorCode)' != '0'" Text="Node.js is required to build and run this project. To continue, please install Node.js from https://nodejs.org/, and then restart your command prompt or IDE." />
<Message Importance="high" Text="Restoring dependencies using 'npm'. This may take several minutes..." />
<Exec WorkingDirectory="$(SpaRoot)" Command="npm install" />
</Target>
<Target Name="PublishRunWebpack" AfterTargets="ComputeFilesToPublish">
<!-- As part of publishing, ensure the JS resources are freshly built in production mode -->
<Exec WorkingDirectory="$(SpaRoot)" Command="npm install" />
<Exec WorkingDirectory="$(SpaRoot)" Command="npm run build -- --prod" />
<Exec WorkingDirectory="$(SpaRoot)" Command="npm run build:ssr -- --prod" Condition=" '$(BuildServerSideRenderer)' == 'true' " />
<!-- Include the newly-built files in the publish output -->
<ItemGroup>
<DistFiles Include="$(SpaRoot)dist\**; $(SpaRoot)dist-server\**" />
<DistFiles Include="$(SpaRoot)node_modules\**" Condition="'$(BuildServerSideRenderer)' == 'true'" />
<ResolvedFileToPublish Include="@(DistFiles->'%(FullPath)')" Exclude="@(ResolvedFileToPublish)">
<RelativePath>%(DistFiles.Identity)</RelativePath>
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
</ResolvedFileToPublish>
</ItemGroup>
</Target>
</Project>