Skip to content

Commit 8b7f1d8

Browse files
committed
Properly handle GenerateEndpoints config and do not generate endpoints file and suppress interface implements
1 parent 0cff5a8 commit 8b7f1d8

File tree

2 files changed

+35
-21
lines changed

2 files changed

+35
-21
lines changed

src/WebApiToTypeScript/Interfaces/InterfaceService.cs

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -196,8 +196,12 @@ private void WriteInterfaceNode(TypeScriptBlock interfacesBlock, InterfaceNode i
196196
return;
197197
}
198198

199+
var iHaveQueryParams = Config.GenerateEndpoints || Config.GenerateService
200+
? $", {Config.EndpointsNamespace}.{nameof(IHaveQueryParams)}"
201+
: string.Empty;
202+
199203
var classImplementsString =
200-
$" implements I{blockTypeName}{implementsString}, {Config.EndpointsNamespace}.{nameof(IHaveQueryParams)}";
204+
$" implements I{blockTypeName}{implementsString}{iHaveQueryParams}";
201205

202206
var parameterOrInstanceString = iHaveGenericParameters
203207
? implementsString
@@ -254,9 +258,12 @@ private void WriteInterfaceNode(TypeScriptBlock interfacesBlock, InterfaceNode i
254258
.AddStatement("super();");
255259
}
256260

257-
classBlock
258-
.AddAndUseBlock("getQueryParams()")
259-
.AddStatement("return this;");
261+
if (Config.GenerateEndpoints || Config.GenerateService)
262+
{
263+
classBlock
264+
.AddAndUseBlock("getQueryParams()")
265+
.AddStatement("return this;");
266+
}
260267
}
261268

262269
private string CleanName(string dirtyName)

src/WebApiToTypeScript/WebApiToTypeScript.cs

Lines changed: 24 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -67,30 +67,36 @@ public override bool Execute()
6767
StopAnalysis();
6868
}
6969

70-
StartAnalysis("controllers and actions");
71-
72-
var endpointBlock = EndpointsService.CreateEndpointBlock();
73-
var serviceBlock = AngularEndpointsService.CreateServiceBlock();
74-
75-
foreach (var apiController in apiControllers)
70+
if (Config.GenerateEndpoints || Config.GenerateService)
7671
{
77-
var webApiController = new WebApiController(apiController);
72+
StartAnalysis("controllers and actions");
7873

79-
if (Config.GenerateEndpoints || Config.GenerateService)
80-
EndpointsService.WriteEndpointClassToBlock(endpointBlock, webApiController);
74+
var endpointBlock = EndpointsService.CreateEndpointBlock();
75+
var serviceBlock = AngularEndpointsService.CreateServiceBlock();
8176

82-
if (Config.GenerateService)
83-
AngularEndpointsService.WriteServiceObjectToBlock(serviceBlock.Children.First() as TypeScriptBlock, webApiController);
84-
}
77+
foreach (var apiController in apiControllers)
78+
{
79+
var webApiController = new WebApiController(apiController);
8580

86-
CreateFileForBlock(endpointBlock, Config.EndpointsOutputDirectory, Config.EndpointsFileName);
81+
if (Config.GenerateEndpoints || Config.GenerateService)
82+
EndpointsService.WriteEndpointClassToBlock(endpointBlock, webApiController);
8783

88-
if (Config.GenerateService)
89-
CreateFileForBlock(serviceBlock, Config.ServiceOutputDirectory, Config.ServiceFileName);
84+
if (Config.GenerateService)
85+
AngularEndpointsService.WriteServiceObjectToBlock(serviceBlock.Children.First() as TypeScriptBlock, webApiController);
86+
}
9087

91-
StopAnalysis();
88+
if (Config.GenerateEndpoints || Config.GenerateService)
89+
{
90+
CreateFileForBlock(endpointBlock, Config.EndpointsOutputDirectory, Config.EndpointsFileName);
91+
}
92+
93+
if (Config.GenerateService)
94+
{
95+
CreateFileForBlock(serviceBlock, Config.ServiceOutputDirectory, Config.ServiceFileName);
96+
}
9297

93-
var enumsBlock = EnumsService.CreateEnumsBlock();
98+
StopAnalysis();
99+
}
94100

95101
if (Config.GenerateInterfaces)
96102
{
@@ -109,6 +115,7 @@ public override bool Execute()
109115
{
110116
StartAnalysis("enumerations");
111117

118+
var enumsBlock = EnumsService.CreateEnumsBlock();
112119
EnumsService.WriteEnumsToBlock(enumsBlock);
113120

114121
StopAnalysis();

0 commit comments

Comments
 (0)