63 lines
2.7 KiB
XML
63 lines
2.7 KiB
XML
<Project>
|
|
<Import Project="Sdk.props" Sdk="Microsoft.NET.Sdk" />
|
|
<PropertyGroup>
|
|
<TargetFramework>netstandard2.0</TargetFramework>
|
|
<IsPackable>false</IsPackable>
|
|
</PropertyGroup>
|
|
|
|
<Import Project="Sdk.targets" Sdk="Microsoft.NET.Sdk" />
|
|
|
|
<PropertyGroup>
|
|
<SignalRClientDistFolder>$(MSBuildThisFileDirectory)..\dist\</SignalRClientDistFolder>
|
|
<OutputFileName>aspnet-signalr-client-$(PackageVersion).tgz</OutputFileName>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<Inputs Include="*.ts;" />
|
|
<Outputs Include="@(Inputs -> '$(SignalRClientDistFolder)src\%(FileName).d.ts')" />
|
|
<Outputs Include="@(Inputs -> '$(SignalRClientDistFolder)src\%(FileName).js')" />
|
|
<Outputs Include="$(SignalRClientDistFolder)browser\signalr-client.js" />
|
|
<Outputs Include="$(SignalRClientDistFolder)browser\third-party-notices.txt" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<None Include="tsconfig.json" />
|
|
</ItemGroup>
|
|
|
|
<!-- this target relies on npm packages being restored manually or when running full build -->
|
|
<Target Name="BuildTSClient" Inputs="@(Inputs)" Outputs="@(Outputs)" BeforeTargets="Build">
|
|
<Exec Command="npm run gulp -- --gulpfile "$(MSBuildThisFileDirectory)gulpfile.js" build-ts-client" />
|
|
</Target>
|
|
|
|
<Target Name="CleanTSClient" AfterTargets="Clean">
|
|
<RemoveDir Directories="$(SignalRClientDistFolder)" />
|
|
</Target>
|
|
|
|
|
|
<Target Name="Pack">
|
|
<Message Text="Creating TypeScript client Node module" Importance="High" />
|
|
|
|
<PropertyGroup>
|
|
<IsGitRepository Condition="EXISTS('$(MSBuildThisFileDirectory)..\..\.git\HEAD')">true</IsGitRepository>
|
|
<IsGitRepository Condition="'$(IsGitRepository)'==''">false</IsGitRepository>
|
|
</PropertyGroup>
|
|
|
|
<Exec Command="npm version $(PackageVersion) --allow-same-version" WorkingDirectory="$(MSBuildThisFileDirectory)..\" />
|
|
<Exec Command="npm pack" WorkingDirectory="$(MSBuildThisFileDirectory)..\" />
|
|
<Exec Command="git checkout HEAD -- "$(MSBuildThisFileDirectory)../package.json"" Condition="$(IsGitRepository)" />
|
|
<Exec Command="git checkout HEAD -- "$(MSBuildThisFileDirectory)../package-lock.json"" Condition="$(IsGitRepository)" />
|
|
<Move SourceFiles="$(MSBuildThisFileDirectory)..\$(OutputFileName)" DestinationFolder="$(PackageOutputPath)" />
|
|
</Target>
|
|
|
|
<!-- Provides information to the bill of materials about expected outputs. -->
|
|
<Target Name="GetNpmArtifactInfo" BeforeTargets="GetArtifactInfo" Returns="@(ArtifactInfo)">
|
|
<ItemGroup>
|
|
<ArtifactInfo Include="$(PackageOutputPath)$(OutputFileName)">
|
|
<ArtifactType>NpmPackage</ArtifactType>
|
|
<PackageId>@aspnet/signalr-client</PackageId>
|
|
<Version>$(PackageVersion)</Version>
|
|
</ArtifactInfo>
|
|
</ItemGroup>
|
|
</Target>
|
|
</Project>
|