Skip to content

Commit c9bb9ff

Browse files
Feature: generator helpers reconstruction (#13)
* Generator helpers structure improved. * Plugins updated to match GeneratorHelpers. * Readonly fixed. * Fixed merge conflict.
1 parent c271811 commit c9bb9ff

8 files changed

Lines changed: 461 additions & 449 deletions

File tree

packages/ts-docs-gen/src/generator-helpers.ts

Lines changed: 435 additions & 442 deletions
Large diffs are not rendered by default.

packages/ts-docs-gen/src/plugins/api-class-constructor-plugin.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,15 +50,15 @@ export class ApiClassConstructorPlugin implements Plugin<Contracts.ApiClassConst
5050
.GetApiItemsFromReference<Contracts.ApiParameterDto>(options.ApiItem.Parameters, options.ExtractedData);
5151
const parameters = this.renderParameters(apiParameters);
5252

53-
const heading = GeneratorHelpers.CallableParametersToSimpleString("constructor", apiParameters);
53+
const heading = GeneratorHelpers.MethodToSimpleString("constructor", apiParameters);
5454

5555
pluginResult.Headings.push({ ApiItemId: options.Reference.Id, Heading: heading });
5656

5757
builder
5858
.Header(heading, 3)
5959
.EmptyLine()
6060
.Text(GeneratorHelpers.RenderApiItemMetadata(options.ApiItem))
61-
.Code(GeneratorHelpers.CallableParametersToString("constructor", apiParameters), GeneratorHelpers.DEFAULT_CODE_OPTIONS)
61+
.Code(GeneratorHelpers.ApiClassConstructorToString(apiParameters), GeneratorHelpers.DEFAULT_CODE_OPTIONS)
6262
.Text(parameters.Result);
6363

6464
GeneratorHelpers.MergePluginResultData(pluginResult, parameters);

packages/ts-docs-gen/src/plugins/api-class-method-plugin.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,11 @@ export class ApiClassMethodPlugin implements Plugin<Contracts.ApiClassMethodDto>
5050
.GetApiItemsFromReference<Contracts.ApiParameterDto>(options.ApiItem.Parameters, options.ExtractedData);
5151
const parameters = this.renderParameters(apiParameters);
5252

53-
const heading = GeneratorHelpers.CallableParametersToSimpleString(options.Reference.Alias, apiParameters);
53+
// Parameters
54+
const apiTypeParameters = GeneratorHelpers
55+
.GetApiItemsFromReference<Contracts.ApiTypeParameterDto>(options.ApiItem.TypeParameters, options.ExtractedData);
56+
57+
const heading = GeneratorHelpers.MethodToSimpleString(options.Reference.Alias, apiParameters);
5458

5559
pluginResult.Headings.push({ ApiItemId: options.Reference.Id, Heading: heading });
5660

@@ -60,6 +64,7 @@ export class ApiClassMethodPlugin implements Plugin<Contracts.ApiClassMethodDto>
6064
.Text(GeneratorHelpers.RenderApiItemMetadata(options.ApiItem))
6165
.Code(GeneratorHelpers.ApiClassMethodToString(
6266
options.ApiItem,
67+
apiTypeParameters,
6368
apiParameters,
6469
options.Reference.Alias
6570
), GeneratorHelpers.DEFAULT_CODE_OPTIONS)

packages/ts-docs-gen/src/plugins/api-enum-plugin.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export class ApiEnumPlugin implements Plugin<Contracts.ApiEnumDto> {
4141
.EmptyLine()
4242
.Text(GeneratorHelpers.RenderApiItemMetadata(data.ApiItem))
4343
.EmptyLine()
44-
.Code(GeneratorHelpers.ReconstructEnumCode(data.Reference.Alias, enumMembers), GeneratorHelpers.DEFAULT_CODE_OPTIONS)
44+
.Code(GeneratorHelpers.EnumToString(data.Reference.Alias, enumMembers), GeneratorHelpers.DEFAULT_CODE_OPTIONS)
4545
.EmptyLine()
4646
.Text(this.constructEnumTable(enumMembers));
4747

packages/ts-docs-gen/src/plugins/api-function-plugin.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ export class ApiFunctionPlugin implements Plugin<Contracts.ApiFunctionDto> {
103103
const resolvedReturnTypeDto = this.resolveReturnType(data.ApiItem.ReturnType);
104104

105105
const builder = new MarkdownBuilder()
106-
.Header(GeneratorHelpers.ApiFunctionToSimpleString(alias, data.ApiItem, parameters), 2)
106+
.Header(GeneratorHelpers.MethodToSimpleString(alias || data.ApiItem.Name, parameters), 2)
107107
.EmptyLine()
108108
.Text(GeneratorHelpers.RenderApiItemMetadata(data.ApiItem))
109109
.Code(GeneratorHelpers.ApiFunctionToString(

packages/ts-docs-gen/tests/cases/__tests__/__snapshots__/simple-project-1.test.ts.snap

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/ts-docs-gen/tests/cases/__tests__/__snapshots__/simple-project-2.test.ts.snap

Lines changed: 12 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
export class Foo {
22
public GetMessage(message: string): string {
3-
return message;
3+
return this.defaultMessage;
44
}
5+
6+
private readonly defaultMessage: string = "It's a default message.";
57
}

0 commit comments

Comments
 (0)