Skip to content

Commit ed78aae

Browse files
authored
Remove .promise() from API calls which use await (#41)
1 parent 124c319 commit ed78aae

File tree

4 files changed

+39
-3
lines changed

4 files changed

+39
-3
lines changed

.changeset/blue-experts-decide.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 .promise() from API calls which use await
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import AWS from "aws-sdk";
2+
3+
const client = new AWS.DynamoDB();
4+
try {
5+
const data = await client.listTables().promise();
6+
console.log(data);
7+
} catch (err) {
8+
console.log(err, err.stack);
9+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import { DynamoDB } from "@aws-sdk/client-dynamodb";
2+
3+
const client = new DynamoDB();
4+
try {
5+
const data = await client.listTables();
6+
console.log(data);
7+
} catch (err) {
8+
console.log(err, err.stack);
9+
}

src/transforms/v2-to-v3/utils/removePromiseCalls.ts

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,22 @@ export const removePromiseCalls = (
4242
},
4343
})
4444
.forEach((callExpressionPath) => {
45-
callExpressionPath.parentPath.value.object = (
46-
callExpressionPath.value.callee as MemberExpression
47-
).object;
45+
switch (callExpressionPath.parentPath.value.type) {
46+
case "MemberExpression":
47+
callExpressionPath.parentPath.value.object = (
48+
callExpressionPath.value.callee as MemberExpression
49+
).object;
50+
break;
51+
case "AwaitExpression":
52+
callExpressionPath.parentPath.value.argument = (
53+
callExpressionPath.value.callee as MemberExpression
54+
).object;
55+
break;
56+
default:
57+
throw new Error(
58+
`Removal of .promise() not implemented for ${callExpressionPath.parentPath.value.type}`
59+
);
60+
}
4861
});
4962
});
5063
};

0 commit comments

Comments
 (0)