Skip to content

Commit 624b6a7

Browse files
authored
[typescript] Generate documentation and examples (#9413)
* generate docs for typescript * commit changed files
1 parent 98ae4ab commit 624b6a7

File tree

27 files changed

+6877
-0
lines changed

27 files changed

+6877
-0
lines changed

bin/configs/typescript-consolidated-deno.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,5 @@ inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
44
additionalProperties:
55
platform: deno
66
npmName: ts-petstore-client
7+
projectName: ts-petstore-client
8+
moduleName: petstore

bin/configs/typescript-consolidated-inversify.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,5 @@ additionalProperties:
55
platform: node
66
npmName: ts-petstore-client
77
useInversify: true
8+
projectName: ts-petstore-client
9+
moduleName: petstore

bin/configs/typescript-consolidated-jquery.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,5 @@ inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
44
additionalProperties:
55
framework: jquery
66
npmName: ts-petstore-client
7+
projectName: ts-petstore-client
8+
moduleName: petstore

bin/configs/typescript-consolidated-node-object-parameters.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,5 @@ additionalProperties:
55
platform: node
66
npmName: ts-petstore-client
77
useObjectParameters: true
8+
projectName: ts-petstore-client
9+
moduleName: petstore

bin/configs/typescript-consolidated-node.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,5 @@ inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
44
additionalProperties:
55
platform: node
66
npmName: ts-petstore-client
7+
projectName: ts-petstore-client
8+
moduleName: petstore

modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptClientCodegen.java

Lines changed: 633 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# {{moduleName}}.{{classname}}{{#description}}
2+
3+
{{description}}{{/description}}
4+
5+
All URIs are relative to *{{basePath}}*
6+
7+
Method | HTTP request | Description
8+
------------- | ------------- | -------------
9+
{{#operations}}{{#operation}}[**{{operationId}}**]({{classname}}.md#{{operationId}}) | **{{httpMethod}}** {{path}} | {{#summary}}{{summary}}{{/summary}}
10+
{{/operation}}{{/operations}}
11+
12+
{{#operations}}
13+
{{#operation}}
14+
# **{{{operationId}}}**
15+
> {{#returnType}}{{{returnType}}} {{/returnType}}{{{operationId}}}({{#requiredParams}}{{^defaultValue}}{{paramName}}{{^-last}}, {{/-last}}{{/defaultValue}}{{/requiredParams}})
16+
17+
{{#notes}}
18+
{{{notes}}}
19+
{{/notes}}
20+
21+
### Example
22+
23+
24+
```typescript
25+
import { {{{moduleName}}} } from '{{{projectName}}}';
26+
import * as fs from 'fs';
27+
28+
const configuration = {{{moduleName}}}.createConfiguration();
29+
const apiInstance = new {{{moduleName}}}.{{classname}}(configuration);
30+
31+
{{#hasParams}}
32+
let body:{{{moduleName}}}.{{classname}}{{operationIdCamelCase}}Request = {
33+
{{#allParams}}
34+
// {{{dataType}}}{{#description}} | {{{description}}}{{/description}}{{^required}} (optional){{/required}}
35+
{{paramName}}: {{{example}}},
36+
{{/allParams}}
37+
};
38+
{{/hasParams}}
39+
{{^hasParams}}
40+
let body:any = {};
41+
{{/hasParams}}
42+
43+
apiInstance.{{{operationId}}}(body).then((data:any) => {
44+
console.log('API called successfully. Returned data: ' + data);
45+
}).catch((error:any) => console.error(error));
46+
```
47+
48+
49+
### Parameters
50+
{{^hasParams}}This endpoint does not need any parameter.{{/hasParams}}{{#allParams}}{{#-last}}
51+
Name | Type | Description | Notes
52+
------------- | ------------- | ------------- | -------------{{/-last}}{{/allParams}}
53+
{{#allParams}}{{^defaultValue}} **{{paramName}}** | {{^isPrimitiveType}}**{{{dataType}}}**{{/isPrimitiveType}}{{#isPrimitiveType}}**{{dataType}}**{{/isPrimitiveType}}| {{description}} |
54+
{{/defaultValue}}{{/allParams}}{{#allParams}}{{#defaultValue}} **{{paramName}}** | {{^isPrimitiveType}}{{^isEnum}}**{{dataType}}**{{/isEnum}}{{/isPrimitiveType}}{{#isPrimitiveType}}[**{{dataType}}**]{{/isPrimitiveType}}{{#isEnum}}{{#allowableValues}}{{#enumVars}}{{#-first}}**Array<{{/-first}}{{value}}{{^-last}} &#124; {{/-last}}{{#-last}}>**{{/-last}}{{/enumVars}}{{/allowableValues}}{{/isEnum}} | {{description}} |{{^required}} (optional){{/required}} defaults to {{{.}}}
55+
{{/defaultValue}}{{/allParams}}
56+
57+
### Return type
58+
59+
{{#returnType}}{{#returnTypeIsPrimitive}}**{{{returnType}}}**{{/returnTypeIsPrimitive}}{{^returnTypeIsPrimitive}}**{{{returnType}}}**{{/returnTypeIsPrimitive}}{{/returnType}}{{^returnType}}void (empty response body){{/returnType}}
60+
61+
### Authorization
62+
63+
{{^authMethods}}No authorization required{{/authMethods}}{{#authMethods}}[{{{name}}}](README.md#{{{name}}}){{^-last}}, {{/-last}}{{/authMethods}}
64+
65+
### HTTP request headers
66+
67+
- **Content-Type**: {{#consumes}}{{{mediaType}}}{{^-last}}, {{/-last}}{{/consumes}}{{^consumes}}Not defined{{/consumes}}
68+
- **Accept**: {{#produces}}{{{mediaType}}}{{^-last}}, {{/-last}}{{/produces}}{{^produces}}Not defined{{/produces}}
69+
70+
{{#responses.0}}
71+
72+
### HTTP response details
73+
| Status code | Description | Response headers |
74+
|-------------|-------------|------------------|
75+
{{#responses}}
76+
**{{code}}** | {{message}} | {{#headers}} * {{baseName}} - {{description}} <br> {{/headers}}{{^headers.0}} - {{/headers.0}} |
77+
{{/responses}}
78+
{{/responses.0}}
79+
80+
[[Back to top]](#) [[Back to API list]](README.md#documentation-for-api-endpoints) [[Back to Model list]](README.md#documentation-for-models) [[Back to README]](README.md)
81+
82+
{{/operation}}
83+
{{/operations}}
84+

samples/openapi3/client/petstore/typescript/builds/default/.openapi-generator/FILES

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
.gitignore
2+
PetApi.md
23
README.md
4+
StoreApi.md
5+
UserApi.md
36
apis/PetApi.ts
47
apis/StoreApi.ts
58
apis/UserApi.ts

0 commit comments

Comments
 (0)