aspnetcore/client-ts/Microsoft.AspNetCore.Signal.../Microsoft.AspNetCore.Signal...

54 lines
2.3 KiB
XML

<Project>
<Import Project="Sdk.props" Sdk="Microsoft.NET.Sdk" />
<Import Project="..\..\build\common.props" />
<PropertyGroup>
<TargetFramework>netstandard1.0</TargetFramework>
<IsPackable>false</IsPackable>
</PropertyGroup>
<PropertyGroup>
<SignalRClientDistFolder>$(MSBuildThisFileDirectory)..\dist\</SignalRClientDistFolder>
</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" />
</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>
<Import Project="Sdk.targets" Sdk="Microsoft.NET.Sdk" />
<Target Name="Pack">
<Message Text="Creating TypeScript client Node module" Importance="High" />
<Exec Command="node -pe &quot;require('./package.json').version&quot;" ConsoleToMSBuild="true" WorkingDirectory="$(MSBuildThisFileDirectory)..">
<Output TaskParameter="ConsoleOutput" ItemName="ExecOutput" />
</Exec>
<PropertyGroup>
<ModuleVersion>@(ExecOutput)</ModuleVersion>
<ModuleVersion Condition="'$(VersionSuffix)' != ''">$(ModuleVersion)-$(VersionSuffix)</ModuleVersion>
</PropertyGroup>
<Exec Command="npm version $(ModuleVersion)" WorkingDirectory="$(MSBuildThisFileDirectory).." Condition="'$(VersionSuffix)' != ''" />
<Exec Command="npm pack" WorkingDirectory="$(MSBuildThisFileDirectory).." />
<Exec Command="git checkout HEAD -- $(MSBuildThisFileDirectory)../package.json" Condition="'$(VersionSuffix)' != ''" />
<ItemGroup>
<TSClient Include="$(MSBuildThisFileDirectory)../signalr-client*.tgz" />
</ItemGroup>
<Move SourceFiles="@(TSClient)" DestinationFolder="$(PackageOutputPath)" />
</Target>
</Project>