@teambit/typescript 0.0.1125 → 0.0.1126

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.typescript_typescript@0.0.1125/dist/typescript.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.typescript_typescript@0.0.1125/dist/typescript.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.typescript_typescript@0.0.1126/dist/typescript.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.typescript_typescript@0.0.1126/dist/typescript.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
@@ -23,14 +23,18 @@ function _replaceName() {
23
23
  const functionNamesTransformer = mapping => {
24
24
  return context => {
25
25
  const updateTypeReference = node => {
26
- if (_typescript().default.isTypeReferenceNode(node)) {
27
- const typeName = node.typeName.getText();
28
- const newTypeName = (0, _replaceName().replaceName)(typeName, mapping);
29
- if (newTypeName) {
30
- return _typescript().default.factory.updateTypeReferenceNode(node, _typescript().default.factory.createIdentifier(newTypeName), node.typeArguments);
26
+ try {
27
+ if (_typescript().default.isTypeReferenceNode(node) && node.typeName) {
28
+ const typeName = node.typeName.getText(node.getSourceFile());
29
+ const newTypeName = (0, _replaceName().replaceName)(typeName, mapping);
30
+ if (newTypeName) {
31
+ return _typescript().default.factory.updateTypeReferenceNode(node, _typescript().default.factory.createIdentifier(newTypeName), node.typeArguments);
32
+ }
31
33
  }
34
+ return _typescript().default.visitEachChild(node, updateTypeReference, context);
35
+ } catch (e) {
36
+ return node;
32
37
  }
33
- return _typescript().default.visitEachChild(node, updateTypeReference, context);
34
38
  };
35
39
  const visit = node => {
36
40
  if (_typescript().default.isFunctionDeclaration(node) || _typescript().default.isArrowFunction(node) || _typescript().default.isFunctionExpression(node)) {
@@ -1 +1 @@
1
- {"version":3,"names":["_typescript","data","_interopRequireDefault","require","_replaceName","functionNamesTransformer","mapping","context","updateTypeReference","node","ts","isTypeReferenceNode","typeName","getText","newTypeName","replaceName","factory","updateTypeReferenceNode","createIdentifier","typeArguments","visitEachChild","visit","isFunctionDeclaration","isArrowFunction","isFunctionExpression","_node$name$getText","_node$name","_Object$entries$find$","_Object$entries$find","functionName","name","newName","Object","entries","find","key","includes","parameters","map","param","newParamType","type","visitNode","isIdentifier","oldName","newParamName","keys","updateParameterDeclaration","decorators","modifiers","dotDotDotToken","questionToken","initializer","isObjectBindingPattern","elements","element","newElementName","updateBindingElement","propertyName","createObjectBindingPattern","updatedBody","body","isBlock","updateReturnStatement","updateFunctionDeclaration","asteriskToken","typeParameters","updateArrowFunction","equalsGreaterThanToken","updateFunctionExpression","updatedStatements","statement","statements","isReturnStatement","expression","isJsxElement","jsxElement","openingElement","tagName","newTagName","updatedTagName","updatedOpeningElement","updateJsxOpeningElement","attributes","updatedClosingElement","closingElement","updateJsxClosingElement","createJsxClosingElement","updatedJsxElement","createJsxElement","children","updatedStatement","createReturnStatement","push","updateBlock","isExpressionStatement","text","updatedExpression","updatedReturnStatement","createBlock","exports"],"sources":["function.ts"],"sourcesContent":["import ts from 'typescript';\nimport { SourceFileTransformer } from '.';\nimport { replaceName } from './replaceName';\n\nexport const functionNamesTransformer: SourceFileTransformer = (mapping: Record<string, string>) => {\n return (context) => {\n const updateTypeReference: ts.Visitor = (node) => {\n if (ts.isTypeReferenceNode(node)) {\n const typeName = node.typeName.getText();\n const newTypeName = replaceName(typeName, mapping);\n if (newTypeName) {\n return ts.factory.updateTypeReferenceNode(node, ts.factory.createIdentifier(newTypeName), node.typeArguments);\n }\n }\n return ts.visitEachChild(node, updateTypeReference, context);\n };\n\n const visit: ts.Visitor = (node) => {\n if (ts.isFunctionDeclaration(node) || ts.isArrowFunction(node) || ts.isFunctionExpression(node)) {\n const functionName = node.name?.getText() ?? '';\n const newName = Object.entries(mapping).find(([key]) => functionName.includes(key))?.[1] ?? functionName;\n const parameters = node.parameters.map((param) => {\n const newParamType = param.type ? ts.visitNode(param.type, updateTypeReference) : param.type;\n if (ts.isIdentifier(param.name)) {\n const oldName = param.name.getText();\n const newParamName = Object.keys(mapping).find((key) => oldName.includes(key));\n if (newParamName) {\n return ts.factory.updateParameterDeclaration(\n param,\n param.decorators,\n param.modifiers,\n param.dotDotDotToken,\n ts.factory.createIdentifier(newParamName),\n param.questionToken,\n newParamType,\n param.initializer\n );\n }\n } else if (ts.isObjectBindingPattern(param.name)) {\n const elements = param.name.elements.map((element) => {\n const newElementName = mapping[element.name.getText()];\n if (newElementName) {\n return ts.factory.updateBindingElement(\n element,\n element.dotDotDotToken,\n element.propertyName,\n ts.factory.createIdentifier(newElementName),\n element.initializer\n );\n }\n return element;\n });\n const newParamName = ts.factory.createObjectBindingPattern(elements);\n return ts.factory.updateParameterDeclaration(\n param,\n param.decorators,\n param.modifiers,\n param.dotDotDotToken,\n newParamName,\n param.questionToken,\n newParamType,\n param.initializer\n );\n }\n return param;\n });\n\n if (ts.isFunctionDeclaration(node)) {\n const updatedBody = node.body && ts.isBlock(node.body) ? updateReturnStatement(node.body) : node.body;\n return ts.factory.updateFunctionDeclaration(\n node,\n node.decorators,\n node.modifiers,\n node.asteriskToken,\n newName ? ts.factory.createIdentifier(newName) : node.name,\n node.typeParameters,\n parameters,\n node.type,\n updatedBody\n );\n }\n if (ts.isArrowFunction(node)) {\n const updatedBody = node.body && ts.isBlock(node.body) ? updateReturnStatement(node.body) : node.body;\n return ts.factory.updateArrowFunction(\n node,\n node.modifiers,\n node.typeParameters,\n parameters,\n node.type,\n node.equalsGreaterThanToken,\n updatedBody\n );\n }\n if (ts.isFunctionExpression(node)) {\n const updatedBody = node.body && ts.isBlock(node.body) ? updateReturnStatement(node.body) : node.body;\n return ts.factory.updateFunctionExpression(\n node,\n node.modifiers,\n node.asteriskToken,\n newName ? ts.factory.createIdentifier(newName) : node.name,\n node.typeParameters,\n parameters,\n node.type,\n updatedBody\n );\n }\n }\n return ts.visitEachChild(node, visit, context);\n };\n\n function updateReturnStatement(body: ts.ConciseBody): ts.Block {\n if (ts.isBlock(body)) {\n const updatedStatements: ts.Statement[] = [];\n for (const statement of body.statements) {\n if (ts.isReturnStatement(statement) && statement.expression && ts.isJsxElement(statement.expression)) {\n const jsxElement = statement.expression;\n const openingElement = jsxElement.openingElement;\n const tagName = openingElement.tagName.getText();\n const newTagName = mapping[tagName];\n if (newTagName) {\n const updatedTagName = ts.factory.createIdentifier(newTagName);\n const updatedOpeningElement = ts.factory.updateJsxOpeningElement(\n openingElement,\n updatedTagName,\n openingElement.typeArguments,\n openingElement.attributes\n );\n const updatedClosingElement = jsxElement.closingElement\n ? ts.factory.updateJsxClosingElement(jsxElement.closingElement, updatedTagName)\n : ts.factory.createJsxClosingElement(updatedTagName);\n const updatedJsxElement = ts.factory.createJsxElement(\n updatedOpeningElement,\n jsxElement.children,\n updatedClosingElement\n );\n const updatedStatement = ts.factory.createReturnStatement(updatedJsxElement);\n updatedStatements.push(updatedStatement);\n } else {\n updatedStatements.push(statement);\n }\n } else {\n updatedStatements.push(statement);\n }\n }\n return ts.factory.updateBlock(body, updatedStatements);\n }\n if (\n ts.isExpressionStatement(body) &&\n ts.isReturnStatement(body.expression) &&\n body.expression.expression &&\n ts.isIdentifier(body.expression.expression)\n ) {\n const oldName = body.expression.expression.text;\n const newName = mapping[oldName];\n if (newName) {\n const updatedExpression = ts.factory.createIdentifier(newName);\n const updatedReturnStatement = ts.factory.createReturnStatement(updatedExpression);\n return ts.factory.createBlock([updatedReturnStatement], true);\n }\n }\n return ts.factory.createBlock([], true);\n }\n return (node) => ts.visitNode(node, visit);\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_typescript","data","_interopRequireDefault","require","_replaceName","functionNamesTransformer","mapping","context","updateTypeReference","node","ts","isTypeReferenceNode","typeName","getText","getSourceFile","newTypeName","replaceName","factory","updateTypeReferenceNode","createIdentifier","typeArguments","visitEachChild","e","visit","isFunctionDeclaration","isArrowFunction","isFunctionExpression","_node$name$getText","_node$name","_Object$entries$find$","_Object$entries$find","functionName","name","newName","Object","entries","find","key","includes","parameters","map","param","newParamType","type","visitNode","isIdentifier","oldName","newParamName","keys","updateParameterDeclaration","decorators","modifiers","dotDotDotToken","questionToken","initializer","isObjectBindingPattern","elements","element","newElementName","updateBindingElement","propertyName","createObjectBindingPattern","updatedBody","body","isBlock","updateReturnStatement","updateFunctionDeclaration","asteriskToken","typeParameters","updateArrowFunction","equalsGreaterThanToken","updateFunctionExpression","updatedStatements","statement","statements","isReturnStatement","expression","isJsxElement","jsxElement","openingElement","tagName","newTagName","updatedTagName","updatedOpeningElement","updateJsxOpeningElement","attributes","updatedClosingElement","closingElement","updateJsxClosingElement","createJsxClosingElement","updatedJsxElement","createJsxElement","children","updatedStatement","createReturnStatement","push","updateBlock","isExpressionStatement","text","updatedExpression","updatedReturnStatement","createBlock","exports"],"sources":["function.ts"],"sourcesContent":["import ts from 'typescript';\nimport { SourceFileTransformer } from '.';\nimport { replaceName } from './replaceName';\n\nexport const functionNamesTransformer: SourceFileTransformer = (mapping: Record<string, string>) => {\n return (context) => {\n const updateTypeReference: ts.Visitor = (node) => {\n try {\n if (ts.isTypeReferenceNode(node) && node.typeName) {\n const typeName = node.typeName.getText(node.getSourceFile());\n const newTypeName = replaceName(typeName, mapping);\n if (newTypeName) {\n return ts.factory.updateTypeReferenceNode(\n node,\n ts.factory.createIdentifier(newTypeName),\n node.typeArguments\n );\n }\n }\n return ts.visitEachChild(node, updateTypeReference, context);\n } catch (e) {\n return node;\n }\n };\n\n const visit: ts.Visitor = (node) => {\n if (ts.isFunctionDeclaration(node) || ts.isArrowFunction(node) || ts.isFunctionExpression(node)) {\n const functionName = node.name?.getText() ?? '';\n const newName = Object.entries(mapping).find(([key]) => functionName.includes(key))?.[1] ?? functionName;\n const parameters = node.parameters.map((param) => {\n const newParamType = param.type ? ts.visitNode(param.type, updateTypeReference) : param.type;\n if (ts.isIdentifier(param.name)) {\n const oldName = param.name.getText();\n const newParamName = Object.keys(mapping).find((key) => oldName.includes(key));\n if (newParamName) {\n return ts.factory.updateParameterDeclaration(\n param,\n param.decorators,\n param.modifiers,\n param.dotDotDotToken,\n ts.factory.createIdentifier(newParamName),\n param.questionToken,\n newParamType,\n param.initializer\n );\n }\n } else if (ts.isObjectBindingPattern(param.name)) {\n const elements = param.name.elements.map((element) => {\n const newElementName = mapping[element.name.getText()];\n if (newElementName) {\n return ts.factory.updateBindingElement(\n element,\n element.dotDotDotToken,\n element.propertyName,\n ts.factory.createIdentifier(newElementName),\n element.initializer\n );\n }\n return element;\n });\n const newParamName = ts.factory.createObjectBindingPattern(elements);\n return ts.factory.updateParameterDeclaration(\n param,\n param.decorators,\n param.modifiers,\n param.dotDotDotToken,\n newParamName,\n param.questionToken,\n newParamType,\n param.initializer\n );\n }\n return param;\n });\n\n if (ts.isFunctionDeclaration(node)) {\n const updatedBody = node.body && ts.isBlock(node.body) ? updateReturnStatement(node.body) : node.body;\n return ts.factory.updateFunctionDeclaration(\n node,\n node.decorators,\n node.modifiers,\n node.asteriskToken,\n newName ? ts.factory.createIdentifier(newName) : node.name,\n node.typeParameters,\n parameters,\n node.type,\n updatedBody\n );\n }\n if (ts.isArrowFunction(node)) {\n const updatedBody = node.body && ts.isBlock(node.body) ? updateReturnStatement(node.body) : node.body;\n return ts.factory.updateArrowFunction(\n node,\n node.modifiers,\n node.typeParameters,\n parameters,\n node.type,\n node.equalsGreaterThanToken,\n updatedBody\n );\n }\n if (ts.isFunctionExpression(node)) {\n const updatedBody = node.body && ts.isBlock(node.body) ? updateReturnStatement(node.body) : node.body;\n return ts.factory.updateFunctionExpression(\n node,\n node.modifiers,\n node.asteriskToken,\n newName ? ts.factory.createIdentifier(newName) : node.name,\n node.typeParameters,\n parameters,\n node.type,\n updatedBody\n );\n }\n }\n return ts.visitEachChild(node, visit, context);\n };\n\n function updateReturnStatement(body: ts.ConciseBody): ts.Block {\n if (ts.isBlock(body)) {\n const updatedStatements: ts.Statement[] = [];\n for (const statement of body.statements) {\n if (ts.isReturnStatement(statement) && statement.expression && ts.isJsxElement(statement.expression)) {\n const jsxElement = statement.expression;\n const openingElement = jsxElement.openingElement;\n const tagName = openingElement.tagName.getText();\n const newTagName = mapping[tagName];\n if (newTagName) {\n const updatedTagName = ts.factory.createIdentifier(newTagName);\n const updatedOpeningElement = ts.factory.updateJsxOpeningElement(\n openingElement,\n updatedTagName,\n openingElement.typeArguments,\n openingElement.attributes\n );\n const updatedClosingElement = jsxElement.closingElement\n ? ts.factory.updateJsxClosingElement(jsxElement.closingElement, updatedTagName)\n : ts.factory.createJsxClosingElement(updatedTagName);\n const updatedJsxElement = ts.factory.createJsxElement(\n updatedOpeningElement,\n jsxElement.children,\n updatedClosingElement\n );\n const updatedStatement = ts.factory.createReturnStatement(updatedJsxElement);\n updatedStatements.push(updatedStatement);\n } else {\n updatedStatements.push(statement);\n }\n } else {\n updatedStatements.push(statement);\n }\n }\n return ts.factory.updateBlock(body, updatedStatements);\n }\n if (\n ts.isExpressionStatement(body) &&\n ts.isReturnStatement(body.expression) &&\n body.expression.expression &&\n ts.isIdentifier(body.expression.expression)\n ) {\n const oldName = body.expression.expression.text;\n const newName = mapping[oldName];\n if (newName) {\n const updatedExpression = ts.factory.createIdentifier(newName);\n const updatedReturnStatement = ts.factory.createReturnStatement(updatedExpression);\n return ts.factory.createBlock([updatedReturnStatement], true);\n }\n }\n return ts.factory.createBlock([], true);\n }\n return (node) => ts.visitNode(node, visit);\n };\n};\n"],"mappings":"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"}
@@ -28,13 +28,14 @@ const importTransformer = mapping => {
28
28
  }
29
29
  if ((_node$importClause = node.importClause) !== null && _node$importClause !== void 0 && _node$importClause.namedBindings && _typescript().default.isNamedImports(node.importClause.namedBindings)) {
30
30
  const transformedBindings = node.importClause.namedBindings.elements.map(element => {
31
- let newElementName = element.name.text;
31
+ let originalName = element.propertyName ? element.propertyName.text : element.name.text;
32
+ const aliasName = element.name.text;
32
33
  for (const [oldName, newName] of Object.entries(mapping)) {
33
- if (newElementName.startsWith(oldName) || newElementName.endsWith(oldName)) {
34
- newElementName = newElementName.replace(oldName, newName);
34
+ if (originalName.startsWith(oldName) || originalName.endsWith(oldName)) {
35
+ originalName = originalName.replace(oldName, newName);
35
36
  }
36
37
  }
37
- return _typescript().default.factory.updateImportSpecifier(element, false, element.propertyName ? _typescript().default.factory.createIdentifier(newElementName) : undefined, _typescript().default.factory.createIdentifier(newElementName));
38
+ return _typescript().default.factory.updateImportSpecifier(element, false, element.propertyName ? _typescript().default.factory.createIdentifier(originalName) : undefined, _typescript().default.factory.createIdentifier(aliasName));
38
39
  });
39
40
  const updatedImportClause = _typescript().default.factory.updateImportClause(node.importClause, node.importClause.isTypeOnly, node.importClause.name, _typescript().default.factory.createNamedImports(transformedBindings));
40
41
  return _typescript().default.factory.updateImportDeclaration(node, node.decorators, node.modifiers, updatedImportClause, _typescript().default.factory.createStringLiteral(moduleSpecifier), undefined);
@@ -1 +1 @@
1
- {"version":3,"names":["_typescript","data","_interopRequireDefault","require","importTransformer","mapping","context","visit","node","ts","isImportDeclaration","_node$importClause","moduleSpecifier","getText","slice","oldName","newName","Object","entries","includes","replace","importClause","namedBindings","isNamedImports","transformedBindings","elements","map","element","newElementName","name","text","startsWith","endsWith","factory","updateImportSpecifier","propertyName","createIdentifier","undefined","updatedImportClause","updateImportClause","isTypeOnly","createNamedImports","updateImportDeclaration","decorators","modifiers","createStringLiteral","isImportEqualsDeclaration","moduleReference","updatedImportEqualsDeclaration","updateImportEqualsDeclaration","createExternalModuleReference","isCallExpression","isIdentifier","expression","firstArg","arguments","isStringLiteral","updatedArg","updateCallExpression","typeArguments","visitEachChild","visitNode","exports"],"sources":["import.ts"],"sourcesContent":["import ts from 'typescript';\nimport { SourceFileTransformer } from '.';\n\nexport const importTransformer: SourceFileTransformer = (mapping: Record<string, string>) => {\n return (context) => {\n const visit: ts.Visitor = (node) => {\n if (ts.isImportDeclaration(node)) {\n let moduleSpecifier = node.moduleSpecifier.getText().slice(1, -1);\n for (const [oldName, newName] of Object.entries(mapping)) {\n if (moduleSpecifier.includes(oldName)) {\n moduleSpecifier = moduleSpecifier.replace(oldName, newName);\n }\n }\n\n if (node.importClause?.namedBindings && ts.isNamedImports(node.importClause.namedBindings)) {\n const transformedBindings = node.importClause.namedBindings.elements.map((element) => {\n let newElementName = element.name.text;\n\n for (const [oldName, newName] of Object.entries(mapping)) {\n if (newElementName.startsWith(oldName) || newElementName.endsWith(oldName)) {\n newElementName = newElementName.replace(oldName, newName);\n }\n }\n\n return ts.factory.updateImportSpecifier(\n element,\n false,\n element.propertyName ? ts.factory.createIdentifier(newElementName) : undefined,\n ts.factory.createIdentifier(newElementName)\n );\n });\n\n const updatedImportClause = ts.factory.updateImportClause(\n node.importClause,\n node.importClause.isTypeOnly,\n node.importClause.name,\n ts.factory.createNamedImports(transformedBindings)\n );\n\n return ts.factory.updateImportDeclaration(\n node,\n node.decorators,\n node.modifiers,\n updatedImportClause,\n ts.factory.createStringLiteral(moduleSpecifier),\n undefined\n );\n }\n\n return ts.factory.updateImportDeclaration(\n node,\n node.decorators,\n node.modifiers,\n node.importClause,\n ts.factory.createStringLiteral(moduleSpecifier),\n undefined\n );\n }\n if (ts.isImportEqualsDeclaration(node)) {\n let moduleSpecifier = node.moduleReference.getText().slice(1, -1);\n for (const [oldName, newName] of Object.entries(mapping)) {\n if (moduleSpecifier.includes(oldName)) {\n moduleSpecifier = moduleSpecifier.replace(oldName, newName);\n }\n }\n\n const updatedImportEqualsDeclaration = ts.factory.updateImportEqualsDeclaration(\n node,\n node.decorators,\n node.modifiers,\n node.isTypeOnly,\n node.name,\n ts.factory.createExternalModuleReference(ts.factory.createStringLiteral(moduleSpecifier))\n );\n\n return updatedImportEqualsDeclaration;\n }\n\n if (ts.isCallExpression(node) && ts.isIdentifier(node.expression) && node.expression.text === 'require') {\n const [firstArg] = node.arguments;\n\n if (ts.isStringLiteral(firstArg)) {\n let moduleSpecifier = firstArg.text;\n\n for (const [oldName, newName] of Object.entries(mapping)) {\n if (moduleSpecifier.includes(oldName)) {\n moduleSpecifier = moduleSpecifier.replace(oldName, newName);\n }\n }\n\n const updatedArg = ts.factory.createStringLiteral(moduleSpecifier);\n return ts.factory.updateCallExpression(node, node.expression, node.typeArguments, [\n updatedArg,\n ...node.arguments.slice(1),\n ]);\n }\n }\n\n return ts.visitEachChild(node, visit, context);\n };\n return (node) => ts.visitNode(node, visit);\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_typescript","data","_interopRequireDefault","require","importTransformer","mapping","context","visit","node","ts","isImportDeclaration","_node$importClause","moduleSpecifier","getText","slice","oldName","newName","Object","entries","includes","replace","importClause","namedBindings","isNamedImports","transformedBindings","elements","map","element","originalName","propertyName","text","name","aliasName","startsWith","endsWith","factory","updateImportSpecifier","createIdentifier","undefined","updatedImportClause","updateImportClause","isTypeOnly","createNamedImports","updateImportDeclaration","decorators","modifiers","createStringLiteral","isImportEqualsDeclaration","moduleReference","updatedImportEqualsDeclaration","updateImportEqualsDeclaration","createExternalModuleReference","isCallExpression","isIdentifier","expression","firstArg","arguments","isStringLiteral","updatedArg","updateCallExpression","typeArguments","visitEachChild","visitNode","exports"],"sources":["import.ts"],"sourcesContent":["import ts from 'typescript';\nimport { SourceFileTransformer } from '.';\n\nexport const importTransformer: SourceFileTransformer = (mapping: Record<string, string>) => {\n return (context) => {\n const visit: ts.Visitor = (node) => {\n if (ts.isImportDeclaration(node)) {\n let moduleSpecifier = node.moduleSpecifier.getText().slice(1, -1);\n for (const [oldName, newName] of Object.entries(mapping)) {\n if (moduleSpecifier.includes(oldName)) {\n moduleSpecifier = moduleSpecifier.replace(oldName, newName);\n }\n }\n\n if (node.importClause?.namedBindings && ts.isNamedImports(node.importClause.namedBindings)) {\n const transformedBindings = node.importClause.namedBindings.elements.map((element) => {\n let originalName = element.propertyName ? element.propertyName.text : element.name.text;\n const aliasName = element.name.text;\n\n for (const [oldName, newName] of Object.entries(mapping)) {\n if (originalName.startsWith(oldName) || originalName.endsWith(oldName)) {\n originalName = originalName.replace(oldName, newName);\n }\n }\n\n return ts.factory.updateImportSpecifier(\n element,\n false,\n element.propertyName ? ts.factory.createIdentifier(originalName) : undefined,\n ts.factory.createIdentifier(aliasName)\n );\n });\n\n const updatedImportClause = ts.factory.updateImportClause(\n node.importClause,\n node.importClause.isTypeOnly,\n node.importClause.name,\n ts.factory.createNamedImports(transformedBindings)\n );\n\n return ts.factory.updateImportDeclaration(\n node,\n node.decorators,\n node.modifiers,\n updatedImportClause,\n ts.factory.createStringLiteral(moduleSpecifier),\n undefined\n );\n }\n\n return ts.factory.updateImportDeclaration(\n node,\n node.decorators,\n node.modifiers,\n node.importClause,\n ts.factory.createStringLiteral(moduleSpecifier),\n undefined\n );\n }\n if (ts.isImportEqualsDeclaration(node)) {\n let moduleSpecifier = node.moduleReference.getText().slice(1, -1);\n for (const [oldName, newName] of Object.entries(mapping)) {\n if (moduleSpecifier.includes(oldName)) {\n moduleSpecifier = moduleSpecifier.replace(oldName, newName);\n }\n }\n\n const updatedImportEqualsDeclaration = ts.factory.updateImportEqualsDeclaration(\n node,\n node.decorators,\n node.modifiers,\n node.isTypeOnly,\n node.name,\n ts.factory.createExternalModuleReference(ts.factory.createStringLiteral(moduleSpecifier))\n );\n\n return updatedImportEqualsDeclaration;\n }\n\n if (ts.isCallExpression(node) && ts.isIdentifier(node.expression) && node.expression.text === 'require') {\n const [firstArg] = node.arguments;\n\n if (ts.isStringLiteral(firstArg)) {\n let moduleSpecifier = firstArg.text;\n\n for (const [oldName, newName] of Object.entries(mapping)) {\n if (moduleSpecifier.includes(oldName)) {\n moduleSpecifier = moduleSpecifier.replace(oldName, newName);\n }\n }\n\n const updatedArg = ts.factory.createStringLiteral(moduleSpecifier);\n return ts.factory.updateCallExpression(node, node.expression, node.typeArguments, [\n updatedArg,\n ...node.arguments.slice(1),\n ]);\n }\n }\n\n return ts.visitEachChild(node, visit, context);\n };\n return (node) => ts.visitNode(node, visit);\n };\n};\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/typescript",
3
- "version": "0.0.1125",
3
+ "version": "0.0.1126",
4
4
  "homepage": "https://bit.cloud/teambit/typescript/typescript",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.typescript",
8
8
  "name": "typescript",
9
- "version": "0.0.1125"
9
+ "version": "0.0.1126"
10
10
  },
11
11
  "dependencies": {
12
12
  "lodash": "4.17.21",
@@ -20,25 +20,25 @@
20
20
  "core-js": "^3.0.0",
21
21
  "@babel/runtime": "7.20.0",
22
22
  "@teambit/harmony": "0.4.6",
23
- "@teambit/compiler": "0.0.1125",
23
+ "@teambit/compiler": "0.0.1126",
24
24
  "@teambit/typescript.modules.ts-config-mutator": "0.0.76",
25
- "@teambit/builder": "0.0.1125",
26
- "@teambit/isolator": "0.0.1125",
27
- "@teambit/component": "0.0.1125",
28
- "@teambit/dependency-resolver": "0.0.1125",
29
- "@teambit/formatter": "0.0.676",
25
+ "@teambit/builder": "0.0.1126",
26
+ "@teambit/isolator": "0.0.1126",
27
+ "@teambit/component": "0.0.1126",
28
+ "@teambit/dependency-resolver": "0.0.1126",
29
+ "@teambit/formatter": "0.0.677",
30
30
  "@teambit/semantics.entities.semantic-schema": "0.0.53",
31
31
  "@teambit/ts-server": "0.0.48",
32
- "@teambit/aspect-loader": "0.0.1125",
33
- "@teambit/envs": "0.0.1125",
34
- "@teambit/logger": "0.0.845",
35
- "@teambit/workspace": "0.0.1125",
32
+ "@teambit/aspect-loader": "0.0.1126",
33
+ "@teambit/envs": "0.0.1126",
34
+ "@teambit/logger": "0.0.846",
35
+ "@teambit/workspace": "0.0.1126",
36
36
  "@teambit/bit-error": "0.0.402",
37
- "@teambit/schema": "0.0.1125",
38
- "@teambit/scope": "0.0.1125",
39
- "@teambit/cli": "0.0.752",
40
- "@teambit/pkg": "0.0.1125",
41
- "@teambit/watcher": "0.0.137"
37
+ "@teambit/schema": "0.0.1126",
38
+ "@teambit/scope": "0.0.1126",
39
+ "@teambit/cli": "0.0.753",
40
+ "@teambit/pkg": "0.0.1126",
41
+ "@teambit/watcher": "0.0.138"
42
42
  },
43
43
  "devDependencies": {
44
44
  "@types/lodash": "4.14.165",
@@ -54,7 +54,7 @@
54
54
  "@teambit/typescript.aspect-docs.typescript": "0.0.154"
55
55
  },
56
56
  "peerDependencies": {
57
- "@teambit/legacy": "1.0.532",
57
+ "@teambit/legacy": "1.0.535",
58
58
  "react": "^16.8.0 || ^17.0.0",
59
59
  "react-dom": "^16.8.0 || ^17.0.0"
60
60
  },
@@ -5,14 +5,22 @@ import { replaceName } from './replaceName';
5
5
  export const functionNamesTransformer: SourceFileTransformer = (mapping: Record<string, string>) => {
6
6
  return (context) => {
7
7
  const updateTypeReference: ts.Visitor = (node) => {
8
- if (ts.isTypeReferenceNode(node)) {
9
- const typeName = node.typeName.getText();
10
- const newTypeName = replaceName(typeName, mapping);
11
- if (newTypeName) {
12
- return ts.factory.updateTypeReferenceNode(node, ts.factory.createIdentifier(newTypeName), node.typeArguments);
8
+ try {
9
+ if (ts.isTypeReferenceNode(node) && node.typeName) {
10
+ const typeName = node.typeName.getText(node.getSourceFile());
11
+ const newTypeName = replaceName(typeName, mapping);
12
+ if (newTypeName) {
13
+ return ts.factory.updateTypeReferenceNode(
14
+ node,
15
+ ts.factory.createIdentifier(newTypeName),
16
+ node.typeArguments
17
+ );
18
+ }
13
19
  }
20
+ return ts.visitEachChild(node, updateTypeReference, context);
21
+ } catch (e) {
22
+ return node;
14
23
  }
15
- return ts.visitEachChild(node, updateTypeReference, context);
16
24
  };
17
25
 
18
26
  const visit: ts.Visitor = (node) => {
@@ -14,19 +14,20 @@ export const importTransformer: SourceFileTransformer = (mapping: Record<string,
14
14
 
15
15
  if (node.importClause?.namedBindings && ts.isNamedImports(node.importClause.namedBindings)) {
16
16
  const transformedBindings = node.importClause.namedBindings.elements.map((element) => {
17
- let newElementName = element.name.text;
17
+ let originalName = element.propertyName ? element.propertyName.text : element.name.text;
18
+ const aliasName = element.name.text;
18
19
 
19
20
  for (const [oldName, newName] of Object.entries(mapping)) {
20
- if (newElementName.startsWith(oldName) || newElementName.endsWith(oldName)) {
21
- newElementName = newElementName.replace(oldName, newName);
21
+ if (originalName.startsWith(oldName) || originalName.endsWith(oldName)) {
22
+ originalName = originalName.replace(oldName, newName);
22
23
  }
23
24
  }
24
25
 
25
26
  return ts.factory.updateImportSpecifier(
26
27
  element,
27
28
  false,
28
- element.propertyName ? ts.factory.createIdentifier(newElementName) : undefined,
29
- ts.factory.createIdentifier(newElementName)
29
+ element.propertyName ? ts.factory.createIdentifier(originalName) : undefined,
30
+ ts.factory.createIdentifier(aliasName)
30
31
  );
31
32
  });
32
33