UNPKG

aws-sdk-js-codemod

Version:

Collection of codemod scripts that help update AWS SDK for JavaScript APIs

36 lines (35 loc) 1.3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getClientIdThisExpressions = void 0; const thisMemberExpression = { type: "MemberExpression", object: { type: "ThisExpression" } }; const getClientIdThisExpressions = (j, source, clientIdentifiers) => clientIdentifiers.flatMap((clientIdentifier) => { const clientIdsFromThisExpressionAssignment = source .find(j.AssignmentExpression, { left: thisMemberExpression, right: clientIdentifier, }) .nodes() .map((assignmentExpression) => ({ ...thisMemberExpression, property: { type: "Identifier", name: assignmentExpression.left.property.name, }, })); const clientIdsFromThisExpression = source .find(j.MemberExpression, { type: "MemberExpression", object: { type: "ThisExpression" }, property: clientIdentifier, }) .nodes() .map((memberExpression) => ({ ...thisMemberExpression, property: { type: "Identifier", name: memberExpression.property.name, }, }))[0]; return [...clientIdsFromThisExpressionAssignment, clientIdsFromThisExpression]; }); exports.getClientIdThisExpressions = getClientIdThisExpressions;