mirror of https://github.com/ErsatzTV/ErsatzTV.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
131 lines
7.2 KiB
131 lines
7.2 KiB
<Project Sdk="Microsoft.NET.Sdk.Web"> |
|
|
|
<PropertyGroup> |
|
<TargetFramework>net7.0</TargetFramework> |
|
<SpaRoot>client-app\</SpaRoot> |
|
<DefaultItemExcludes>$(DefaultItemExcludes);$(SpaRoot)node_modules\**</DefaultItemExcludes> |
|
<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked> |
|
<TypeScriptToolsVersion>Latest</TypeScriptToolsVersion> |
|
<IsPackable>false</IsPackable> |
|
<ImplicitUsings>enable</ImplicitUsings> |
|
<NoWarn>VSTHRD200</NoWarn> |
|
<IncludeAllContentForSelfExtract>true</IncludeAllContentForSelfExtract> |
|
<Configurations>Debug;Release;Debug No Sync</Configurations> |
|
<Platforms>AnyCPU</Platforms> |
|
<UserSecretsId>bf31217d-f4ec-4520-8cc3-138059044ede</UserSecretsId> |
|
<AnalysisLevel>latest-Recommended</AnalysisLevel> |
|
<TreatWarningsAsErrors>true</TreatWarningsAsErrors> |
|
</PropertyGroup> |
|
|
|
<Target Name="PublishRunWebpack" AfterTargets="ComputeFilesToPublish"> |
|
<!-- Build Target: Run webpack dist build --> |
|
<Message Importance="high" Text="Running npm build..." /> |
|
<Exec WorkingDirectory="$(SpaRoot)" Command="npm run build" /> |
|
|
|
<!-- Include the newly-built files in the publish output --> |
|
<ItemGroup> |
|
<DistFiles Include="wwwroot\v2\**" /> |
|
<ResolvedFileToPublish Include="@(DistFiles->'%(FullPath)')" Exclude="@(ResolvedFileToPublish)"> |
|
<RelativePath>%(DistFiles.Identity)</RelativePath> |
|
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory> |
|
</ResolvedFileToPublish> |
|
</ItemGroup> |
|
</Target> |
|
|
|
<Target Name="DebugEnsureNodeEnv" BeforeTargets="Build"> |
|
<!-- Build Target: 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." /> |
|
</Target> |
|
|
|
<Target Name="DebugEnsureNpm" AfterTargets="DebugEnsureNodeEnv"> |
|
<!-- Build Target: Ensure Node.js is installed --> |
|
<Exec Command="npm --version" ContinueOnError="true"> |
|
<Output TaskParameter="ExitCode" PropertyName="ErrorCode" /> |
|
</Exec> |
|
</Target> |
|
|
|
<Target Name="EnsureNodeModulesInstalled" BeforeTargets="Build" Inputs="package.json" Outputs="packages-lock.json"> |
|
<!-- Build Target: Restore NPM packages using npm --> |
|
<Message Importance="high" Text="Restoring dependencies using 'npm'. This may take several minutes..." /> |
|
|
|
<Exec WorkingDirectory="$(SpaRoot)" Command="npm ci" /> |
|
</Target> |
|
|
|
<ItemGroup> |
|
<PackageReference Include="Blazored.FluentValidation" Version="2.1.0" /> |
|
<PackageReference Include="Bugsnag.AspNet.Core" Version="3.1.0" /> |
|
<PackageReference Include="FluentValidation" Version="11.8.0" /> |
|
<PackageReference Include="FluentValidation.AspNetCore" Version="11.3.0" /> |
|
<PackageReference Include="HtmlSanitizer" Version="8.0.746" /> |
|
<PackageReference Include="LanguageExt.Core" Version="4.4.7" /> |
|
<PackageReference Include="Markdig" Version="0.33.0" /> |
|
<PackageReference Include="MediatR.Courier.DependencyInjection" Version="5.0.0" /> |
|
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="7.0.13" /> |
|
<PackageReference Include="Microsoft.AspNetCore.Authentication.OpenIdConnect" Version="7.0.13" /> |
|
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="7.0.13" /> |
|
<PackageReference Include="Microsoft.AspNetCore.SpaServices.Extensions" Version="7.0.13" /> |
|
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.13"> |
|
<PrivateAssets>all</PrivateAssets> |
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> |
|
</PackageReference> |
|
<PackageReference Include="Microsoft.VisualStudio.Threading.Analyzers" Version="17.7.30"> |
|
<PrivateAssets>all</PrivateAssets> |
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> |
|
</PackageReference> |
|
<PackageReference Include="MudBlazor" Version="6.11.0" /> |
|
<PackageReference Include="NaturalSort.Extension" Version="4.1.0" /> |
|
<PackageReference Include="Refit.HttpClientFactory" Version="7.0.0" /> |
|
<PackageReference Include="Serilog" Version="3.1.0" /> |
|
<PackageReference Include="Serilog.AspNetCore" Version="7.0.0" /> |
|
<PackageReference Include="Serilog.Settings.Configuration" Version="7.0.1" /> |
|
<PackageReference Include="System.IO.FileSystem.Primitives" Version="4.3.0" /> |
|
<PackageReference Include="System.Text.Encoding.Extensions" Version="4.3.0" /> |
|
<PackageReference Include="System.Runtime.Handles" Version="4.3.0" /> |
|
<PackageReference Include="VueCliMiddleware" Version="6.0.0" /> |
|
</ItemGroup> |
|
|
|
<ItemGroup> |
|
<Content Remove="$(SpaRoot)**" /> |
|
<None Remove="$(SpaRoot)**" /> |
|
<None Include="$(SpaRoot)**" Exclude="$(SpaRoot)node_modules\**" /> |
|
</ItemGroup> |
|
|
|
<ItemGroup> |
|
<ProjectReference Include="..\ErsatzTV.Application\ErsatzTV.Application.csproj" /> |
|
<ProjectReference Include="..\ErsatzTV.Core\ErsatzTV.Core.csproj" /> |
|
<ProjectReference Include="..\ErsatzTV.Infrastructure.MySql\ErsatzTV.Infrastructure.MySql.csproj" /> |
|
<ProjectReference Include="..\ErsatzTV.Infrastructure.Sqlite\ErsatzTV.Infrastructure.Sqlite.csproj" /> |
|
<ProjectReference Include="..\ErsatzTV.Infrastructure\ErsatzTV.Infrastructure.csproj" /> |
|
<ProjectReference Include="..\ErsatzTV.Scanner\ErsatzTV.Scanner.csproj" /> |
|
</ItemGroup> |
|
|
|
<ItemGroup> |
|
<EmbeddedResource Include="Resources\background.png" /> |
|
<EmbeddedResource Include="Resources\Fonts\OPTIKabel-Heavy.otf" /> |
|
<EmbeddedResource Include="Resources\Fonts\Roboto-Regular.ttf" /> |
|
<EmbeddedResource Include="Resources\Scripts\_threePartEpisodes.js" /> |
|
<EmbeddedResource Include="Resources\Scripts\_episode.js" /> |
|
<EmbeddedResource Include="Resources\Scripts\_movie.js" /> |
|
<EmbeddedResource Include="Resources\song_background_1.png" /> |
|
<EmbeddedResource Include="Resources\song_background_2.png" /> |
|
<EmbeddedResource Include="Resources\song_background_3.png" /> |
|
<EmbeddedResource Include="Resources\ErsatzTV.png" /> |
|
<EmbeddedResource Include="Resources\ISO-639-2_utf-8.txt" /> |
|
<EmbeddedResource Include="Resources\Templates\_default.ass.sbntxt" /> |
|
<EmbeddedResource Include="Resources\Templates\_ArtistTitle_LeftMiddle.sbntxt" /> |
|
<EmbeddedResource Include="Resources\Templates\_ArtistTitleAlbum_CenterTop.sbntxt" /> |
|
</ItemGroup> |
|
|
|
<ItemGroup> |
|
<Content Include="..\artwork\Ersatztv.icns"> |
|
<Link>Ersatztv.icns</Link> |
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory> |
|
</Content> |
|
</ItemGroup> |
|
|
|
<ProjectExtensions><VisualStudio><UserProperties client-app_4package_1json__JsonSchema="https://json.schemastore.org/phraseapp.json" /></VisualStudio></ProjectExtensions> |
|
|
|
</Project>
|
|
|