Skip to content

Commit

Permalink
Remove client require if clients are not created (#302)
Browse files Browse the repository at this point in the history
  • Loading branch information
trivikr committed Jan 4, 2023
1 parent 0542a8c commit e64574d
Show file tree
Hide file tree
Showing 5 changed files with 18 additions and 14 deletions.
5 changes: 5 additions & 0 deletions .changeset/lazy-rabbits-tickle.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"aws-sdk-js-codemod": patch
---

Remove client require if clients are not created
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
const AWS_S3 = require("@aws-sdk/client-s3"),
{
S3
} = AWS_S3;
const AWS_S3 = require("@aws-sdk/client-s3");

const testTags: AWS_S3.Tag[] = [{ Key: "key", Value: "value" }];
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
const AWS_S3 = require("@aws-sdk/client-s3"),
{
S3
} = AWS_S3;
const AWS_S3 = require("@aws-sdk/client-s3");

const testTags: AWS_S3.Tag[] = [{ Key: "key", Value: "value" }];
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
const AWS_S3 = require("@aws-sdk/client-s3"),
{
S3
} = AWS_S3;
const AWS_S3 = require("@aws-sdk/client-s3");

const testTags: AWS_S3.Tag[] = [{ Key: "key", Value: "value" }];
12 changes: 10 additions & 2 deletions src/transforms/v2-to-v3/modules/addV3ClientRequires.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import { Collection, JSCodeshift } from "jscodeshift";

import { getV3ClientTypeNames } from "../ts-type";
import { getV2ClientNewExpression } from "../utils";
import { addV3ClientDefaultRequire } from "./addV3ClientDefaultRequire";
import { addV3ClientNamedRequire } from "./addV3ClientNamedRequire";
import { V3ClientModulesOptions } from "./types";
Expand All @@ -10,13 +11,20 @@ export const addV3ClientRequires = (
source: Collection<unknown>,
options: V3ClientModulesOptions
): void => {
const { v2ClientName, v2GlobalName } = options;
const { v2ClientName, v2ClientLocalName, v2GlobalName } = options;
const v3ClientTypeNames = getV3ClientTypeNames(j, source, { v2ClientName, v2GlobalName });

// Add default require for types, if needed.
if (v3ClientTypeNames.length > 0) {
addV3ClientDefaultRequire(j, source, options);
}

addV3ClientNamedRequire(j, source, options);
const newExpressions = source.find(
j.NewExpression,
getV2ClientNewExpression({ v2ClientName, v2ClientLocalName, v2GlobalName })
);

if (newExpressions.length) {
addV3ClientNamedRequire(j, source, options);
}
};

0 comments on commit e64574d

Please sign in to comment.