Skip to content

Commit bf44354

Browse files
authored
Remove type annotation for union of required types (#616)
1 parent df89493 commit bf44354

File tree

3 files changed

+18
-48
lines changed

3 files changed

+18
-48
lines changed

.changeset/orange-walls-fold.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"aws-sdk-js-codemod": patch
3+
---
4+
5+
Remove type annotation for union of required types

src/transforms/v2-to-v3/ts-type/addTsTypeQueryToRefType.ts

Lines changed: 0 additions & 24 deletions
This file was deleted.
Lines changed: 13 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
import { ASTPath, Identifier, JSCodeshift, TSQualifiedName, TSTypeReference } from "jscodeshift";
2-
import { addTsTypeQueryToRefType } from "./addTsTypeQueryToRefType";
32
import { getV3ClientType } from "./getV3ClientType";
43

54
const nativeTsRefTypes = ["TSAnyKeyword", "TSStringKeyword", "TSNumberKeyword", "TSBooleanKeyword"];
6-
const nativeTsUnionTypes = ["Array", "Record"];
7-
const nativeTsIdentifierTypes = ["Date", "Uint8Array", ...nativeTsUnionTypes];
5+
const nativeTsIdentifierTypes = ["Date", "Uint8Array", "Array", "Record"];
86

97
interface UpdateV2ClientTypeOptions {
108
v2ClientName: string;
@@ -19,26 +17,17 @@ export const updateV2ClientType = (
1917
) => {
2018
const v3ClientType = getV3ClientType(j, options);
2119

22-
if (v2ClientType.parentPath?.value.type === "TSTypeQuery") {
23-
if (nativeTsRefTypes.includes(v3ClientType.type)) {
24-
v2ClientType.parentPath?.replace(v3ClientType);
25-
return;
26-
}
27-
28-
if (v3ClientType.type === "TSTypeReference") {
29-
const v3ClientTypeRef = v3ClientType as TSTypeReference;
30-
if (v3ClientTypeRef.typeName.type === "Identifier") {
31-
const v3ClientTypeRefIdentifier = v3ClientTypeRef.typeName as Identifier;
32-
if (nativeTsIdentifierTypes.includes(v3ClientTypeRefIdentifier.name)) {
33-
if (nativeTsUnionTypes.includes(v3ClientTypeRefIdentifier.name)) {
34-
addTsTypeQueryToRefType(j, v3ClientTypeRef);
35-
}
36-
v2ClientType.parentPath?.replace(v3ClientType);
37-
return;
38-
}
39-
}
40-
}
20+
if (
21+
(v2ClientType.parentPath?.value.type === "TSTypeQuery" &&
22+
nativeTsRefTypes.includes(v3ClientType.type)) ||
23+
(v3ClientType.type === "TSTypeReference" &&
24+
(v3ClientType as TSTypeReference).typeName.type === "Identifier" &&
25+
nativeTsIdentifierTypes.includes(
26+
((v3ClientType as TSTypeReference).typeName as Identifier).name
27+
))
28+
) {
29+
v2ClientType.parentPath?.replace(v3ClientType);
30+
} else {
31+
v2ClientType.replace(v3ClientType);
4132
}
42-
43-
v2ClientType.replace(v3ClientType);
4433
};

0 commit comments

Comments
 (0)