Skip to content

Commit d7573e5

Browse files
ferdikoomenmoretalk
authored andcommitted
Return undefined in most cases to support noImplicitReturns rule
Filter out wrong enum values (cherry picked from commit 05d5962)
1 parent dd6ffa6 commit d7573e5

File tree

5 files changed

+19
-18
lines changed

5 files changed

+19
-18
lines changed

src/openApi/v3/parser/getEnum.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
import type { Enum } from '../../../client/interfaces/Enum';
2-
import { isDefined } from '../../../utils/isDefined';
32

43
export function getEnum(values?: (string | number)[]): Enum[] {
54
if (Array.isArray(values)) {
65
return values
76
.filter((value, index, arr) => {
87
return arr.indexOf(value) === index;
98
})
10-
.filter(isDefined)
9+
.filter((value: any) => {
10+
return typeof value === 'number' || typeof value === 'string';
11+
})
1112
.map(value => {
1213
if (typeof value === 'number') {
1314
return {
@@ -23,7 +24,7 @@ export function getEnum(values?: (string | number)[]): Enum[] {
2324
.replace(/^(\d+)/g, '_$1')
2425
.replace(/([a-z])([A-Z]+)/g, '$1_$2')
2526
.toUpperCase(),
26-
value: `'${value}'`,
27+
value: `'${value.replace(/'/g, "\\'")}'`,
2728
type: 'string',
2829
description: null,
2930
};

src/openApi/v3/parser/getModelDefault.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import type { OpenApiSchema } from '../interfaces/OpenApiSchema';
33

44
export function getModelDefault(definition: OpenApiSchema, model?: Model): string | undefined {
55
if (definition.default === undefined) {
6-
return;
6+
return undefined;
77
}
88

99
if (definition.default === null) {
@@ -35,5 +35,5 @@ export function getModelDefault(definition: OpenApiSchema, model?: Model): strin
3535
}
3636
}
3737

38-
return;
38+
return undefined;
3939
}
Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
function getRequestBody(options: ApiRequestOptions): any {
2-
if (options.body) {
3-
return options.body;
4-
}
5-
return;
6-
}
1+
const getRequestBody = (options: ApiRequestOptions): any => {
2+
if (options.body) {
3+
return options.body;
4+
}
5+
return undefined;
6+
};
Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
function getResponseBody(response: AxiosResponse<any>): any {
2-
if (response.status !== 204) {
3-
return response.data;
4-
}
5-
return;
6-
}
1+
const getResponseBody = (response: AxiosResponse<any>): any => {
2+
if (response.status !== 204) {
3+
return response.data;
4+
}
5+
return undefined;
6+
};

src/utils/discriminator.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export function findOneOfParentDiscriminator(openApi: OpenApi, parent?: Model):
2727
}
2828
}
2929
}
30-
return;
30+
return undefined;
3131
}
3232

3333
export function mapPropertyValue(discriminator: OpenApiDiscriminator, parent: Model): string {

0 commit comments

Comments
 (0)