-
Notifications
You must be signed in to change notification settings - Fork 99
Expand file tree
/
Copy pathBravo.csproj
More file actions
187 lines (169 loc) · 9.51 KB
/
Bravo.csproj
File metadata and controls
187 lines (169 loc) · 9.51 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net6-windows</TargetFramework>
<UseWindowsForms>True</UseWindowsForms>
<ApplicationIcon>Assets\bravo.ico</ApplicationIcon>
<Company>SQLBI</Company>
<Authors>SQLBI</Authors>
<Product>Bravo for Power BI</Product>
<Copyright>SQLBI Corporation</Copyright>
<RootNamespace>Sqlbi.$(MSBuildProjectName.Replace(" ", "_"))</RootNamespace>
<Nullable>enable</Nullable>
<GenerateDocumentationFile>True</GenerateDocumentationFile>
<NoWarn>$(NoWarn);1591</NoWarn>
<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>
<Configurations>$(Configurations);Debug_wwwroot</Configurations>
<AnalysisLevel>latest</AnalysisLevel>
<IncludeOpenAPIAnalyzers>true</IncludeOpenAPIAnalyzers>
<IsPackable>false</IsPackable>
<IsPublishable>true</IsPublishable>
<SatelliteResourceLanguages>en-US</SatelliteResourceLanguages>
<ApplicationHighDpiMode>PerMonitorV2</ApplicationHighDpiMode>
<IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
</PropertyGroup>
<Choose>
<When Condition=" '$(Configuration)' == 'Debug_wwwroot' ">
<PropertyGroup>
<DefineConstants>$(AdditionalConstants);DEBUG</DefineConstants>
</PropertyGroup>
</When>
<Otherwise>
<PropertyGroup>
<DefineConstants>$(AdditionalConstants)</DefineConstants>
</PropertyGroup>
</Otherwise>
</Choose>
<!--
<PropertyGroup>
<RestoreSources>$(RestoreSources);./Assets/nupkgs;https://api.nuget.org/v3/index.json</RestoreSources>
</PropertyGroup>
-->
<PropertyGroup>
<!-- Don't change version here -->
<Version>0.0.0.999</Version>
<InformationalVersion>0.0.0.999-DEV</InformationalVersion>
</PropertyGroup>
<ItemGroup>
<AssemblyAttribute Include="System.Runtime.CompilerServices.InternalsVisibleTo">
<_Parameter1>$(AssemblyName).Tests</_Parameter1>
</AssemblyAttribute>
</ItemGroup>
<ItemGroup>
<PackageReference Include="CsvHelper" Version="33.0.1" />
<PackageReference Include="Dax.Model.Extractor" Version="1.11.0" />
<PackageReference Include="Dax.Template" Version="0.2.1" />
<PackageReference Include="Dax.Formatter" Version="1.2.0" />
<PackageReference Include="Dax.ViewModel" Version="1.11.0" />
<PackageReference Include="Dax.Vpax" Version="1.11.0" />
<PackageReference Include="Dax.Vpax.Obfuscator" Version="1.2.1" />
<PackageReference Include="Hellang.Middleware.ProblemDetails" Version="6.5.1" />
<PackageReference Include="LargeXlsx" Version="1.10.0" />
<PackageReference Include="Macross.Json.Extensions" Version="3.0.0" />
<PackageReference Include="Microsoft.Extensions.Logging.ApplicationInsights" Version="2.22.0" />
<PackageReference Include="Microsoft.Web.WebView2" Version="1.0.2739.15" />
<PackageReference Include="Microsoft.Identity.Client.Desktop" Version="4.66.2" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="7.0.0" PrivateAssets="all" />
<PackageReference Include="System.CommandLine" Version="2.0.1" />
<PackageReference Include="System.Management" Version="7.0.0" />
</ItemGroup>
<ItemGroup>
<None Include="wwwroot\**">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
<ItemGroup>
<Reference Include="Antlr4.Runtime">
<HintPath>Assets\lib\Antlr4.Runtime.dll</HintPath>
</Reference>
<Reference Include="TOMWrapper">
<HintPath>Assets\lib\TOMWrapper.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<Content Remove="Scripts\*.json" />
<None Include="Scripts\*.json" />
<Content Include="Assets\bravo.ico" />
<Compile Update="Properties\Resources.Designer.cs">
<DesignTime>True</DesignTime>
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<EmbeddedResource Update="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Assets\ManageDates\Schemas\*.schema.json">
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
</EmbeddedResource>
<EmbeddedResource Include="Assets\ManageDates\Templates\*.json">
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
</EmbeddedResource>
</ItemGroup>
<!--
** The following custom MSBuild target removes the 'Assets' folder from output after the publish operation.
** 'Assets' folder only contains resource files that have been embedded but are stil published due to a bug (see link below)
** Embedded Resources still copy to output directory even set `CopyToOutputDirectory` to Never
** https://developercommunity.visualstudio.com/t/embedded-resources-still-copy-to-output-directory/1474603
-->
<Target Name="RemoveEmbeddedResourceDirectory" AfterTargets="AfterPublish" Condition=" '$(Configuration)' == 'Release' ">
<Message Importance="high" Text="::RemoveEmbeddedResourceDirectory - $(PublishUrl)Assets;$(PublishDir)Assets" />
<RemoveDir Directories="$(PublishUrl)Assets;$(PublishDir)Assets" />
</Target>
<!--
** The following custom MSBuild targets add the static client web assets into the build process
** - ClientAssetsRestore => restore client web assets from npm
** - ClientAssetsBuild => run npm build and collect the outputs as static web assets (wwwroot)
** - DefineClientAssets => capture all the files in the output content and link them to the wwwroot folder - this target run only when the sources are changed
**
** https://devblogs.microsoft.com/dotnet/build-client-web-assets-for-your-razor-class-library/
** https://github.com/aspnet/AspLabs/blob/main/src/ClientAssets/Microsoft.AspNetCore.ClientAssets/build/netstandard2.0/Microsoft.AspNetCore.ClientAssets.targets
** https://docs.microsoft.com/en-us/archive/msdn-magazine/2009/february/msbuild-best-practices-for-creating-reliable-builds-part-1
-->
<PropertyGroup>
<ClientAssetsDirectory Condition="'$(ClientAssetsDirectory)' == ''">Scripts\</ClientAssetsDirectory>
<ClientAssetsRestoreInputs Condition="'$(ClientAssetsRestoreInputs)' == ''">$(ClientAssetsDirectory)package-lock.json;$(ClientAssetsDirectory)package.json</ClientAssetsRestoreInputs>
<ClientAssetsRestoreOutputs Condition="'$(ClientAssetsRestoreOutputs)' == ''">$(ClientAssetsDirectory)node_modules\.package-lock.json</ClientAssetsRestoreOutputs>
<ClientAssetsEnabled Condition="'$(Configuration)' != 'Debug_wwwroot'">true</ClientAssetsEnabled>
</PropertyGroup>
<ItemGroup>
<ClientAssetsInputs Include="$(ClientAssetsDirectory)**" Exclude="$(DefaultItemExcludes)" />
</ItemGroup>
<!--
Target Name="EnsureNodeJsInstalled" BeforeTargets="Build" Condition=" '$(Configuration)' == 'Debug' And !Exists('Scripts\dist') ">
<Message Importance="high" Text="::EnsureNodeJsInstalled - retreiving Node.js version ..." />
<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." />
</Target
-->
<Target Name="ClientAssetsRestore" Condition="'$(ClientAssetsEnabled)' == 'true'" BeforeTargets="Build" Inputs="$(ClientAssetsRestoreInputs)" Outputs="$(ClientAssetsRestoreOutputs)">
<Message Importance="high" Text="::ClientAssetsRestore - running 'npm install' ..." />
<Exec Command="npm install" WorkingDirectory="$(ClientAssetsDirectory)" />
</Target>
<Target Name="ClientAssetsBuild" Condition="'$(ClientAssetsEnabled)' == 'true'" DependsOnTargets="ClientAssetsRestore" BeforeTargets="AssignTargetPaths" Inputs="@(ClientAssetsInputs)" Outputs="$(IntermediateOutputPath)clientassetsbuild.complete.txt">
<PropertyGroup>
<_ClientAssetsOutputFullPath>$([System.IO.Path]::GetFullPath('$(IntermediateOutputPath)clientassets'))\</_ClientAssetsOutputFullPath>
</PropertyGroup>
<MakeDir Directories="$(_ClientAssetsOutputFullPath)" />
<Message Importance="high" Text="::ClientAssetsBuild - running 'npm run build:$(Configuration)' ..." />
<Exec Command="npm run build:$(Configuration) -- --output-path $(_ClientAssetsOutputFullPath)" WorkingDirectory="$(ClientAssetsDirectory)" />
<ItemGroup>
<_ClientAssetsBuildOutput Include="$(IntermediateOutputPath)clientassets\**"></_ClientAssetsBuildOutput>
</ItemGroup>
<WriteLinesToFile File="$(IntermediateOutputPath)clientassetsbuild.complete.txt" Lines="@(_ClientAssetsBuildOutput)" />
</Target>
<Target Name="DefineClientAssets" Condition="'$(ClientAssetsEnabled)' == 'true'" AfterTargets="ClientAssetsBuild">
<ItemGroup>
<FileWrites Include="@(_ClientAssetsBuildOutput)" />
<FileWrites Include="$(IntermediateOutputPath)clientassetsbuild.complete.txt" />
<Message Importance="high" Text="::DefineClientAssets - link 'wwwroot\%(_ClientAssetsBuildOutput.RecursiveDir)\%(_ClientAssetsBuildOutput.FileName)%(_ClientAssetsBuildOutput.Extension)' ..." />
<Content Include="@(_ClientAssetsBuildOutput)" Link="wwwroot\%(_ClientAssetsBuildOutput.RecursiveDir)\%(_ClientAssetsBuildOutput.FileName)%(_ClientAssetsBuildOutput.Extension)">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Target>
</Project>