Skip to content

Commit 06d518f

Browse files
committed
skeleton for docstrings generation
1 parent 6fbad05 commit 06d518f

File tree

3 files changed

+21
-2
lines changed

3 files changed

+21
-2
lines changed

generate-docstrings.ts

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
2+
import { pascalCase } from "change-case";
3+
import type { Endpoint } from "generate-routes.js"
4+
5+
const generateDocstringForEndpoint = (endpoint: Endpoint): string => {
6+
const responseType = `${pascalCase(endpoint.namespace)}${pascalCase(endpoint.name)}Response`;
7+
const paramType = endpoint.requestFormat === 'params' ? 'ParamsType' : 'BodyType';
8+
9+
10+
return `
11+
/**
12+
* Handles ${endpoint.method} requests to ${endpoint.path}.
13+
*
14+
* @param {${paramType}} request - The request ${endpoint.requestFormat}.
15+
* @returns {Promise<${responseType}>}
16+
*/
17+
`;
18+
};

generate-routes.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ interface Route {
9494
subresources: string[]
9595
}
9696

97-
interface Endpoint {
97+
export interface Endpoint {
9898
name: string
9999
path: string
100100
namespace: string

tsconfig.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
"examples/**/*",
3838
"tsup.config.ts",
3939
"prepack.ts",
40-
"generate-routes.ts"
40+
"generate-routes.ts",
41+
"generate-docstrings.ts"
4142
]
4243
}

0 commit comments

Comments
 (0)